@import url(https://fonts.googleapis.com/css?family=Nunito);@import url(https://use.typekit.net/qgt6aal.css);@import url(https://fonts.googleapis.com/css2?family=Montserrat:wght@400;

600&display=swap);@import url(https://fonts.googleapis.com/css2?family=Noto+Sans+SC:wght@400;700&display=swap);@import url(https://fonts.googleapis.com/css2?family=Noto+Sans+KR:wght@400;700&display=swap);/*! lightgallery - v1.6.12 - 2019-02-19
* http://sachinchoolur.github.io/lightGallery/
* Copyright (c) 2019 Sachin N; Licensed GPLv3 */
@font-face {
  font-family: 'lg';
  src: url(/fonts/vendor/lightgallery/dist/lg.eot?ecff11700aad0000cf3503f537d1df17);
  src: url(/fonts/vendor/lightgallery/dist/lg.eot?ecff11700aad0000cf3503f537d1df17?#iefixn1z373) format("embedded-opentype"), url(/fonts/vendor/lightgallery/dist/lg.woff?5fd4c338c1a1b1eeeb2c7b0a0967773d) format("woff"), url(/fonts/vendor/lightgallery/dist/lg.ttf?4fe6f9caff8b287170d51d3d71d5e5c6) format("truetype"), url(/fonts/vendor/lightgallery/dist/lg.svg?98d62b1e5f5b556facf319b19c6c7cba#lg) format("svg");
  font-weight: normal;
  font-style: normal;
}
.lg-icon {
  font-family: 'lg';
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  /* Better Font Rendering =========== */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.lg-actions .lg-next, .lg-actions .lg-prev {
  background-color: rgba(0, 0, 0, 0.45);
  border-radius: 2px;
  color: #999;
  cursor: pointer;
  display: block;
  font-size: 22px;
  margin-top: -10px;
  padding: 8px 10px 9px;
  position: absolute;
  top: 50%;
  z-index: 1080;
  border: none;
  outline: none;
}
.lg-actions .lg-next.disabled, .lg-actions .lg-prev.disabled {
  pointer-events: none;
  opacity: 0.5;
}
.lg-actions .lg-next:hover, .lg-actions .lg-prev:hover {
  color: #FFF;
}
.lg-actions .lg-next {
  right: 20px;
}
.lg-actions .lg-next:before {
  content: "\E095";
}
.lg-actions .lg-prev {
  left: 20px;
}
.lg-actions .lg-prev:after {
  content: "\E094";
}

@-webkit-keyframes lg-right-end {
  0% {
    left: 0;
  }
  50% {
    left: -30px;
  }
  100% {
    left: 0;
  }
}
@keyframes lg-right-end {
  0% {
    left: 0;
  }
  50% {
    left: -30px;
  }
  100% {
    left: 0;
  }
}
@-webkit-keyframes lg-left-end {
  0% {
    left: 0;
  }
  50% {
    left: 30px;
  }
  100% {
    left: 0;
  }
}
@keyframes lg-left-end {
  0% {
    left: 0;
  }
  50% {
    left: 30px;
  }
  100% {
    left: 0;
  }
}
.lg-outer.lg-right-end .lg-object {
  -webkit-animation: lg-right-end 0.3s;
  animation: lg-right-end 0.3s;
  position: relative;
}
.lg-outer.lg-left-end .lg-object {
  -webkit-animation: lg-left-end 0.3s;
  animation: lg-left-end 0.3s;
  position: relative;
}

.lg-toolbar {
  z-index: 1082;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
  background-color: rgba(0, 0, 0, 0.45);
}
.lg-toolbar .lg-icon {
  color: #999;
  cursor: pointer;
  float: right;
  font-size: 24px;
  height: 47px;
  line-height: 27px;
  padding: 10px 0;
  text-align: center;
  width: 50px;
  text-decoration: none !important;
  outline: medium none;
  transition: color 0.2s linear;
}
.lg-toolbar .lg-icon:hover {
  color: #FFF;
}
.lg-toolbar .lg-close:after {
  content: "\E070";
}
.lg-toolbar .lg-download:after {
  content: "\E0F2";
}

.lg-sub-html {
  background-color: rgba(0, 0, 0, 0.45);
  bottom: 0;
  color: #EEE;
  font-size: 16px;
  left: 0;
  padding: 10px 40px;
  position: fixed;
  right: 0;
  text-align: center;
  z-index: 1080;
}
.lg-sub-html h4 {
  margin: 0;
  font-size: 13px;
  font-weight: bold;
}
.lg-sub-html p {
  font-size: 12px;
  margin: 5px 0 0;
}

#lg-counter {
  color: #999;
  display: inline-block;
  font-size: 16px;
  padding-left: 20px;
  padding-top: 12px;
  vertical-align: middle;
}

.lg-toolbar, .lg-prev, .lg-next {
  opacity: 1;
  transition: transform 0.35s cubic-bezier(0, 0, 0.25, 1) 0s, opacity 0.35s cubic-bezier(0, 0, 0.25, 1) 0s, color 0.2s linear;
}

.lg-hide-items .lg-prev {
  opacity: 0;
  transform: translate3d(-10px, 0, 0);
}
.lg-hide-items .lg-next {
  opacity: 0;
  transform: translate3d(10px, 0, 0);
}
.lg-hide-items .lg-toolbar {
  opacity: 0;
  transform: translate3d(0, -10px, 0);
}

body:not(.lg-from-hash) .lg-outer.lg-start-zoom .lg-object {
  transform: scale3d(0.5, 0.5, 0.5);
  opacity: 0;
  transition: transform 250ms cubic-bezier(0, 0, 0.25, 1) 0s, opacity 250ms cubic-bezier(0, 0, 0.25, 1) !important;
  transform-origin: 50% 50%;
}
body:not(.lg-from-hash) .lg-outer.lg-start-zoom .lg-item.lg-complete .lg-object {
  transform: scale3d(1, 1, 1);
  opacity: 1;
}

.lg-outer .lg-thumb-outer {
  background-color: #0D0A0A;
  bottom: 0;
  position: absolute;
  width: 100%;
  z-index: 1080;
  max-height: 350px;
  transform: translate3d(0, 100%, 0);
  transition: transform 0.25s cubic-bezier(0, 0, 0.25, 1) 0s;
}
.lg-outer .lg-thumb-outer.lg-grab .lg-thumb-item {
  cursor: -webkit-grab;
  cursor: -o-grab;
  cursor: -ms-grab;
  cursor: grab;
}
.lg-outer .lg-thumb-outer.lg-grabbing .lg-thumb-item {
  cursor: move;
  cursor: -webkit-grabbing;
  cursor: -o-grabbing;
  cursor: -ms-grabbing;
  cursor: grabbing;
}
.lg-outer .lg-thumb-outer.lg-dragging .lg-thumb {
  transition-duration: 0s !important;
}
.lg-outer.lg-thumb-open .lg-thumb-outer {
  transform: translate3d(0, 0%, 0);
}
.lg-outer .lg-thumb {
  padding: 10px 0;
  height: 100%;
  margin-bottom: -5px;
}
.lg-outer .lg-thumb-item {
  border-radius: 5px;
  cursor: pointer;
  float: left;
  overflow: hidden;
  height: 100%;
  border: 2px solid #FFF;
  border-radius: 4px;
  margin-bottom: 5px;
}
@media (min-width: 1025px) {
  .lg-outer .lg-thumb-item {
    transition: border-color 0.25s ease;
  }
}
.lg-outer .lg-thumb-item.active, .lg-outer .lg-thumb-item:hover {
  border-color: #a90707;
}
.lg-outer .lg-thumb-item img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.lg-outer.lg-has-thumb .lg-item {
  padding-bottom: 120px;
}
.lg-outer.lg-can-toggle .lg-item {
  padding-bottom: 0;
}
.lg-outer.lg-pull-caption-up .lg-sub-html {
  transition: bottom 0.25s ease;
}
.lg-outer.lg-pull-caption-up.lg-thumb-open .lg-sub-html {
  bottom: 100px;
}
.lg-outer .lg-toogle-thumb {
  background-color: #0D0A0A;
  border-radius: 2px 2px 0 0;
  color: #999;
  cursor: pointer;
  font-size: 24px;
  height: 39px;
  line-height: 27px;
  padding: 5px 0;
  position: absolute;
  right: 20px;
  text-align: center;
  top: -39px;
  width: 50px;
}
.lg-outer .lg-toogle-thumb:after {
  content: "\E1FF";
}
.lg-outer .lg-toogle-thumb:hover {
  color: #FFF;
}

.lg-outer .lg-video-cont {
  display: inline-block;
  vertical-align: middle;
  max-width: 1140px;
  max-height: 100%;
  width: 100%;
  padding: 0 5px;
}
.lg-outer .lg-video {
  width: 100%;
  height: 0;
  padding-bottom: 56.25%;
  overflow: hidden;
  position: relative;
}
.lg-outer .lg-video .lg-object {
  display: inline-block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100% !important;
  height: 100% !important;
}
.lg-outer .lg-video .lg-video-play {
  width: 84px;
  height: 59px;
  position: absolute;
  left: 50%;
  top: 50%;
  margin-left: -42px;
  margin-top: -30px;
  z-index: 1080;
  cursor: pointer;
}
.lg-outer .lg-has-iframe .lg-video {
  -webkit-overflow-scrolling: touch;
  overflow: auto;
}
.lg-outer .lg-has-vimeo .lg-video-play {
  background: url(/images/vendor/lightgallery/dist/vimeo-play.png?dfe7764b4fe444c3880736ac6131f5b4) no-repeat scroll 0 0 transparent;
}
.lg-outer .lg-has-vimeo:hover .lg-video-play {
  background: url(/images/vendor/lightgallery/dist/vimeo-play.png?dfe7764b4fe444c3880736ac6131f5b4) no-repeat scroll 0 -58px transparent;
}
.lg-outer .lg-has-html5 .lg-video-play {
  background: transparent url(/images/vendor/lightgallery/dist/video-play.png?dc34cc9c99e935cd9c88c036e34103f5) no-repeat scroll 0 0;
  height: 64px;
  margin-left: -32px;
  margin-top: -32px;
  width: 64px;
  opacity: 0.8;
}
.lg-outer .lg-has-html5:hover .lg-video-play {
  opacity: 1;
}
.lg-outer .lg-has-youtube .lg-video-play {
  background: url(/images/vendor/lightgallery/dist/youtube-play.png?e6f0c233c87ddefab049c991c61e2d69) no-repeat scroll 0 0 transparent;
}
.lg-outer .lg-has-youtube:hover .lg-video-play {
  background: url(/images/vendor/lightgallery/dist/youtube-play.png?e6f0c233c87ddefab049c991c61e2d69) no-repeat scroll 0 -60px transparent;
}
.lg-outer .lg-video-object {
  width: 100% !important;
  height: 100% !important;
  position: absolute;
  top: 0;
  left: 0;
}
.lg-outer .lg-has-video .lg-video-object {
  visibility: hidden;
}
.lg-outer .lg-has-video.lg-video-playing .lg-object, .lg-outer .lg-has-video.lg-video-playing .lg-video-play {
  display: none;
}
.lg-outer .lg-has-video.lg-video-playing .lg-video-object {
  visibility: visible;
}

.lg-progress-bar {
  background-color: #333;
  height: 5px;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
  z-index: 1083;
  opacity: 0;
  transition: opacity 0.08s ease 0s;
}
.lg-progress-bar .lg-progress {
  background-color: #a90707;
  height: 5px;
  width: 0;
}
.lg-progress-bar.lg-start .lg-progress {
  width: 100%;
}
.lg-show-autoplay .lg-progress-bar {
  opacity: 1;
}

.lg-autoplay-button:after {
  content: "\E01D";
}
.lg-show-autoplay .lg-autoplay-button:after {
  content: "\E01A";
}

.lg-outer.lg-css3.lg-zoom-dragging .lg-item.lg-complete.lg-zoomable .lg-img-wrap, .lg-outer.lg-css3.lg-zoom-dragging .lg-item.lg-complete.lg-zoomable .lg-image {
  transition-duration: 0s;
}
.lg-outer.lg-use-transition-for-zoom .lg-item.lg-complete.lg-zoomable .lg-img-wrap {
  transition: transform 0.3s cubic-bezier(0, 0, 0.25, 1) 0s;
}
.lg-outer.lg-use-left-for-zoom .lg-item.lg-complete.lg-zoomable .lg-img-wrap {
  transition: left 0.3s cubic-bezier(0, 0, 0.25, 1) 0s, top 0.3s cubic-bezier(0, 0, 0.25, 1) 0s;
}
.lg-outer .lg-item.lg-complete.lg-zoomable .lg-img-wrap {
  transform: translate3d(0, 0, 0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}
.lg-outer .lg-item.lg-complete.lg-zoomable .lg-image {
  transform: scale3d(1, 1, 1);
  transition: transform 0.3s cubic-bezier(0, 0, 0.25, 1) 0s, opacity 0.15s !important;
  transform-origin: 0 0;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}

#lg-zoom-in:after {
  content: "\E311";
}

#lg-actual-size {
  font-size: 20px;
}
#lg-actual-size:after {
  content: "\E033";
}

#lg-zoom-out {
  opacity: 0.5;
  pointer-events: none;
}
#lg-zoom-out:after {
  content: "\E312";
}
.lg-zoomed #lg-zoom-out {
  opacity: 1;
  pointer-events: auto;
}

.lg-outer .lg-pager-outer {
  bottom: 60px;
  left: 0;
  position: absolute;
  right: 0;
  text-align: center;
  z-index: 1080;
  height: 10px;
}
.lg-outer .lg-pager-outer.lg-pager-hover .lg-pager-cont {
  overflow: visible;
}
.lg-outer .lg-pager-cont {
  cursor: pointer;
  display: inline-block;
  overflow: hidden;
  position: relative;
  vertical-align: top;
  margin: 0 5px;
}
.lg-outer .lg-pager-cont:hover .lg-pager-thumb-cont {
  opacity: 1;
  transform: translate3d(0, 0, 0);
}
.lg-outer .lg-pager-cont.lg-pager-active .lg-pager {
  box-shadow: 0 0 0 2px white inset;
}
.lg-outer .lg-pager-thumb-cont {
  background-color: #fff;
  color: #FFF;
  bottom: 100%;
  height: 83px;
  left: 0;
  margin-bottom: 20px;
  margin-left: -60px;
  opacity: 0;
  padding: 5px;
  position: absolute;
  width: 120px;
  border-radius: 3px;
  transition: opacity 0.15s ease 0s, transform 0.15s ease 0s;
  transform: translate3d(0, 5px, 0);
}
.lg-outer .lg-pager-thumb-cont img {
  width: 100%;
  height: 100%;
}
.lg-outer .lg-pager {
  background-color: rgba(255, 255, 255, 0.5);
  border-radius: 50%;
  box-shadow: 0 0 0 8px rgba(255, 255, 255, 0.7) inset;
  display: block;
  height: 12px;
  transition: box-shadow 0.3s ease 0s;
  width: 12px;
}
.lg-outer .lg-pager:hover, .lg-outer .lg-pager:focus {
  box-shadow: 0 0 0 8px white inset;
}
.lg-outer .lg-caret {
  border-left: 10px solid transparent;
  border-right: 10px solid transparent;
  border-top: 10px dashed;
  bottom: -10px;
  display: inline-block;
  height: 0;
  left: 50%;
  margin-left: -5px;
  position: absolute;
  vertical-align: middle;
  width: 0;
}

.lg-fullscreen:after {
  content: "\E20C";
}
.lg-fullscreen-on .lg-fullscreen:after {
  content: "\E20D";
}

.lg-outer #lg-dropdown-overlay {
  background-color: rgba(0, 0, 0, 0.25);
  bottom: 0;
  cursor: default;
  left: 0;
  position: fixed;
  right: 0;
  top: 0;
  z-index: 1081;
  opacity: 0;
  visibility: hidden;
  transition: visibility 0s linear 0.18s, opacity 0.18s linear 0s;
}
.lg-outer.lg-dropdown-active .lg-dropdown, .lg-outer.lg-dropdown-active #lg-dropdown-overlay {
  transition-delay: 0s;
  transform: translate3d(0, 0px, 0);
  opacity: 1;
  visibility: visible;
}
.lg-outer.lg-dropdown-active #lg-share {
  color: #FFF;
}
.lg-outer .lg-dropdown {
  background-color: #fff;
  border-radius: 2px;
  font-size: 14px;
  list-style-type: none;
  margin: 0;
  padding: 10px 0;
  position: absolute;
  right: 0;
  text-align: left;
  top: 50px;
  opacity: 0;
  visibility: hidden;
  transform: translate3d(0, 5px, 0);
  transition: transform 0.18s linear 0s, visibility 0s linear 0.5s, opacity 0.18s linear 0s;
}
.lg-outer .lg-dropdown:after {
  content: "";
  display: block;
  height: 0;
  width: 0;
  position: absolute;
  border: 8px solid transparent;
  border-bottom-color: #FFF;
  right: 16px;
  top: -16px;
}
.lg-outer .lg-dropdown > li:last-child {
  margin-bottom: 0px;
}
.lg-outer .lg-dropdown > li:hover a, .lg-outer .lg-dropdown > li:hover .lg-icon {
  color: #333;
}
.lg-outer .lg-dropdown a {
  color: #333;
  display: block;
  white-space: pre;
  padding: 4px 12px;
  font-family: "Open Sans","Helvetica Neue",Helvetica,Arial,sans-serif;
  font-size: 12px;
}
.lg-outer .lg-dropdown a:hover {
  background-color: rgba(0, 0, 0, 0.07);
}
.lg-outer .lg-dropdown .lg-dropdown-text {
  display: inline-block;
  line-height: 1;
  margin-top: -3px;
  vertical-align: middle;
}
.lg-outer .lg-dropdown .lg-icon {
  color: #333;
  display: inline-block;
  float: none;
  font-size: 20px;
  height: auto;
  line-height: 1;
  margin-right: 8px;
  padding: 0;
  vertical-align: middle;
  width: auto;
}
.lg-outer #lg-share {
  position: relative;
}
.lg-outer #lg-share:after {
  content: "\E80D";
}
.lg-outer #lg-share-facebook .lg-icon {
  color: #3b5998;
}
.lg-outer #lg-share-facebook .lg-icon:after {
  content: "\E901";
}
.lg-outer #lg-share-twitter .lg-icon {
  color: #00aced;
}
.lg-outer #lg-share-twitter .lg-icon:after {
  content: "\E904";
}
.lg-outer #lg-share-googleplus .lg-icon {
  color: #dd4b39;
}
.lg-outer #lg-share-googleplus .lg-icon:after {
  content: "\E902";
}
.lg-outer #lg-share-pinterest .lg-icon {
  color: #cb2027;
}
.lg-outer #lg-share-pinterest .lg-icon:after {
  content: "\E903";
}

.lg-group:after {
  content: "";
  display: table;
  clear: both;
}

.lg-outer {
  width: 100%;
  height: 100%;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 1050;
  text-align: left;
  opacity: 0;
  transition: opacity 0.15s ease 0s;
}
.lg-outer * {
  box-sizing: border-box;
}
.lg-outer.lg-visible {
  opacity: 1;
}
.lg-outer.lg-css3 .lg-item.lg-prev-slide, .lg-outer.lg-css3 .lg-item.lg-next-slide, .lg-outer.lg-css3 .lg-item.lg-current {
  transition-duration: inherit !important;
  transition-timing-function: inherit !important;
}
.lg-outer.lg-css3.lg-dragging .lg-item.lg-prev-slide, .lg-outer.lg-css3.lg-dragging .lg-item.lg-next-slide, .lg-outer.lg-css3.lg-dragging .lg-item.lg-current {
  transition-duration: 0s !important;
  opacity: 1;
}
.lg-outer.lg-grab img.lg-object {
  cursor: -webkit-grab;
  cursor: -o-grab;
  cursor: -ms-grab;
  cursor: grab;
}
.lg-outer.lg-grabbing img.lg-object {
  cursor: move;
  cursor: -webkit-grabbing;
  cursor: -o-grabbing;
  cursor: -ms-grabbing;
  cursor: grabbing;
}
.lg-outer .lg {
  height: 100%;
  width: 100%;
  position: relative;
  overflow: hidden;
  margin-left: auto;
  margin-right: auto;
  max-width: 100%;
  max-height: 100%;
}
.lg-outer .lg-inner {
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
  white-space: nowrap;
}
.lg-outer .lg-item {
  background: url(/images/vendor/lightgallery/dist/loading.gif?bbdac9cda255c54bfd809110aff87898) no-repeat scroll center center transparent;
  display: none !important;
}
.lg-outer.lg-css3 .lg-prev-slide, .lg-outer.lg-css3 .lg-current, .lg-outer.lg-css3 .lg-next-slide {
  display: inline-block !important;
}
.lg-outer.lg-css .lg-current {
  display: inline-block !important;
}
.lg-outer .lg-item, .lg-outer .lg-img-wrap {
  display: inline-block;
  text-align: center;
  position: absolute;
  width: 100%;
  height: 100%;
}
.lg-outer .lg-item:before, .lg-outer .lg-img-wrap:before {
  content: "";
  display: inline-block;
  height: 50%;
  width: 1px;
  margin-right: -1px;
}
.lg-outer .lg-img-wrap {
  position: absolute;
  padding: 0 5px;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
}
.lg-outer .lg-item.lg-complete {
  background-image: none;
}
.lg-outer .lg-item.lg-current {
  z-index: 1060;
}
.lg-outer .lg-image {
  display: inline-block;
  vertical-align: middle;
  max-width: 100%;
  max-height: 100%;
  width: auto !important;
  height: auto !important;
}
.lg-outer.lg-show-after-load .lg-item .lg-object, .lg-outer.lg-show-after-load .lg-item .lg-video-play {
  opacity: 0;
  transition: opacity 0.15s ease 0s;
}
.lg-outer.lg-show-after-load .lg-item.lg-complete .lg-object, .lg-outer.lg-show-after-load .lg-item.lg-complete .lg-video-play {
  opacity: 1;
}
.lg-outer .lg-empty-html {
  display: none;
}
.lg-outer.lg-hide-download #lg-download {
  display: none;
}

.lg-backdrop {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 1040;
  background-color: #000;
  opacity: 0;
  transition: opacity 0.15s ease 0s;
}
.lg-backdrop.in {
  opacity: 1;
}

.lg-css3.lg-no-trans .lg-prev-slide, .lg-css3.lg-no-trans .lg-next-slide, .lg-css3.lg-no-trans .lg-current {
  transition: none 0s ease 0s !important;
}
.lg-css3.lg-use-css3 .lg-item {
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}
.lg-css3.lg-use-left .lg-item {
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}
.lg-css3.lg-fade .lg-item {
  opacity: 0;
}
.lg-css3.lg-fade .lg-item.lg-current {
  opacity: 1;
}
.lg-css3.lg-fade .lg-item.lg-prev-slide, .lg-css3.lg-fade .lg-item.lg-next-slide, .lg-css3.lg-fade .lg-item.lg-current {
  transition: opacity 0.1s ease 0s;
}
.lg-css3.lg-slide.lg-use-css3 .lg-item {
  opacity: 0;
}
.lg-css3.lg-slide.lg-use-css3 .lg-item.lg-prev-slide {
  transform: translate3d(-100%, 0, 0);
}
.lg-css3.lg-slide.lg-use-css3 .lg-item.lg-next-slide {
  transform: translate3d(100%, 0, 0);
}
.lg-css3.lg-slide.lg-use-css3 .lg-item.lg-current {
  transform: translate3d(0, 0, 0);
  opacity: 1;
}
.lg-css3.lg-slide.lg-use-css3 .lg-item.lg-prev-slide, .lg-css3.lg-slide.lg-use-css3 .lg-item.lg-next-slide, .lg-css3.lg-slide.lg-use-css3 .lg-item.lg-current {
  transition: transform 1s cubic-bezier(0, 0, 0.25, 1) 0s, opacity 0.1s ease 0s;
}
.lg-css3.lg-slide.lg-use-left .lg-item {
  opacity: 0;
  position: absolute;
  left: 0;
}
.lg-css3.lg-slide.lg-use-left .lg-item.lg-prev-slide {
  left: -100%;
}
.lg-css3.lg-slide.lg-use-left .lg-item.lg-next-slide {
  left: 100%;
}
.lg-css3.lg-slide.lg-use-left .lg-item.lg-current {
  left: 0;
  opacity: 1;
}
.lg-css3.lg-slide.lg-use-left .lg-item.lg-prev-slide, .lg-css3.lg-slide.lg-use-left .lg-item.lg-next-slide, .lg-css3.lg-slide.lg-use-left .lg-item.lg-current {
  transition: left 1s cubic-bezier(0, 0, 0.25, 1) 0s, opacity 0.1s ease 0s;
}
@charset "UTF-8";

.slick-slider {
  position: relative;
  display: block;
  box-sizing: border-box;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  touch-action: pan-y;
  -webkit-tap-highlight-color: transparent;
}

.slick-list {
  position: relative;
  overflow: hidden;
  display: block;
  margin: 0;
  padding: 0;
}

.slick-list:focus {
  outline: none;
}

.slick-list.dragging {
  cursor: pointer;
  cursor: hand;
}

.slick-slider .slick-track,
.slick-slider .slick-list {
  transform: translate3d(0, 0, 0);
}

.slick-track {
  position: relative;
  left: 0;
  top: 0;
  display: block;
  margin-left: auto;
  margin-right: auto;
}

.slick-track:before,
.slick-track:after {
  content: "";
  display: table;
}

.slick-track:after {
  clear: both;
}

.slick-loading .slick-track {
  visibility: hidden;
}

.slick-slide {
  float: left;
  height: 100%;
  min-height: 1px;
  display: none;
}

[dir=rtl] .slick-slide {
  float: right;
}

.slick-slide img {
  display: block;
}

.slick-slide.slick-loading img {
  display: none;
}

.slick-slide.dragging img {
  pointer-events: none;
}

.slick-initialized .slick-slide {
  display: block;
}

.slick-loading .slick-slide {
  visibility: hidden;
}

.slick-vertical .slick-slide {
  display: block;
  height: auto;
  border: 1px solid transparent;
}

.slick-arrow.slick-hidden {
  display: none;
}

/* Slider */

.slick-loading .slick-list {
  background: #fff url(/images/vendor/slick-carousel/slick/ajax-loader.gif?c5cd7f5300576ab4c88202b42f6ded62) center center no-repeat;
}

/* Icons */

@font-face {
  font-family: "slick";
  src: url(/fonts/vendor/slick-carousel/slick/slick.eot?ced611daf7709cc778da928fec876475);
  src: url(/fonts/vendor/slick-carousel/slick/slick.eot?ced611daf7709cc778da928fec876475) format("embedded-opentype"), url(/fonts/vendor/slick-carousel/slick/slick.woff?b7c9e1e479de3b53f1e4e30ebac2403a) format("woff"), url(/fonts/vendor/slick-carousel/slick/slick.ttf?d41f55a78e6f49a5512878df1737e58a) format("truetype"), url(/fonts/vendor/slick-carousel/slick/slick.svg?f97e3bbf73254b0112091d0192f17aec) format("svg");
  font-weight: normal;
  font-style: normal;
}

/* Arrows */

.slick-prev,
.slick-next {
  position: absolute;
  display: block;
  height: 20px;
  width: 20px;
  line-height: 0px;
  font-size: 0px;
  cursor: pointer;
  background: transparent;
  color: transparent;
  top: 50%;
  transform: translate(0, -50%);
  padding: 0;
  border: none;
  outline: none;
}

.slick-prev:hover,
.slick-prev:focus,
.slick-next:hover,
.slick-next:focus {
  outline: none;
  background: transparent;
  color: transparent;
}

.slick-prev:hover:before,
.slick-prev:focus:before,
.slick-next:hover:before,
.slick-next:focus:before {
  opacity: 1;
}

.slick-prev.slick-disabled:before,
.slick-next.slick-disabled:before {
  opacity: 0.25;
}

.slick-prev:before,
.slick-next:before {
  font-family: "slick";
  font-size: 20px;
  line-height: 1;
  color: #333;
  opacity: 0.75;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.slick-prev {
  left: -25px;
}

[dir=rtl] .slick-prev {
  left: auto;
  right: -25px;
}

.slick-prev:before {
  content: "\2190";
}

[dir=rtl] .slick-prev:before {
  content: "\2192";
}

.slick-next {
  right: -25px;
}

[dir=rtl] .slick-next {
  left: -25px;
  right: auto;
}

.slick-next:before {
  content: "\2192";
}

[dir=rtl] .slick-next:before {
  content: "\2190";
}

/* Dots */

.slick-dotted.slick-slider {
  margin-bottom: 30px;
}

.slick-dots {
  position: absolute;
  bottom: -25px;
  list-style: none;
  display: block;
  text-align: center;
  padding: 0;
  margin: 0;
  width: 100%;
}

.slick-dots li {
  position: relative;
  display: inline-block;
  height: 20px;
  width: 20px;
  margin: 0 5px;
  padding: 0;
  cursor: pointer;
}

.slick-dots li button {
  border: 0;
  background: transparent;
  display: block;
  height: 20px;
  width: 20px;
  outline: none;
  line-height: 0px;
  font-size: 0px;
  color: transparent;
  padding: 5px;
  cursor: pointer;
}

.slick-dots li button:hover,
.slick-dots li button:focus {
  outline: none;
}

.slick-dots li button:hover:before,
.slick-dots li button:focus:before {
  opacity: 1;
}

.slick-dots li button:before {
  position: absolute;
  top: 0;
  left: 0;
  content: "\2022";
  width: 20px;
  height: 20px;
  font-family: "slick";
  font-size: 6px;
  line-height: 20px;
  text-align: center;
  color: black;
  opacity: 0.25;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.slick-dots li.slick-active button:before {
  color: black;
  opacity: 0.75;
}

/*!
 * Bootstrap v4.3.1 (https://getbootstrap.com/)
 * Copyright 2011-2019 The Bootstrap Authors
 * Copyright 2011-2019 Twitter, Inc.
 * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
 */

:root {
  --blue: #3490dc;
  --indigo: #6574cd;
  --purple: #9561e2;
  --pink: #f66d9b;
  --red: #e3342f;
  --orange: #f6993f;
  --yellow: #ffed4a;
  --green: #38c172;
  --teal: #4dc0b5;
  --cyan: #6cb2eb;
  --white: #fff;
  --gray: #6c757d;
  --gray-dark: #343a40;
  --primary: #3490dc;
  --secondary: #6c757d;
  --success: #38c172;
  --info: #6cb2eb;
  --warning: #ffed4a;
  --danger: #e3342f;
  --light: #f8f9fa;
  --dark: #343a40;
  --breakpoint-xs: 0;
  --breakpoint-sm: 577px;
  --breakpoint-md: 769px;
  --breakpoint-lg: 1024px;
  --breakpoint-xl: 1281px;
  --font-family-sans-serif: "Nunito", sans-serif;
  --font-family-monospace: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
}

*,
*::before,
*::after {
  box-sizing: border-box;
}

html {
  font-family: sans-serif;
  line-height: 1.15;
  -webkit-text-size-adjust: 100%;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

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

body {
  margin: 0;
  font-family: "Nunito", sans-serif;
  font-size: 0.9rem;
  font-weight: 400;
  line-height: 1.6;
  color: #212529;
  text-align: left;
  background-color: #f8fafc;
}

[tabindex="-1"]:focus {
  outline: 0 !important;
}

hr {
  box-sizing: content-box;
  height: 0;
  overflow: visible;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  margin-top: 0;
  margin-bottom: 0.5rem;
}

p {
  margin-top: 0;
  margin-bottom: 1rem;
}

abbr[title],
abbr[data-original-title] {
  text-decoration: underline;
  -webkit-text-decoration: underline dotted;
          text-decoration: underline dotted;
  cursor: help;
  border-bottom: 0;
  -webkit-text-decoration-skip-ink: none;
          text-decoration-skip-ink: none;
}

address {
  margin-bottom: 1rem;
  font-style: normal;
  line-height: inherit;
}

ol,
ul,
dl {
  margin-top: 0;
  margin-bottom: 1rem;
}

ol ol,
ul ul,
ol ul,
ul ol {
  margin-bottom: 0;
}

dt {
  font-weight: 700;
}

dd {
  margin-bottom: 0.5rem;
  margin-left: 0;
}

blockquote {
  margin: 0 0 1rem;
}

b,
strong {
  font-weight: bolder;
}

small {
  font-size: 80%;
}

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

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

a {
  color: #3490dc;
  text-decoration: none;
  background-color: transparent;
}

a:hover {
  color: #1d68a7;
  text-decoration: underline;
}

a:not([href]):not([tabindex]) {
  color: inherit;
  text-decoration: none;
}

a:not([href]):not([tabindex]):hover,
a:not([href]):not([tabindex]):focus {
  color: inherit;
  text-decoration: none;
}

a:not([href]):not([tabindex]):focus {
  outline: 0;
}

pre,
code,
kbd,
samp {
  font-family: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
  font-size: 1em;
}

pre {
  margin-top: 0;
  margin-bottom: 1rem;
  overflow: auto;
}

figure {
  margin: 0 0 1rem;
}

img {
  vertical-align: middle;
  border-style: none;
}

svg {
  overflow: hidden;
  vertical-align: middle;
}

table {
  border-collapse: collapse;
}

caption {
  padding-top: 0.75rem;
  padding-bottom: 0.75rem;
  color: #6c757d;
  text-align: left;
  caption-side: bottom;
}

th {
  text-align: inherit;
}

label {
  display: inline-block;
  margin-bottom: 0.5rem;
}

button {
  border-radius: 0;
}

button:focus {
  outline: 1px dotted;
  outline: 5px auto -webkit-focus-ring-color;
}

input,
button,
select,
optgroup,
textarea {
  margin: 0;
  font-family: inherit;
  font-size: inherit;
  line-height: inherit;
}

button,
input {
  overflow: visible;
}

button,
select {
  text-transform: none;
}

select {
  word-wrap: normal;
}

button,
[type=button],
[type=reset],
[type=submit] {
  -webkit-appearance: button;
}

button:not(:disabled),
[type=button]:not(:disabled),
[type=reset]:not(:disabled),
[type=submit]:not(:disabled) {
  cursor: pointer;
}

button::-moz-focus-inner,
[type=button]::-moz-focus-inner,
[type=reset]::-moz-focus-inner,
[type=submit]::-moz-focus-inner {
  padding: 0;
  border-style: none;
}

input[type=radio],
input[type=checkbox] {
  box-sizing: border-box;
  padding: 0;
}

input[type=date],
input[type=time],
input[type=datetime-local],
input[type=month] {
  -webkit-appearance: listbox;
}

textarea {
  overflow: auto;
  resize: vertical;
}

fieldset {
  min-width: 0;
  padding: 0;
  margin: 0;
  border: 0;
}

legend {
  display: block;
  width: 100%;
  max-width: 100%;
  padding: 0;
  margin-bottom: 0.5rem;
  font-size: 1.5rem;
  line-height: inherit;
  color: inherit;
  white-space: normal;
}

progress {
  vertical-align: baseline;
}

[type=number]::-webkit-inner-spin-button,
[type=number]::-webkit-outer-spin-button {
  height: auto;
}

[type=search] {
  outline-offset: -2px;
  -webkit-appearance: none;
}

[type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
}

::-webkit-file-upload-button {
  font: inherit;
  -webkit-appearance: button;
}

output {
  display: inline-block;
}

summary {
  display: list-item;
  cursor: pointer;
}

template {
  display: none;
}

[hidden] {
  display: none !important;
}

h1,
h2,
h3,
h4,
h5,
h6,
.h1,
.h2,
.h3,
.h4,
.h5,
.h6 {
  margin-bottom: 0.5rem;
  font-weight: 500;
  line-height: 1.2;
}

h1,
.h1 {
  font-size: 2.25rem;
}

h2,
.h2 {
  font-size: 1.8rem;
}

h3,
.h3 {
  font-size: 1.575rem;
}

h4,
.h4 {
  font-size: 1.35rem;
}

h5,
.h5 {
  font-size: 1.125rem;
}

h6,
.h6 {
  font-size: 0.9rem;
}

.lead {
  font-size: 1.125rem;
  font-weight: 300;
}

.display-1 {
  font-size: 6rem;
  font-weight: 300;
  line-height: 1.2;
}

.display-2 {
  font-size: 5.5rem;
  font-weight: 300;
  line-height: 1.2;
}

.display-3 {
  font-size: 4.5rem;
  font-weight: 300;
  line-height: 1.2;
}

.display-4 {
  font-size: 3.5rem;
  font-weight: 300;
  line-height: 1.2;
}

hr {
  margin-top: 1rem;
  margin-bottom: 1rem;
  border: 0;
  border-top: 1px solid rgba(0, 0, 0, 0.1);
}

small,
.small {
  font-size: 80%;
  font-weight: 400;
}

mark,
.mark {
  padding: 0.2em;
  background-color: #fcf8e3;
}

.list-unstyled {
  padding-left: 0;
  list-style: none;
}

.list-inline {
  padding-left: 0;
  list-style: none;
}

.list-inline-item {
  display: inline-block;
}

.list-inline-item:not(:last-child) {
  margin-right: 0.5rem;
}

.initialism {
  font-size: 90%;
  text-transform: uppercase;
}

.blockquote {
  margin-bottom: 1rem;
  font-size: 1.125rem;
}

.blockquote-footer {
  display: block;
  font-size: 80%;
  color: #6c757d;
}

.blockquote-footer::before {
  content: "\2014\A0";
}

.img-fluid {
  max-width: 100%;
  height: auto;
}

.img-thumbnail {
  padding: 0.25rem;
  background-color: #f8fafc;
  border: 1px solid #dee2e6;
  border-radius: 0.25rem;
  max-width: 100%;
  height: auto;
}

.figure {
  display: inline-block;
}

.figure-img {
  margin-bottom: 0.5rem;
  line-height: 1;
}

.figure-caption {
  font-size: 90%;
  color: #6c757d;
}

code {
  font-size: 87.5%;
  color: #f66d9b;
  word-break: break-word;
}

a > code {
  color: inherit;
}

kbd {
  padding: 0.2rem 0.4rem;
  font-size: 87.5%;
  color: #fff;
  background-color: #212529;
  border-radius: 0.2rem;
}

kbd kbd {
  padding: 0;
  font-size: 100%;
  font-weight: 700;
}

pre {
  display: block;
  font-size: 87.5%;
  color: #212529;
}

pre code {
  font-size: inherit;
  color: inherit;
  word-break: normal;
}

.pre-scrollable {
  max-height: 340px;
  overflow-y: scroll;
}

.container {
  width: 100%;
  padding-right: 15px;
  padding-left: 15px;
  margin-right: auto;
  margin-left: auto;
}

@media (min-width: 577px) {
  .container {
    max-width: 540px;
  }
}

@media (min-width: 769px) {
  .container {
    max-width: 720px;
  }
}

@media (min-width: 1024px) {
  .container {
    max-width: 960px;
  }
}

@media (min-width: 1281px) {
  .container {
    max-width: 1200px;
  }
}

.container-fluid {
  width: 100%;
  padding-right: 15px;
  padding-left: 15px;
  margin-right: auto;
  margin-left: auto;
}

.row {
  display: flex;
  flex-wrap: wrap;
  margin-right: -15px;
  margin-left: -15px;
}

.no-gutters {
  margin-right: 0;
  margin-left: 0;
}

.no-gutters > .col,
.no-gutters > [class*=col-] {
  padding-right: 0;
  padding-left: 0;
}

.col-xl,
.col-xl-auto,
.col-xl-12,
.col-xl-11,
.col-xl-10,
.col-xl-9,
.col-xl-8,
.col-xl-7,
.col-xl-6,
.col-xl-5,
.col-xl-4,
.col-xl-3,
.col-xl-2,
.col-xl-1,
.col-lg,
.col-lg-auto,
.col-lg-12,
.col-lg-11,
.col-lg-10,
.col-lg-9,
.col-lg-8,
.col-lg-7,
.col-lg-6,
.col-lg-5,
.col-lg-4,
.col-lg-3,
.col-lg-2,
.col-lg-1,
.col-md,
.col-md-auto,
.col-md-12,
.col-md-11,
.col-md-10,
.col-md-9,
.col-md-8,
.col-md-7,
.col-md-6,
.col-md-5,
.col-md-4,
.col-md-3,
.col-md-2,
.col-md-1,
.col-sm,
.col-sm-auto,
.col-sm-12,
.col-sm-11,
.col-sm-10,
.col-sm-9,
.col-sm-8,
.col-sm-7,
.col-sm-6,
.col-sm-5,
.col-sm-4,
.col-sm-3,
.col-sm-2,
.col-sm-1,
.col,
.col-auto,
.col-12,
.col-11,
.col-10,
.col-9,
.col-8,
.col-7,
.col-6,
.col-5,
.col-4,
.col-3,
.col-2,
.col-1 {
  position: relative;
  width: 100%;
  padding-right: 15px;
  padding-left: 15px;
}

.col {
  flex-basis: 0;
  flex-grow: 1;
  max-width: 100%;
}

.col-auto {
  flex: 0 0 auto;
  width: auto;
  max-width: 100%;
}

.col-1 {
  flex: 0 0 8.3333333333%;
  max-width: 8.3333333333%;
}

.col-2 {
  flex: 0 0 16.6666666667%;
  max-width: 16.6666666667%;
}

.col-3 {
  flex: 0 0 25%;
  max-width: 25%;
}

.col-4 {
  flex: 0 0 33.3333333333%;
  max-width: 33.3333333333%;
}

.col-5 {
  flex: 0 0 41.6666666667%;
  max-width: 41.6666666667%;
}

.col-6 {
  flex: 0 0 50%;
  max-width: 50%;
}

.col-7 {
  flex: 0 0 58.3333333333%;
  max-width: 58.3333333333%;
}

.col-8 {
  flex: 0 0 66.6666666667%;
  max-width: 66.6666666667%;
}

.col-9 {
  flex: 0 0 75%;
  max-width: 75%;
}

.col-10 {
  flex: 0 0 83.3333333333%;
  max-width: 83.3333333333%;
}

.col-11 {
  flex: 0 0 91.6666666667%;
  max-width: 91.6666666667%;
}

.col-12 {
  flex: 0 0 100%;
  max-width: 100%;
}

.order-first {
  order: -1;
}

.order-last {
  order: 13;
}

.order-0 {
  order: 0;
}

.order-1 {
  order: 1;
}

.order-2 {
  order: 2;
}

.order-3 {
  order: 3;
}

.order-4 {
  order: 4;
}

.order-5 {
  order: 5;
}

.order-6 {
  order: 6;
}

.order-7 {
  order: 7;
}

.order-8 {
  order: 8;
}

.order-9 {
  order: 9;
}

.order-10 {
  order: 10;
}

.order-11 {
  order: 11;
}

.order-12 {
  order: 12;
}

.offset-1 {
  margin-left: 8.3333333333%;
}

.offset-2 {
  margin-left: 16.6666666667%;
}

.offset-3 {
  margin-left: 25%;
}

.offset-4 {
  margin-left: 33.3333333333%;
}

.offset-5 {
  margin-left: 41.6666666667%;
}

.offset-6 {
  margin-left: 50%;
}

.offset-7 {
  margin-left: 58.3333333333%;
}

.offset-8 {
  margin-left: 66.6666666667%;
}

.offset-9 {
  margin-left: 75%;
}

.offset-10 {
  margin-left: 83.3333333333%;
}

.offset-11 {
  margin-left: 91.6666666667%;
}

@media (min-width: 577px) {
  .col-sm {
    flex-basis: 0;
    flex-grow: 1;
    max-width: 100%;
  }

  .col-sm-auto {
    flex: 0 0 auto;
    width: auto;
    max-width: 100%;
  }

  .col-sm-1 {
    flex: 0 0 8.3333333333%;
    max-width: 8.3333333333%;
  }

  .col-sm-2 {
    flex: 0 0 16.6666666667%;
    max-width: 16.6666666667%;
  }

  .col-sm-3 {
    flex: 0 0 25%;
    max-width: 25%;
  }

  .col-sm-4 {
    flex: 0 0 33.3333333333%;
    max-width: 33.3333333333%;
  }

  .col-sm-5 {
    flex: 0 0 41.6666666667%;
    max-width: 41.6666666667%;
  }

  .col-sm-6 {
    flex: 0 0 50%;
    max-width: 50%;
  }

  .col-sm-7 {
    flex: 0 0 58.3333333333%;
    max-width: 58.3333333333%;
  }

  .col-sm-8 {
    flex: 0 0 66.6666666667%;
    max-width: 66.6666666667%;
  }

  .col-sm-9 {
    flex: 0 0 75%;
    max-width: 75%;
  }

  .col-sm-10 {
    flex: 0 0 83.3333333333%;
    max-width: 83.3333333333%;
  }

  .col-sm-11 {
    flex: 0 0 91.6666666667%;
    max-width: 91.6666666667%;
  }

  .col-sm-12 {
    flex: 0 0 100%;
    max-width: 100%;
  }

  .order-sm-first {
    order: -1;
  }

  .order-sm-last {
    order: 13;
  }

  .order-sm-0 {
    order: 0;
  }

  .order-sm-1 {
    order: 1;
  }

  .order-sm-2 {
    order: 2;
  }

  .order-sm-3 {
    order: 3;
  }

  .order-sm-4 {
    order: 4;
  }

  .order-sm-5 {
    order: 5;
  }

  .order-sm-6 {
    order: 6;
  }

  .order-sm-7 {
    order: 7;
  }

  .order-sm-8 {
    order: 8;
  }

  .order-sm-9 {
    order: 9;
  }

  .order-sm-10 {
    order: 10;
  }

  .order-sm-11 {
    order: 11;
  }

  .order-sm-12 {
    order: 12;
  }

  .offset-sm-0 {
    margin-left: 0;
  }

  .offset-sm-1 {
    margin-left: 8.3333333333%;
  }

  .offset-sm-2 {
    margin-left: 16.6666666667%;
  }

  .offset-sm-3 {
    margin-left: 25%;
  }

  .offset-sm-4 {
    margin-left: 33.3333333333%;
  }

  .offset-sm-5 {
    margin-left: 41.6666666667%;
  }

  .offset-sm-6 {
    margin-left: 50%;
  }

  .offset-sm-7 {
    margin-left: 58.3333333333%;
  }

  .offset-sm-8 {
    margin-left: 66.6666666667%;
  }

  .offset-sm-9 {
    margin-left: 75%;
  }

  .offset-sm-10 {
    margin-left: 83.3333333333%;
  }

  .offset-sm-11 {
    margin-left: 91.6666666667%;
  }
}

@media (min-width: 769px) {
  .col-md {
    flex-basis: 0;
    flex-grow: 1;
    max-width: 100%;
  }

  .col-md-auto {
    flex: 0 0 auto;
    width: auto;
    max-width: 100%;
  }

  .col-md-1 {
    flex: 0 0 8.3333333333%;
    max-width: 8.3333333333%;
  }

  .col-md-2 {
    flex: 0 0 16.6666666667%;
    max-width: 16.6666666667%;
  }

  .col-md-3 {
    flex: 0 0 25%;
    max-width: 25%;
  }

  .col-md-4 {
    flex: 0 0 33.3333333333%;
    max-width: 33.3333333333%;
  }

  .col-md-5 {
    flex: 0 0 41.6666666667%;
    max-width: 41.6666666667%;
  }

  .col-md-6 {
    flex: 0 0 50%;
    max-width: 50%;
  }

  .col-md-7 {
    flex: 0 0 58.3333333333%;
    max-width: 58.3333333333%;
  }

  .col-md-8 {
    flex: 0 0 66.6666666667%;
    max-width: 66.6666666667%;
  }

  .col-md-9 {
    flex: 0 0 75%;
    max-width: 75%;
  }

  .col-md-10 {
    flex: 0 0 83.3333333333%;
    max-width: 83.3333333333%;
  }

  .col-md-11 {
    flex: 0 0 91.6666666667%;
    max-width: 91.6666666667%;
  }

  .col-md-12 {
    flex: 0 0 100%;
    max-width: 100%;
  }

  .order-md-first {
    order: -1;
  }

  .order-md-last {
    order: 13;
  }

  .order-md-0 {
    order: 0;
  }

  .order-md-1 {
    order: 1;
  }

  .order-md-2 {
    order: 2;
  }

  .order-md-3 {
    order: 3;
  }

  .order-md-4 {
    order: 4;
  }

  .order-md-5 {
    order: 5;
  }

  .order-md-6 {
    order: 6;
  }

  .order-md-7 {
    order: 7;
  }

  .order-md-8 {
    order: 8;
  }

  .order-md-9 {
    order: 9;
  }

  .order-md-10 {
    order: 10;
  }

  .order-md-11 {
    order: 11;
  }

  .order-md-12 {
    order: 12;
  }

  .offset-md-0 {
    margin-left: 0;
  }

  .offset-md-1 {
    margin-left: 8.3333333333%;
  }

  .offset-md-2 {
    margin-left: 16.6666666667%;
  }

  .offset-md-3 {
    margin-left: 25%;
  }

  .offset-md-4 {
    margin-left: 33.3333333333%;
  }

  .offset-md-5 {
    margin-left: 41.6666666667%;
  }

  .offset-md-6 {
    margin-left: 50%;
  }

  .offset-md-7 {
    margin-left: 58.3333333333%;
  }

  .offset-md-8 {
    margin-left: 66.6666666667%;
  }

  .offset-md-9 {
    margin-left: 75%;
  }

  .offset-md-10 {
    margin-left: 83.3333333333%;
  }

  .offset-md-11 {
    margin-left: 91.6666666667%;
  }
}

@media (min-width: 1024px) {
  .col-lg {
    flex-basis: 0;
    flex-grow: 1;
    max-width: 100%;
  }

  .col-lg-auto {
    flex: 0 0 auto;
    width: auto;
    max-width: 100%;
  }

  .col-lg-1 {
    flex: 0 0 8.3333333333%;
    max-width: 8.3333333333%;
  }

  .col-lg-2 {
    flex: 0 0 16.6666666667%;
    max-width: 16.6666666667%;
  }

  .col-lg-3 {
    flex: 0 0 25%;
    max-width: 25%;
  }

  .col-lg-4 {
    flex: 0 0 33.3333333333%;
    max-width: 33.3333333333%;
  }

  .col-lg-5 {
    flex: 0 0 41.6666666667%;
    max-width: 41.6666666667%;
  }

  .col-lg-6 {
    flex: 0 0 50%;
    max-width: 50%;
  }

  .col-lg-7 {
    flex: 0 0 58.3333333333%;
    max-width: 58.3333333333%;
  }

  .col-lg-8 {
    flex: 0 0 66.6666666667%;
    max-width: 66.6666666667%;
  }

  .col-lg-9 {
    flex: 0 0 75%;
    max-width: 75%;
  }

  .col-lg-10 {
    flex: 0 0 83.3333333333%;
    max-width: 83.3333333333%;
  }

  .col-lg-11 {
    flex: 0 0 91.6666666667%;
    max-width: 91.6666666667%;
  }

  .col-lg-12 {
    flex: 0 0 100%;
    max-width: 100%;
  }

  .order-lg-first {
    order: -1;
  }

  .order-lg-last {
    order: 13;
  }

  .order-lg-0 {
    order: 0;
  }

  .order-lg-1 {
    order: 1;
  }

  .order-lg-2 {
    order: 2;
  }

  .order-lg-3 {
    order: 3;
  }

  .order-lg-4 {
    order: 4;
  }

  .order-lg-5 {
    order: 5;
  }

  .order-lg-6 {
    order: 6;
  }

  .order-lg-7 {
    order: 7;
  }

  .order-lg-8 {
    order: 8;
  }

  .order-lg-9 {
    order: 9;
  }

  .order-lg-10 {
    order: 10;
  }

  .order-lg-11 {
    order: 11;
  }

  .order-lg-12 {
    order: 12;
  }

  .offset-lg-0 {
    margin-left: 0;
  }

  .offset-lg-1 {
    margin-left: 8.3333333333%;
  }

  .offset-lg-2 {
    margin-left: 16.6666666667%;
  }

  .offset-lg-3 {
    margin-left: 25%;
  }

  .offset-lg-4 {
    margin-left: 33.3333333333%;
  }

  .offset-lg-5 {
    margin-left: 41.6666666667%;
  }

  .offset-lg-6 {
    margin-left: 50%;
  }

  .offset-lg-7 {
    margin-left: 58.3333333333%;
  }

  .offset-lg-8 {
    margin-left: 66.6666666667%;
  }

  .offset-lg-9 {
    margin-left: 75%;
  }

  .offset-lg-10 {
    margin-left: 83.3333333333%;
  }

  .offset-lg-11 {
    margin-left: 91.6666666667%;
  }
}

@media (min-width: 1281px) {
  .col-xl {
    flex-basis: 0;
    flex-grow: 1;
    max-width: 100%;
  }

  .col-xl-auto {
    flex: 0 0 auto;
    width: auto;
    max-width: 100%;
  }

  .col-xl-1 {
    flex: 0 0 8.3333333333%;
    max-width: 8.3333333333%;
  }

  .col-xl-2 {
    flex: 0 0 16.6666666667%;
    max-width: 16.6666666667%;
  }

  .col-xl-3 {
    flex: 0 0 25%;
    max-width: 25%;
  }

  .col-xl-4 {
    flex: 0 0 33.3333333333%;
    max-width: 33.3333333333%;
  }

  .col-xl-5 {
    flex: 0 0 41.6666666667%;
    max-width: 41.6666666667%;
  }

  .col-xl-6 {
    flex: 0 0 50%;
    max-width: 50%;
  }

  .col-xl-7 {
    flex: 0 0 58.3333333333%;
    max-width: 58.3333333333%;
  }

  .col-xl-8 {
    flex: 0 0 66.6666666667%;
    max-width: 66.6666666667%;
  }

  .col-xl-9 {
    flex: 0 0 75%;
    max-width: 75%;
  }

  .col-xl-10 {
    flex: 0 0 83.3333333333%;
    max-width: 83.3333333333%;
  }

  .col-xl-11 {
    flex: 0 0 91.6666666667%;
    max-width: 91.6666666667%;
  }

  .col-xl-12 {
    flex: 0 0 100%;
    max-width: 100%;
  }

  .order-xl-first {
    order: -1;
  }

  .order-xl-last {
    order: 13;
  }

  .order-xl-0 {
    order: 0;
  }

  .order-xl-1 {
    order: 1;
  }

  .order-xl-2 {
    order: 2;
  }

  .order-xl-3 {
    order: 3;
  }

  .order-xl-4 {
    order: 4;
  }

  .order-xl-5 {
    order: 5;
  }

  .order-xl-6 {
    order: 6;
  }

  .order-xl-7 {
    order: 7;
  }

  .order-xl-8 {
    order: 8;
  }

  .order-xl-9 {
    order: 9;
  }

  .order-xl-10 {
    order: 10;
  }

  .order-xl-11 {
    order: 11;
  }

  .order-xl-12 {
    order: 12;
  }

  .offset-xl-0 {
    margin-left: 0;
  }

  .offset-xl-1 {
    margin-left: 8.3333333333%;
  }

  .offset-xl-2 {
    margin-left: 16.6666666667%;
  }

  .offset-xl-3 {
    margin-left: 25%;
  }

  .offset-xl-4 {
    margin-left: 33.3333333333%;
  }

  .offset-xl-5 {
    margin-left: 41.6666666667%;
  }

  .offset-xl-6 {
    margin-left: 50%;
  }

  .offset-xl-7 {
    margin-left: 58.3333333333%;
  }

  .offset-xl-8 {
    margin-left: 66.6666666667%;
  }

  .offset-xl-9 {
    margin-left: 75%;
  }

  .offset-xl-10 {
    margin-left: 83.3333333333%;
  }

  .offset-xl-11 {
    margin-left: 91.6666666667%;
  }
}

.table {
  width: 100%;
  margin-bottom: 1rem;
  color: #212529;
}

.table th,
.table td {
  padding: 0.75rem;
  vertical-align: top;
  border-top: 1px solid #dee2e6;
}

.table thead th {
  vertical-align: bottom;
  border-bottom: 2px solid #dee2e6;
}

.table tbody + tbody {
  border-top: 2px solid #dee2e6;
}

.table-sm th,
.table-sm td {
  padding: 0.3rem;
}

.table-bordered {
  border: 1px solid #dee2e6;
}

.table-bordered th,
.table-bordered td {
  border: 1px solid #dee2e6;
}

.table-bordered thead th,
.table-bordered thead td {
  border-bottom-width: 2px;
}

.table-borderless th,
.table-borderless td,
.table-borderless thead th,
.table-borderless tbody + tbody {
  border: 0;
}

.table-striped tbody tr:nth-of-type(odd) {
  background-color: rgba(0, 0, 0, 0.05);
}

.table-hover tbody tr:hover {
  color: #212529;
  background-color: rgba(0, 0, 0, 0.075);
}

.table-primary,
.table-primary > th,
.table-primary > td {
  background-color: #c6e0f5;
}

.table-primary th,
.table-primary td,
.table-primary thead th,
.table-primary tbody + tbody {
  border-color: #95c5ed;
}

.table-hover .table-primary:hover {
  background-color: #b0d4f1;
}

.table-hover .table-primary:hover > td,
.table-hover .table-primary:hover > th {
  background-color: #b0d4f1;
}

.table-secondary,
.table-secondary > th,
.table-secondary > td {
  background-color: #d6d8db;
}

.table-secondary th,
.table-secondary td,
.table-secondary thead th,
.table-secondary tbody + tbody {
  border-color: #b3b7bb;
}

.table-hover .table-secondary:hover {
  background-color: #c8cbcf;
}

.table-hover .table-secondary:hover > td,
.table-hover .table-secondary:hover > th {
  background-color: #c8cbcf;
}

.table-success,
.table-success > th,
.table-success > td {
  background-color: #c7eed8;
}

.table-success th,
.table-success td,
.table-success thead th,
.table-success tbody + tbody {
  border-color: #98dfb6;
}

.table-hover .table-success:hover {
  background-color: #b3e8ca;
}

.table-hover .table-success:hover > td,
.table-hover .table-success:hover > th {
  background-color: #b3e8ca;
}

.table-info,
.table-info > th,
.table-info > td {
  background-color: #d6e9f9;
}

.table-info th,
.table-info td,
.table-info thead th,
.table-info tbody + tbody {
  border-color: #b3d7f5;
}

.table-hover .table-info:hover {
  background-color: #c0ddf6;
}

.table-hover .table-info:hover > td,
.table-hover .table-info:hover > th {
  background-color: #c0ddf6;
}

.table-warning,
.table-warning > th,
.table-warning > td {
  background-color: #fffacc;
}

.table-warning th,
.table-warning td,
.table-warning thead th,
.table-warning tbody + tbody {
  border-color: #fff6a1;
}

.table-hover .table-warning:hover {
  background-color: #fff8b3;
}

.table-hover .table-warning:hover > td,
.table-hover .table-warning:hover > th {
  background-color: #fff8b3;
}

.table-danger,
.table-danger > th,
.table-danger > td {
  background-color: #f7c6c5;
}

.table-danger th,
.table-danger td,
.table-danger thead th,
.table-danger tbody + tbody {
  border-color: #f09593;
}

.table-hover .table-danger:hover {
  background-color: #f4b0af;
}

.table-hover .table-danger:hover > td,
.table-hover .table-danger:hover > th {
  background-color: #f4b0af;
}

.table-light,
.table-light > th,
.table-light > td {
  background-color: #fdfdfe;
}

.table-light th,
.table-light td,
.table-light thead th,
.table-light tbody + tbody {
  border-color: #fbfcfc;
}

.table-hover .table-light:hover {
  background-color: #ececf6;
}

.table-hover .table-light:hover > td,
.table-hover .table-light:hover > th {
  background-color: #ececf6;
}

.table-dark,
.table-dark > th,
.table-dark > td {
  background-color: #c6c8ca;
}

.table-dark th,
.table-dark td,
.table-dark thead th,
.table-dark tbody + tbody {
  border-color: #95999c;
}

.table-hover .table-dark:hover {
  background-color: #b9bbbe;
}

.table-hover .table-dark:hover > td,
.table-hover .table-dark:hover > th {
  background-color: #b9bbbe;
}

.table-active,
.table-active > th,
.table-active > td {
  background-color: rgba(0, 0, 0, 0.075);
}

.table-hover .table-active:hover {
  background-color: rgba(0, 0, 0, 0.075);
}

.table-hover .table-active:hover > td,
.table-hover .table-active:hover > th {
  background-color: rgba(0, 0, 0, 0.075);
}

.table .thead-dark th {
  color: #fff;
  background-color: #343a40;
  border-color: #454d55;
}

.table .thead-light th {
  color: #495057;
  background-color: #e9ecef;
  border-color: #dee2e6;
}

.table-dark {
  color: #fff;
  background-color: #343a40;
}

.table-dark th,
.table-dark td,
.table-dark thead th {
  border-color: #454d55;
}

.table-dark.table-bordered {
  border: 0;
}

.table-dark.table-striped tbody tr:nth-of-type(odd) {
  background-color: rgba(255, 255, 255, 0.05);
}

.table-dark.table-hover tbody tr:hover {
  color: #fff;
  background-color: rgba(255, 255, 255, 0.075);
}

@media (max-width: 576.98px) {
  .table-responsive-sm {
    display: block;
    width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }

  .table-responsive-sm > .table-bordered {
    border: 0;
  }
}

@media (max-width: 768.98px) {
  .table-responsive-md {
    display: block;
    width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }

  .table-responsive-md > .table-bordered {
    border: 0;
  }
}

@media (max-width: 1023.98px) {
  .table-responsive-lg {
    display: block;
    width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }

  .table-responsive-lg > .table-bordered {
    border: 0;
  }
}

@media (max-width: 1280.98px) {
  .table-responsive-xl {
    display: block;
    width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }

  .table-responsive-xl > .table-bordered {
    border: 0;
  }
}

.table-responsive {
  display: block;
  width: 100%;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}

.table-responsive > .table-bordered {
  border: 0;
}

.form-control {
  display: block;
  width: 100%;
  height: calc(1.6em + 0.75rem + 2px);
  padding: 0.375rem 0.75rem;
  font-size: 0.9rem;
  font-weight: 400;
  line-height: 1.6;
  color: #495057;
  background-color: #fff;
  background-clip: padding-box;
  border: 1px solid #ced4da;
  border-radius: 0.25rem;
  transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}

@media (prefers-reduced-motion: reduce) {
  .form-control {
    transition: none;
  }
}

.form-control::-ms-expand {
  background-color: transparent;
  border: 0;
}

.form-control:focus {
  color: #495057;
  background-color: #fff;
  border-color: #a1cbef;
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(52, 144, 220, 0.25);
}

.form-control::-moz-placeholder {
  color: #6c757d;
  opacity: 1;
}

.form-control:-ms-input-placeholder {
  color: #6c757d;
  opacity: 1;
}

.form-control::-ms-input-placeholder {
  color: #6c757d;
  opacity: 1;
}

.form-control::placeholder {
  color: #6c757d;
  opacity: 1;
}

.form-control:disabled,
.form-control[readonly] {
  background-color: #e9ecef;
  opacity: 1;
}

select.form-control:focus::-ms-value {
  color: #495057;
  background-color: #fff;
}

.form-control-file,
.form-control-range {
  display: block;
  width: 100%;
}

.col-form-label {
  padding-top: calc(0.375rem + 1px);
  padding-bottom: calc(0.375rem + 1px);
  margin-bottom: 0;
  font-size: inherit;
  line-height: 1.6;
}

.col-form-label-lg {
  padding-top: calc(0.5rem + 1px);
  padding-bottom: calc(0.5rem + 1px);
  font-size: 1.125rem;
  line-height: 1.5;
}

.col-form-label-sm {
  padding-top: calc(0.25rem + 1px);
  padding-bottom: calc(0.25rem + 1px);
  font-size: 0.7875rem;
  line-height: 1.5;
}

.form-control-plaintext {
  display: block;
  width: 100%;
  padding-top: 0.375rem;
  padding-bottom: 0.375rem;
  margin-bottom: 0;
  line-height: 1.6;
  color: #212529;
  background-color: transparent;
  border: solid transparent;
  border-width: 1px 0;
}

.form-control-plaintext.form-control-sm,
.form-control-plaintext.form-control-lg {
  padding-right: 0;
  padding-left: 0;
}

.form-control-sm {
  height: calc(1.5em + 0.5rem + 2px);
  padding: 0.25rem 0.5rem;
  font-size: 0.7875rem;
  line-height: 1.5;
  border-radius: 0.2rem;
}

.form-control-lg {
  height: calc(1.5em + 1rem + 2px);
  padding: 0.5rem 1rem;
  font-size: 1.125rem;
  line-height: 1.5;
  border-radius: 0.3rem;
}

select.form-control[size],
select.form-control[multiple] {
  height: auto;
}

textarea.form-control {
  height: auto;
}

.form-group {
  margin-bottom: 1rem;
}

.form-text {
  display: block;
  margin-top: 0.25rem;
}

.form-row {
  display: flex;
  flex-wrap: wrap;
  margin-right: -5px;
  margin-left: -5px;
}

.form-row > .col,
.form-row > [class*=col-] {
  padding-right: 5px;
  padding-left: 5px;
}

.form-check {
  position: relative;
  display: block;
  padding-left: 1.25rem;
}

.form-check-input {
  position: absolute;
  margin-top: 0.3rem;
  margin-left: -1.25rem;
}

.form-check-input:disabled ~ .form-check-label {
  color: #6c757d;
}

.form-check-label {
  margin-bottom: 0;
}

.form-check-inline {
  display: inline-flex;
  align-items: center;
  padding-left: 0;
  margin-right: 0.75rem;
}

.form-check-inline .form-check-input {
  position: static;
  margin-top: 0;
  margin-right: 0.3125rem;
  margin-left: 0;
}

.valid-feedback {
  display: none;
  width: 100%;
  margin-top: 0.25rem;
  font-size: 80%;
  color: #38c172;
}

.valid-tooltip {
  position: absolute;
  top: 100%;
  z-index: 5;
  display: none;
  max-width: 100%;
  padding: 0.25rem 0.5rem;
  margin-top: 0.1rem;
  font-size: 0.7875rem;
  line-height: 1.6;
  color: #fff;
  background-color: rgba(56, 193, 114, 0.9);
  border-radius: 0.25rem;
}

.was-validated .form-control:valid,
.form-control.is-valid {
  border-color: #38c172;
  padding-right: calc(1.6em + 0.75rem);
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%2338c172' d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e");
  background-repeat: no-repeat;
  background-position: center right calc(0.4em + 0.1875rem);
  background-size: calc(0.8em + 0.375rem) calc(0.8em + 0.375rem);
}

.was-validated .form-control:valid:focus,
.form-control.is-valid:focus {
  border-color: #38c172;
  box-shadow: 0 0 0 0.2rem rgba(56, 193, 114, 0.25);
}

.was-validated .form-control:valid ~ .valid-feedback,
.was-validated .form-control:valid ~ .valid-tooltip,
.form-control.is-valid ~ .valid-feedback,
.form-control.is-valid ~ .valid-tooltip {
  display: block;
}

.was-validated textarea.form-control:valid,
textarea.form-control.is-valid {
  padding-right: calc(1.6em + 0.75rem);
  background-position: top calc(0.4em + 0.1875rem) right calc(0.4em + 0.1875rem);
}

.was-validated .custom-select:valid,
.custom-select.is-valid {
  border-color: #38c172;
  padding-right: calc((1em + 0.75rem) * 3 / 4 + 1.75rem);
  background: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 4 5'%3e%3cpath fill='%23343a40' d='M2 0L0 2h4zm0 5L0 3h4z'/%3e%3c/svg%3e") no-repeat right 0.75rem center/8px 10px, url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%2338c172' d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e") #fff no-repeat center right 1.75rem/calc(0.8em + 0.375rem) calc(0.8em + 0.375rem);
}

.was-validated .custom-select:valid:focus,
.custom-select.is-valid:focus {
  border-color: #38c172;
  box-shadow: 0 0 0 0.2rem rgba(56, 193, 114, 0.25);
}

.was-validated .custom-select:valid ~ .valid-feedback,
.was-validated .custom-select:valid ~ .valid-tooltip,
.custom-select.is-valid ~ .valid-feedback,
.custom-select.is-valid ~ .valid-tooltip {
  display: block;
}

.was-validated .form-control-file:valid ~ .valid-feedback,
.was-validated .form-control-file:valid ~ .valid-tooltip,
.form-control-file.is-valid ~ .valid-feedback,
.form-control-file.is-valid ~ .valid-tooltip {
  display: block;
}

.was-validated .form-check-input:valid ~ .form-check-label,
.form-check-input.is-valid ~ .form-check-label {
  color: #38c172;
}

.was-validated .form-check-input:valid ~ .valid-feedback,
.was-validated .form-check-input:valid ~ .valid-tooltip,
.form-check-input.is-valid ~ .valid-feedback,
.form-check-input.is-valid ~ .valid-tooltip {
  display: block;
}

.was-validated .custom-control-input:valid ~ .custom-control-label,
.custom-control-input.is-valid ~ .custom-control-label {
  color: #38c172;
}

.was-validated .custom-control-input:valid ~ .custom-control-label::before,
.custom-control-input.is-valid ~ .custom-control-label::before {
  border-color: #38c172;
}

.was-validated .custom-control-input:valid ~ .valid-feedback,
.was-validated .custom-control-input:valid ~ .valid-tooltip,
.custom-control-input.is-valid ~ .valid-feedback,
.custom-control-input.is-valid ~ .valid-tooltip {
  display: block;
}

.was-validated .custom-control-input:valid:checked ~ .custom-control-label::before,
.custom-control-input.is-valid:checked ~ .custom-control-label::before {
  border-color: #5cd08d;
  background-color: #5cd08d;
}

.was-validated .custom-control-input:valid:focus ~ .custom-control-label::before,
.custom-control-input.is-valid:focus ~ .custom-control-label::before {
  box-shadow: 0 0 0 0.2rem rgba(56, 193, 114, 0.25);
}

.was-validated .custom-control-input:valid:focus:not(:checked) ~ .custom-control-label::before,
.custom-control-input.is-valid:focus:not(:checked) ~ .custom-control-label::before {
  border-color: #38c172;
}

.was-validated .custom-file-input:valid ~ .custom-file-label,
.custom-file-input.is-valid ~ .custom-file-label {
  border-color: #38c172;
}

.was-validated .custom-file-input:valid ~ .valid-feedback,
.was-validated .custom-file-input:valid ~ .valid-tooltip,
.custom-file-input.is-valid ~ .valid-feedback,
.custom-file-input.is-valid ~ .valid-tooltip {
  display: block;
}

.was-validated .custom-file-input:valid:focus ~ .custom-file-label,
.custom-file-input.is-valid:focus ~ .custom-file-label {
  border-color: #38c172;
  box-shadow: 0 0 0 0.2rem rgba(56, 193, 114, 0.25);
}

.invalid-feedback {
  display: none;
  width: 100%;
  margin-top: 0.25rem;
  font-size: 80%;
  color: #e3342f;
}

.invalid-tooltip {
  position: absolute;
  top: 100%;
  z-index: 5;
  display: none;
  max-width: 100%;
  padding: 0.25rem 0.5rem;
  margin-top: 0.1rem;
  font-size: 0.7875rem;
  line-height: 1.6;
  color: #fff;
  background-color: rgba(227, 52, 47, 0.9);
  border-radius: 0.25rem;
}

.was-validated .form-control:invalid,
.form-control.is-invalid {
  border-color: #e3342f;
  padding-right: calc(1.6em + 0.75rem);
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='%23e3342f' viewBox='-2 -2 7 7'%3e%3cpath stroke='%23e3342f' d='M0 0l3 3m0-3L0 3'/%3e%3ccircle r='.5'/%3e%3ccircle cx='3' r='.5'/%3e%3ccircle cy='3' r='.5'/%3e%3ccircle cx='3' cy='3' r='.5'/%3e%3c/svg%3E");
  background-repeat: no-repeat;
  background-position: center right calc(0.4em + 0.1875rem);
  background-size: calc(0.8em + 0.375rem) calc(0.8em + 0.375rem);
}

.was-validated .form-control:invalid:focus,
.form-control.is-invalid:focus {
  border-color: #e3342f;
  box-shadow: 0 0 0 0.2rem rgba(227, 52, 47, 0.25);
}

.was-validated .form-control:invalid ~ .invalid-feedback,
.was-validated .form-control:invalid ~ .invalid-tooltip,
.form-control.is-invalid ~ .invalid-feedback,
.form-control.is-invalid ~ .invalid-tooltip {
  display: block;
}

.was-validated textarea.form-control:invalid,
textarea.form-control.is-invalid {
  padding-right: calc(1.6em + 0.75rem);
  background-position: top calc(0.4em + 0.1875rem) right calc(0.4em + 0.1875rem);
}

.was-validated .custom-select:invalid,
.custom-select.is-invalid {
  border-color: #e3342f;
  padding-right: calc((1em + 0.75rem) * 3 / 4 + 1.75rem);
  background: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 4 5'%3e%3cpath fill='%23343a40' d='M2 0L0 2h4zm0 5L0 3h4z'/%3e%3c/svg%3e") no-repeat right 0.75rem center/8px 10px, url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='%23e3342f' viewBox='-2 -2 7 7'%3e%3cpath stroke='%23e3342f' d='M0 0l3 3m0-3L0 3'/%3e%3ccircle r='.5'/%3e%3ccircle cx='3' r='.5'/%3e%3ccircle cy='3' r='.5'/%3e%3ccircle cx='3' cy='3' r='.5'/%3e%3c/svg%3E") #fff no-repeat center right 1.75rem/calc(0.8em + 0.375rem) calc(0.8em + 0.375rem);
}

.was-validated .custom-select:invalid:focus,
.custom-select.is-invalid:focus {
  border-color: #e3342f;
  box-shadow: 0 0 0 0.2rem rgba(227, 52, 47, 0.25);
}

.was-validated .custom-select:invalid ~ .invalid-feedback,
.was-validated .custom-select:invalid ~ .invalid-tooltip,
.custom-select.is-invalid ~ .invalid-feedback,
.custom-select.is-invalid ~ .invalid-tooltip {
  display: block;
}

.was-validated .form-control-file:invalid ~ .invalid-feedback,
.was-validated .form-control-file:invalid ~ .invalid-tooltip,
.form-control-file.is-invalid ~ .invalid-feedback,
.form-control-file.is-invalid ~ .invalid-tooltip {
  display: block;
}

.was-validated .form-check-input:invalid ~ .form-check-label,
.form-check-input.is-invalid ~ .form-check-label {
  color: #e3342f;
}

.was-validated .form-check-input:invalid ~ .invalid-feedback,
.was-validated .form-check-input:invalid ~ .invalid-tooltip,
.form-check-input.is-invalid ~ .invalid-feedback,
.form-check-input.is-invalid ~ .invalid-tooltip {
  display: block;
}

.was-validated .custom-control-input:invalid ~ .custom-control-label,
.custom-control-input.is-invalid ~ .custom-control-label {
  color: #e3342f;
}

.was-validated .custom-control-input:invalid ~ .custom-control-label::before,
.custom-control-input.is-invalid ~ .custom-control-label::before {
  border-color: #e3342f;
}

.was-validated .custom-control-input:invalid ~ .invalid-feedback,
.was-validated .custom-control-input:invalid ~ .invalid-tooltip,
.custom-control-input.is-invalid ~ .invalid-feedback,
.custom-control-input.is-invalid ~ .invalid-tooltip {
  display: block;
}

.was-validated .custom-control-input:invalid:checked ~ .custom-control-label::before,
.custom-control-input.is-invalid:checked ~ .custom-control-label::before {
  border-color: #e9605c;
  background-color: #e9605c;
}

.was-validated .custom-control-input:invalid:focus ~ .custom-control-label::before,
.custom-control-input.is-invalid:focus ~ .custom-control-label::before {
  box-shadow: 0 0 0 0.2rem rgba(227, 52, 47, 0.25);
}

.was-validated .custom-control-input:invalid:focus:not(:checked) ~ .custom-control-label::before,
.custom-control-input.is-invalid:focus:not(:checked) ~ .custom-control-label::before {
  border-color: #e3342f;
}

.was-validated .custom-file-input:invalid ~ .custom-file-label,
.custom-file-input.is-invalid ~ .custom-file-label {
  border-color: #e3342f;
}

.was-validated .custom-file-input:invalid ~ .invalid-feedback,
.was-validated .custom-file-input:invalid ~ .invalid-tooltip,
.custom-file-input.is-invalid ~ .invalid-feedback,
.custom-file-input.is-invalid ~ .invalid-tooltip {
  display: block;
}

.was-validated .custom-file-input:invalid:focus ~ .custom-file-label,
.custom-file-input.is-invalid:focus ~ .custom-file-label {
  border-color: #e3342f;
  box-shadow: 0 0 0 0.2rem rgba(227, 52, 47, 0.25);
}

.form-inline {
  display: flex;
  flex-flow: row wrap;
  align-items: center;
}

.form-inline .form-check {
  width: 100%;
}

@media (min-width: 577px) {
  .form-inline label {
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 0;
  }

  .form-inline .form-group {
    display: flex;
    flex: 0 0 auto;
    flex-flow: row wrap;
    align-items: center;
    margin-bottom: 0;
  }

  .form-inline .form-control {
    display: inline-block;
    width: auto;
    vertical-align: middle;
  }

  .form-inline .form-control-plaintext {
    display: inline-block;
  }

  .form-inline .input-group,
  .form-inline .custom-select {
    width: auto;
  }

  .form-inline .form-check {
    display: flex;
    align-items: center;
    justify-content: center;
    width: auto;
    padding-left: 0;
  }

  .form-inline .form-check-input {
    position: relative;
    flex-shrink: 0;
    margin-top: 0;
    margin-right: 0.25rem;
    margin-left: 0;
  }

  .form-inline .custom-control {
    align-items: center;
    justify-content: center;
  }

  .form-inline .custom-control-label {
    margin-bottom: 0;
  }
}

.btn {
  display: inline-block;
  font-weight: 400;
  color: #212529;
  text-align: center;
  vertical-align: middle;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  background-color: transparent;
  border: 1px solid transparent;
  padding: 0.375rem 0.75rem;
  font-size: 0.9rem;
  line-height: 1.6;
  border-radius: 0.25rem;
  transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}

@media (prefers-reduced-motion: reduce) {
  .btn {
    transition: none;
  }
}

.btn:hover {
  color: #212529;
  text-decoration: none;
}

.btn:focus,
.btn.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(52, 144, 220, 0.25);
}

.btn.disabled,
.btn:disabled {
  opacity: 0.65;
}

a.btn.disabled,
fieldset:disabled a.btn {
  pointer-events: none;
}

.btn-primary {
  color: #fff;
  background-color: #3490dc;
  border-color: #3490dc;
}

.btn-primary:hover {
  color: #fff;
  background-color: #227dc7;
  border-color: #2176bd;
}

.btn-primary:focus,
.btn-primary.focus {
  box-shadow: 0 0 0 0.2rem rgba(82, 161, 225, 0.5);
}

.btn-primary.disabled,
.btn-primary:disabled {
  color: #fff;
  background-color: #3490dc;
  border-color: #3490dc;
}

.btn-primary:not(:disabled):not(.disabled):active,
.btn-primary:not(:disabled):not(.disabled).active,
.show > .btn-primary.dropdown-toggle {
  color: #fff;
  background-color: #2176bd;
  border-color: #1f6fb2;
}

.btn-primary:not(:disabled):not(.disabled):active:focus,
.btn-primary:not(:disabled):not(.disabled).active:focus,
.show > .btn-primary.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(82, 161, 225, 0.5);
}

.btn-secondary {
  color: #fff;
  background-color: #6c757d;
  border-color: #6c757d;
}

.btn-secondary:hover {
  color: #fff;
  background-color: #5a6268;
  border-color: #545b62;
}

.btn-secondary:focus,
.btn-secondary.focus {
  box-shadow: 0 0 0 0.2rem rgba(130, 138, 145, 0.5);
}

.btn-secondary.disabled,
.btn-secondary:disabled {
  color: #fff;
  background-color: #6c757d;
  border-color: #6c757d;
}

.btn-secondary:not(:disabled):not(.disabled):active,
.btn-secondary:not(:disabled):not(.disabled).active,
.show > .btn-secondary.dropdown-toggle {
  color: #fff;
  background-color: #545b62;
  border-color: #4e555b;
}

.btn-secondary:not(:disabled):not(.disabled):active:focus,
.btn-secondary:not(:disabled):not(.disabled).active:focus,
.show > .btn-secondary.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(130, 138, 145, 0.5);
}

.btn-success {
  color: #fff;
  background-color: #38c172;
  border-color: #38c172;
}

.btn-success:hover {
  color: #fff;
  background-color: #2fa360;
  border-color: #2d995b;
}

.btn-success:focus,
.btn-success.focus {
  box-shadow: 0 0 0 0.2rem rgba(86, 202, 135, 0.5);
}

.btn-success.disabled,
.btn-success:disabled {
  color: #fff;
  background-color: #38c172;
  border-color: #38c172;
}

.btn-success:not(:disabled):not(.disabled):active,
.btn-success:not(:disabled):not(.disabled).active,
.show > .btn-success.dropdown-toggle {
  color: #fff;
  background-color: #2d995b;
  border-color: #2a9055;
}

.btn-success:not(:disabled):not(.disabled):active:focus,
.btn-success:not(:disabled):not(.disabled).active:focus,
.show > .btn-success.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(86, 202, 135, 0.5);
}

.btn-info {
  color: #212529;
  background-color: #6cb2eb;
  border-color: #6cb2eb;
}

.btn-info:hover {
  color: #fff;
  background-color: #4aa0e6;
  border-color: #3f9ae5;
}

.btn-info:focus,
.btn-info.focus {
  box-shadow: 0 0 0 0.2rem rgba(97, 157, 206, 0.5);
}

.btn-info.disabled,
.btn-info:disabled {
  color: #212529;
  background-color: #6cb2eb;
  border-color: #6cb2eb;
}

.btn-info:not(:disabled):not(.disabled):active,
.btn-info:not(:disabled):not(.disabled).active,
.show > .btn-info.dropdown-toggle {
  color: #fff;
  background-color: #3f9ae5;
  border-color: #3495e3;
}

.btn-info:not(:disabled):not(.disabled):active:focus,
.btn-info:not(:disabled):not(.disabled).active:focus,
.show > .btn-info.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(97, 157, 206, 0.5);
}

.btn-warning {
  color: #212529;
  background-color: #ffed4a;
  border-color: #ffed4a;
}

.btn-warning:hover {
  color: #212529;
  background-color: #ffe924;
  border-color: #ffe817;
}

.btn-warning:focus,
.btn-warning.focus {
  box-shadow: 0 0 0 0.2rem rgba(222, 207, 69, 0.5);
}

.btn-warning.disabled,
.btn-warning:disabled {
  color: #212529;
  background-color: #ffed4a;
  border-color: #ffed4a;
}

.btn-warning:not(:disabled):not(.disabled):active,
.btn-warning:not(:disabled):not(.disabled).active,
.show > .btn-warning.dropdown-toggle {
  color: #212529;
  background-color: #ffe817;
  border-color: #ffe70a;
}

.btn-warning:not(:disabled):not(.disabled):active:focus,
.btn-warning:not(:disabled):not(.disabled).active:focus,
.show > .btn-warning.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(222, 207, 69, 0.5);
}

.btn-danger {
  color: #fff;
  background-color: #e3342f;
  border-color: #e3342f;
}

.btn-danger:hover {
  color: #fff;
  background-color: #d0211c;
  border-color: #c51f1a;
}

.btn-danger:focus,
.btn-danger.focus {
  box-shadow: 0 0 0 0.2rem rgba(231, 82, 78, 0.5);
}

.btn-danger.disabled,
.btn-danger:disabled {
  color: #fff;
  background-color: #e3342f;
  border-color: #e3342f;
}

.btn-danger:not(:disabled):not(.disabled):active,
.btn-danger:not(:disabled):not(.disabled).active,
.show > .btn-danger.dropdown-toggle {
  color: #fff;
  background-color: #c51f1a;
  border-color: #b91d19;
}

.btn-danger:not(:disabled):not(.disabled):active:focus,
.btn-danger:not(:disabled):not(.disabled).active:focus,
.show > .btn-danger.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(231, 82, 78, 0.5);
}

.btn-light {
  color: #212529;
  background-color: #f8f9fa;
  border-color: #f8f9fa;
}

.btn-light:hover {
  color: #212529;
  background-color: #e2e6ea;
  border-color: #dae0e5;
}

.btn-light:focus,
.btn-light.focus {
  box-shadow: 0 0 0 0.2rem rgba(216, 217, 219, 0.5);
}

.btn-light.disabled,
.btn-light:disabled {
  color: #212529;
  background-color: #f8f9fa;
  border-color: #f8f9fa;
}

.btn-light:not(:disabled):not(.disabled):active,
.btn-light:not(:disabled):not(.disabled).active,
.show > .btn-light.dropdown-toggle {
  color: #212529;
  background-color: #dae0e5;
  border-color: #d3d9df;
}

.btn-light:not(:disabled):not(.disabled):active:focus,
.btn-light:not(:disabled):not(.disabled).active:focus,
.show > .btn-light.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(216, 217, 219, 0.5);
}

.btn-dark {
  color: #fff;
  background-color: #343a40;
  border-color: #343a40;
}

.btn-dark:hover {
  color: #fff;
  background-color: #23272b;
  border-color: #1d2124;
}

.btn-dark:focus,
.btn-dark.focus {
  box-shadow: 0 0 0 0.2rem rgba(82, 88, 93, 0.5);
}

.btn-dark.disabled,
.btn-dark:disabled {
  color: #fff;
  background-color: #343a40;
  border-color: #343a40;
}

.btn-dark:not(:disabled):not(.disabled):active,
.btn-dark:not(:disabled):not(.disabled).active,
.show > .btn-dark.dropdown-toggle {
  color: #fff;
  background-color: #1d2124;
  border-color: #171a1d;
}

.btn-dark:not(:disabled):not(.disabled):active:focus,
.btn-dark:not(:disabled):not(.disabled).active:focus,
.show > .btn-dark.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(82, 88, 93, 0.5);
}

.btn-outline-primary {
  color: #3490dc;
  border-color: #3490dc;
}

.btn-outline-primary:hover {
  color: #fff;
  background-color: #3490dc;
  border-color: #3490dc;
}

.btn-outline-primary:focus,
.btn-outline-primary.focus {
  box-shadow: 0 0 0 0.2rem rgba(52, 144, 220, 0.5);
}

.btn-outline-primary.disabled,
.btn-outline-primary:disabled {
  color: #3490dc;
  background-color: transparent;
}

.btn-outline-primary:not(:disabled):not(.disabled):active,
.btn-outline-primary:not(:disabled):not(.disabled).active,
.show > .btn-outline-primary.dropdown-toggle {
  color: #fff;
  background-color: #3490dc;
  border-color: #3490dc;
}

.btn-outline-primary:not(:disabled):not(.disabled):active:focus,
.btn-outline-primary:not(:disabled):not(.disabled).active:focus,
.show > .btn-outline-primary.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(52, 144, 220, 0.5);
}

.btn-outline-secondary {
  color: #6c757d;
  border-color: #6c757d;
}

.btn-outline-secondary:hover {
  color: #fff;
  background-color: #6c757d;
  border-color: #6c757d;
}

.btn-outline-secondary:focus,
.btn-outline-secondary.focus {
  box-shadow: 0 0 0 0.2rem rgba(108, 117, 125, 0.5);
}

.btn-outline-secondary.disabled,
.btn-outline-secondary:disabled {
  color: #6c757d;
  background-color: transparent;
}

.btn-outline-secondary:not(:disabled):not(.disabled):active,
.btn-outline-secondary:not(:disabled):not(.disabled).active,
.show > .btn-outline-secondary.dropdown-toggle {
  color: #fff;
  background-color: #6c757d;
  border-color: #6c757d;
}

.btn-outline-secondary:not(:disabled):not(.disabled):active:focus,
.btn-outline-secondary:not(:disabled):not(.disabled).active:focus,
.show > .btn-outline-secondary.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(108, 117, 125, 0.5);
}

.btn-outline-success {
  color: #38c172;
  border-color: #38c172;
}

.btn-outline-success:hover {
  color: #fff;
  background-color: #38c172;
  border-color: #38c172;
}

.btn-outline-success:focus,
.btn-outline-success.focus {
  box-shadow: 0 0 0 0.2rem rgba(56, 193, 114, 0.5);
}

.btn-outline-success.disabled,
.btn-outline-success:disabled {
  color: #38c172;
  background-color: transparent;
}

.btn-outline-success:not(:disabled):not(.disabled):active,
.btn-outline-success:not(:disabled):not(.disabled).active,
.show > .btn-outline-success.dropdown-toggle {
  color: #fff;
  background-color: #38c172;
  border-color: #38c172;
}

.btn-outline-success:not(:disabled):not(.disabled):active:focus,
.btn-outline-success:not(:disabled):not(.disabled).active:focus,
.show > .btn-outline-success.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(56, 193, 114, 0.5);
}

.btn-outline-info {
  color: #6cb2eb;
  border-color: #6cb2eb;
}

.btn-outline-info:hover {
  color: #212529;
  background-color: #6cb2eb;
  border-color: #6cb2eb;
}

.btn-outline-info:focus,
.btn-outline-info.focus {
  box-shadow: 0 0 0 0.2rem rgba(108, 178, 235, 0.5);
}

.btn-outline-info.disabled,
.btn-outline-info:disabled {
  color: #6cb2eb;
  background-color: transparent;
}

.btn-outline-info:not(:disabled):not(.disabled):active,
.btn-outline-info:not(:disabled):not(.disabled).active,
.show > .btn-outline-info.dropdown-toggle {
  color: #212529;
  background-color: #6cb2eb;
  border-color: #6cb2eb;
}

.btn-outline-info:not(:disabled):not(.disabled):active:focus,
.btn-outline-info:not(:disabled):not(.disabled).active:focus,
.show > .btn-outline-info.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(108, 178, 235, 0.5);
}

.btn-outline-warning {
  color: #ffed4a;
  border-color: #ffed4a;
}

.btn-outline-warning:hover {
  color: #212529;
  background-color: #ffed4a;
  border-color: #ffed4a;
}

.btn-outline-warning:focus,
.btn-outline-warning.focus {
  box-shadow: 0 0 0 0.2rem rgba(255, 237, 74, 0.5);
}

.btn-outline-warning.disabled,
.btn-outline-warning:disabled {
  color: #ffed4a;
  background-color: transparent;
}

.btn-outline-warning:not(:disabled):not(.disabled):active,
.btn-outline-warning:not(:disabled):not(.disabled).active,
.show > .btn-outline-warning.dropdown-toggle {
  color: #212529;
  background-color: #ffed4a;
  border-color: #ffed4a;
}

.btn-outline-warning:not(:disabled):not(.disabled):active:focus,
.btn-outline-warning:not(:disabled):not(.disabled).active:focus,
.show > .btn-outline-warning.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(255, 237, 74, 0.5);
}

.btn-outline-danger {
  color: #e3342f;
  border-color: #e3342f;
}

.btn-outline-danger:hover {
  color: #fff;
  background-color: #e3342f;
  border-color: #e3342f;
}

.btn-outline-danger:focus,
.btn-outline-danger.focus {
  box-shadow: 0 0 0 0.2rem rgba(227, 52, 47, 0.5);
}

.btn-outline-danger.disabled,
.btn-outline-danger:disabled {
  color: #e3342f;
  background-color: transparent;
}

.btn-outline-danger:not(:disabled):not(.disabled):active,
.btn-outline-danger:not(:disabled):not(.disabled).active,
.show > .btn-outline-danger.dropdown-toggle {
  color: #fff;
  background-color: #e3342f;
  border-color: #e3342f;
}

.btn-outline-danger:not(:disabled):not(.disabled):active:focus,
.btn-outline-danger:not(:disabled):not(.disabled).active:focus,
.show > .btn-outline-danger.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(227, 52, 47, 0.5);
}

.btn-outline-light {
  color: #f8f9fa;
  border-color: #f8f9fa;
}

.btn-outline-light:hover {
  color: #212529;
  background-color: #f8f9fa;
  border-color: #f8f9fa;
}

.btn-outline-light:focus,
.btn-outline-light.focus {
  box-shadow: 0 0 0 0.2rem rgba(248, 249, 250, 0.5);
}

.btn-outline-light.disabled,
.btn-outline-light:disabled {
  color: #f8f9fa;
  background-color: transparent;
}

.btn-outline-light:not(:disabled):not(.disabled):active,
.btn-outline-light:not(:disabled):not(.disabled).active,
.show > .btn-outline-light.dropdown-toggle {
  color: #212529;
  background-color: #f8f9fa;
  border-color: #f8f9fa;
}

.btn-outline-light:not(:disabled):not(.disabled):active:focus,
.btn-outline-light:not(:disabled):not(.disabled).active:focus,
.show > .btn-outline-light.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(248, 249, 250, 0.5);
}

.btn-outline-dark {
  color: #343a40;
  border-color: #343a40;
}

.btn-outline-dark:hover {
  color: #fff;
  background-color: #343a40;
  border-color: #343a40;
}

.btn-outline-dark:focus,
.btn-outline-dark.focus {
  box-shadow: 0 0 0 0.2rem rgba(52, 58, 64, 0.5);
}

.btn-outline-dark.disabled,
.btn-outline-dark:disabled {
  color: #343a40;
  background-color: transparent;
}

.btn-outline-dark:not(:disabled):not(.disabled):active,
.btn-outline-dark:not(:disabled):not(.disabled).active,
.show > .btn-outline-dark.dropdown-toggle {
  color: #fff;
  background-color: #343a40;
  border-color: #343a40;
}

.btn-outline-dark:not(:disabled):not(.disabled):active:focus,
.btn-outline-dark:not(:disabled):not(.disabled).active:focus,
.show > .btn-outline-dark.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(52, 58, 64, 0.5);
}

.btn-link {
  font-weight: 400;
  color: #3490dc;
  text-decoration: none;
}

.btn-link:hover {
  color: #1d68a7;
  text-decoration: underline;
}

.btn-link:focus,
.btn-link.focus {
  text-decoration: underline;
  box-shadow: none;
}

.btn-link:disabled,
.btn-link.disabled {
  color: #6c757d;
  pointer-events: none;
}

.btn-lg,
.btn-group-lg > .btn {
  padding: 0.5rem 1rem;
  font-size: 1.125rem;
  line-height: 1.5;
  border-radius: 0.3rem;
}

.btn-sm,
.btn-group-sm > .btn {
  padding: 0.25rem 0.5rem;
  font-size: 0.7875rem;
  line-height: 1.5;
  border-radius: 0.2rem;
}

.btn-block {
  display: block;
  width: 100%;
}

.btn-block + .btn-block {
  margin-top: 0.5rem;
}

input[type=submit].btn-block,
input[type=reset].btn-block,
input[type=button].btn-block {
  width: 100%;
}

.fade {
  transition: opacity 0.15s linear;
}

@media (prefers-reduced-motion: reduce) {
  .fade {
    transition: none;
  }
}

.fade:not(.show) {
  opacity: 0;
}

.collapse:not(.show) {
  display: none;
}

.collapsing {
  position: relative;
  height: 0;
  overflow: hidden;
  transition: height 0.35s ease;
}

@media (prefers-reduced-motion: reduce) {
  .collapsing {
    transition: none;
  }
}

.dropup,
.dropright,
.dropdown,
.dropleft {
  position: relative;
}

.dropdown-toggle {
  white-space: nowrap;
}

.dropdown-toggle::after {
  display: inline-block;
  margin-left: 0.255em;
  vertical-align: 0.255em;
  content: "";
  border-top: 0.3em solid;
  border-right: 0.3em solid transparent;
  border-bottom: 0;
  border-left: 0.3em solid transparent;
}

.dropdown-toggle:empty::after {
  margin-left: 0;
}

.dropdown-menu {
  position: absolute;
  top: 100%;
  left: 0;
  z-index: 1000;
  display: none;
  float: left;
  min-width: 10rem;
  padding: 0.5rem 0;
  margin: 0.125rem 0 0;
  font-size: 0.9rem;
  color: #212529;
  text-align: left;
  list-style: none;
  background-color: #fff;
  background-clip: padding-box;
  border: 1px solid rgba(0, 0, 0, 0.15);
  border-radius: 0.25rem;
}

.dropdown-menu-left {
  right: auto;
  left: 0;
}

.dropdown-menu-right {
  right: 0;
  left: auto;
}

@media (min-width: 577px) {
  .dropdown-menu-sm-left {
    right: auto;
    left: 0;
  }

  .dropdown-menu-sm-right {
    right: 0;
    left: auto;
  }
}

@media (min-width: 769px) {
  .dropdown-menu-md-left {
    right: auto;
    left: 0;
  }

  .dropdown-menu-md-right {
    right: 0;
    left: auto;
  }
}

@media (min-width: 1024px) {
  .dropdown-menu-lg-left {
    right: auto;
    left: 0;
  }

  .dropdown-menu-lg-right {
    right: 0;
    left: auto;
  }
}

@media (min-width: 1281px) {
  .dropdown-menu-xl-left {
    right: auto;
    left: 0;
  }

  .dropdown-menu-xl-right {
    right: 0;
    left: auto;
  }
}

.dropup .dropdown-menu {
  top: auto;
  bottom: 100%;
  margin-top: 0;
  margin-bottom: 0.125rem;
}

.dropup .dropdown-toggle::after {
  display: inline-block;
  margin-left: 0.255em;
  vertical-align: 0.255em;
  content: "";
  border-top: 0;
  border-right: 0.3em solid transparent;
  border-bottom: 0.3em solid;
  border-left: 0.3em solid transparent;
}

.dropup .dropdown-toggle:empty::after {
  margin-left: 0;
}

.dropright .dropdown-menu {
  top: 0;
  right: auto;
  left: 100%;
  margin-top: 0;
  margin-left: 0.125rem;
}

.dropright .dropdown-toggle::after {
  display: inline-block;
  margin-left: 0.255em;
  vertical-align: 0.255em;
  content: "";
  border-top: 0.3em solid transparent;
  border-right: 0;
  border-bottom: 0.3em solid transparent;
  border-left: 0.3em solid;
}

.dropright .dropdown-toggle:empty::after {
  margin-left: 0;
}

.dropright .dropdown-toggle::after {
  vertical-align: 0;
}

.dropleft .dropdown-menu {
  top: 0;
  right: 100%;
  left: auto;
  margin-top: 0;
  margin-right: 0.125rem;
}

.dropleft .dropdown-toggle::after {
  display: inline-block;
  margin-left: 0.255em;
  vertical-align: 0.255em;
  content: "";
}

.dropleft .dropdown-toggle::after {
  display: none;
}

.dropleft .dropdown-toggle::before {
  display: inline-block;
  margin-right: 0.255em;
  vertical-align: 0.255em;
  content: "";
  border-top: 0.3em solid transparent;
  border-right: 0.3em solid;
  border-bottom: 0.3em solid transparent;
}

.dropleft .dropdown-toggle:empty::after {
  margin-left: 0;
}

.dropleft .dropdown-toggle::before {
  vertical-align: 0;
}

.dropdown-menu[x-placement^=top],
.dropdown-menu[x-placement^=right],
.dropdown-menu[x-placement^=bottom],
.dropdown-menu[x-placement^=left] {
  right: auto;
  bottom: auto;
}

.dropdown-divider {
  height: 0;
  margin: 0.5rem 0;
  overflow: hidden;
  border-top: 1px solid #e9ecef;
}

.dropdown-item {
  display: block;
  width: 100%;
  padding: 0.25rem 1.5rem;
  clear: both;
  font-weight: 400;
  color: #212529;
  text-align: inherit;
  white-space: nowrap;
  background-color: transparent;
  border: 0;
}

.dropdown-item:hover,
.dropdown-item:focus {
  color: #16181b;
  text-decoration: none;
  background-color: #f8f9fa;
}

.dropdown-item.active,
.dropdown-item:active {
  color: #fff;
  text-decoration: none;
  background-color: #3490dc;
}

.dropdown-item.disabled,
.dropdown-item:disabled {
  color: #6c757d;
  pointer-events: none;
  background-color: transparent;
}

.dropdown-menu.show {
  display: block;
}

.dropdown-header {
  display: block;
  padding: 0.5rem 1.5rem;
  margin-bottom: 0;
  font-size: 0.7875rem;
  color: #6c757d;
  white-space: nowrap;
}

.dropdown-item-text {
  display: block;
  padding: 0.25rem 1.5rem;
  color: #212529;
}

.btn-group,
.btn-group-vertical {
  position: relative;
  display: inline-flex;
  vertical-align: middle;
}

.btn-group > .btn,
.btn-group-vertical > .btn {
  position: relative;
  flex: 1 1 auto;
}

.btn-group > .btn:hover,
.btn-group-vertical > .btn:hover {
  z-index: 1;
}

.btn-group > .btn:focus,
.btn-group > .btn:active,
.btn-group > .btn.active,
.btn-group-vertical > .btn:focus,
.btn-group-vertical > .btn:active,
.btn-group-vertical > .btn.active {
  z-index: 1;
}

.btn-toolbar {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
}

.btn-toolbar .input-group {
  width: auto;
}

.btn-group > .btn:not(:first-child),
.btn-group > .btn-group:not(:first-child) {
  margin-left: -1px;
}

.btn-group > .btn:not(:last-child):not(.dropdown-toggle),
.btn-group > .btn-group:not(:last-child) > .btn {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}

.btn-group > .btn:not(:first-child),
.btn-group > .btn-group:not(:first-child) > .btn {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}

.dropdown-toggle-split {
  padding-right: 0.5625rem;
  padding-left: 0.5625rem;
}

.dropdown-toggle-split::after,
.dropup .dropdown-toggle-split::after,
.dropright .dropdown-toggle-split::after {
  margin-left: 0;
}

.dropleft .dropdown-toggle-split::before {
  margin-right: 0;
}

.btn-sm + .dropdown-toggle-split,
.btn-group-sm > .btn + .dropdown-toggle-split {
  padding-right: 0.375rem;
  padding-left: 0.375rem;
}

.btn-lg + .dropdown-toggle-split,
.btn-group-lg > .btn + .dropdown-toggle-split {
  padding-right: 0.75rem;
  padding-left: 0.75rem;
}

.btn-group-vertical {
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
}

.btn-group-vertical > .btn,
.btn-group-vertical > .btn-group {
  width: 100%;
}

.btn-group-vertical > .btn:not(:first-child),
.btn-group-vertical > .btn-group:not(:first-child) {
  margin-top: -1px;
}

.btn-group-vertical > .btn:not(:last-child):not(.dropdown-toggle),
.btn-group-vertical > .btn-group:not(:last-child) > .btn {
  border-bottom-right-radius: 0;
  border-bottom-left-radius: 0;
}

.btn-group-vertical > .btn:not(:first-child),
.btn-group-vertical > .btn-group:not(:first-child) > .btn {
  border-top-left-radius: 0;
  border-top-right-radius: 0;
}

.btn-group-toggle > .btn,
.btn-group-toggle > .btn-group > .btn {
  margin-bottom: 0;
}

.btn-group-toggle > .btn input[type=radio],
.btn-group-toggle > .btn input[type=checkbox],
.btn-group-toggle > .btn-group > .btn input[type=radio],
.btn-group-toggle > .btn-group > .btn input[type=checkbox] {
  position: absolute;
  clip: rect(0, 0, 0, 0);
  pointer-events: none;
}

.input-group {
  position: relative;
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  width: 100%;
}

.input-group > .form-control,
.input-group > .form-control-plaintext,
.input-group > .custom-select,
.input-group > .custom-file {
  position: relative;
  flex: 1 1 auto;
  width: 1%;
  margin-bottom: 0;
}

.input-group > .form-control + .form-control,
.input-group > .form-control + .custom-select,
.input-group > .form-control + .custom-file,
.input-group > .form-control-plaintext + .form-control,
.input-group > .form-control-plaintext + .custom-select,
.input-group > .form-control-plaintext + .custom-file,
.input-group > .custom-select + .form-control,
.input-group > .custom-select + .custom-select,
.input-group > .custom-select + .custom-file,
.input-group > .custom-file + .form-control,
.input-group > .custom-file + .custom-select,
.input-group > .custom-file + .custom-file {
  margin-left: -1px;
}

.input-group > .form-control:focus,
.input-group > .custom-select:focus,
.input-group > .custom-file .custom-file-input:focus ~ .custom-file-label {
  z-index: 3;
}

.input-group > .custom-file .custom-file-input:focus {
  z-index: 4;
}

.input-group > .form-control:not(:last-child),
.input-group > .custom-select:not(:last-child) {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}

.input-group > .form-control:not(:first-child),
.input-group > .custom-select:not(:first-child) {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}

.input-group > .custom-file {
  display: flex;
  align-items: center;
}

.input-group > .custom-file:not(:last-child) .custom-file-label,
.input-group > .custom-file:not(:last-child) .custom-file-label::after {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}

.input-group > .custom-file:not(:first-child) .custom-file-label {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}

.input-group-prepend,
.input-group-append {
  display: flex;
}

.input-group-prepend .btn,
.input-group-append .btn {
  position: relative;
  z-index: 2;
}

.input-group-prepend .btn:focus,
.input-group-append .btn:focus {
  z-index: 3;
}

.input-group-prepend .btn + .btn,
.input-group-prepend .btn + .input-group-text,
.input-group-prepend .input-group-text + .input-group-text,
.input-group-prepend .input-group-text + .btn,
.input-group-append .btn + .btn,
.input-group-append .btn + .input-group-text,
.input-group-append .input-group-text + .input-group-text,
.input-group-append .input-group-text + .btn {
  margin-left: -1px;
}

.input-group-prepend {
  margin-right: -1px;
}

.input-group-append {
  margin-left: -1px;
}

.input-group-text {
  display: flex;
  align-items: center;
  padding: 0.375rem 0.75rem;
  margin-bottom: 0;
  font-size: 0.9rem;
  font-weight: 400;
  line-height: 1.6;
  color: #495057;
  text-align: center;
  white-space: nowrap;
  background-color: #e9ecef;
  border: 1px solid #ced4da;
  border-radius: 0.25rem;
}

.input-group-text input[type=radio],
.input-group-text input[type=checkbox] {
  margin-top: 0;
}

.input-group-lg > .form-control:not(textarea),
.input-group-lg > .custom-select {
  height: calc(1.5em + 1rem + 2px);
}

.input-group-lg > .form-control,
.input-group-lg > .custom-select,
.input-group-lg > .input-group-prepend > .input-group-text,
.input-group-lg > .input-group-append > .input-group-text,
.input-group-lg > .input-group-prepend > .btn,
.input-group-lg > .input-group-append > .btn {
  padding: 0.5rem 1rem;
  font-size: 1.125rem;
  line-height: 1.5;
  border-radius: 0.3rem;
}

.input-group-sm > .form-control:not(textarea),
.input-group-sm > .custom-select {
  height: calc(1.5em + 0.5rem + 2px);
}

.input-group-sm > .form-control,
.input-group-sm > .custom-select,
.input-group-sm > .input-group-prepend > .input-group-text,
.input-group-sm > .input-group-append > .input-group-text,
.input-group-sm > .input-group-prepend > .btn,
.input-group-sm > .input-group-append > .btn {
  padding: 0.25rem 0.5rem;
  font-size: 0.7875rem;
  line-height: 1.5;
  border-radius: 0.2rem;
}

.input-group-lg > .custom-select,
.input-group-sm > .custom-select {
  padding-right: 1.75rem;
}

.input-group > .input-group-prepend > .btn,
.input-group > .input-group-prepend > .input-group-text,
.input-group > .input-group-append:not(:last-child) > .btn,
.input-group > .input-group-append:not(:last-child) > .input-group-text,
.input-group > .input-group-append:last-child > .btn:not(:last-child):not(.dropdown-toggle),
.input-group > .input-group-append:last-child > .input-group-text:not(:last-child) {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}

.input-group > .input-group-append > .btn,
.input-group > .input-group-append > .input-group-text,
.input-group > .input-group-prepend:not(:first-child) > .btn,
.input-group > .input-group-prepend:not(:first-child) > .input-group-text,
.input-group > .input-group-prepend:first-child > .btn:not(:first-child),
.input-group > .input-group-prepend:first-child > .input-group-text:not(:first-child) {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}

.custom-control {
  position: relative;
  display: block;
  min-height: 1.44rem;
  padding-left: 1.5rem;
}

.custom-control-inline {
  display: inline-flex;
  margin-right: 1rem;
}

.custom-control-input {
  position: absolute;
  z-index: -1;
  opacity: 0;
}

.custom-control-input:checked ~ .custom-control-label::before {
  color: #fff;
  border-color: #3490dc;
  background-color: #3490dc;
}

.custom-control-input:focus ~ .custom-control-label::before {
  box-shadow: 0 0 0 0.2rem rgba(52, 144, 220, 0.25);
}

.custom-control-input:focus:not(:checked) ~ .custom-control-label::before {
  border-color: #a1cbef;
}

.custom-control-input:not(:disabled):active ~ .custom-control-label::before {
  color: #fff;
  background-color: #cce3f6;
  border-color: #cce3f6;
}

.custom-control-input:disabled ~ .custom-control-label {
  color: #6c757d;
}

.custom-control-input:disabled ~ .custom-control-label::before {
  background-color: #e9ecef;
}

.custom-control-label {
  position: relative;
  margin-bottom: 0;
  vertical-align: top;
}

.custom-control-label::before {
  position: absolute;
  top: 0.22rem;
  left: -1.5rem;
  display: block;
  width: 1rem;
  height: 1rem;
  pointer-events: none;
  content: "";
  background-color: #fff;
  border: #adb5bd solid 1px;
}

.custom-control-label::after {
  position: absolute;
  top: 0.22rem;
  left: -1.5rem;
  display: block;
  width: 1rem;
  height: 1rem;
  content: "";
  background: no-repeat 50%/50% 50%;
}

.custom-checkbox .custom-control-label::before {
  border-radius: 0.25rem;
}

.custom-checkbox .custom-control-input:checked ~ .custom-control-label::after {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%23fff' d='M6.564.75l-3.59 3.612-1.538-1.55L0 4.26 2.974 7.25 8 2.193z'/%3e%3c/svg%3e");
}

.custom-checkbox .custom-control-input:indeterminate ~ .custom-control-label::before {
  border-color: #3490dc;
  background-color: #3490dc;
}

.custom-checkbox .custom-control-input:indeterminate ~ .custom-control-label::after {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 4 4'%3e%3cpath stroke='%23fff' d='M0 2h4'/%3e%3c/svg%3e");
}

.custom-checkbox .custom-control-input:disabled:checked ~ .custom-control-label::before {
  background-color: rgba(52, 144, 220, 0.5);
}

.custom-checkbox .custom-control-input:disabled:indeterminate ~ .custom-control-label::before {
  background-color: rgba(52, 144, 220, 0.5);
}

.custom-radio .custom-control-label::before {
  border-radius: 50%;
}

.custom-radio .custom-control-input:checked ~ .custom-control-label::after {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%23fff'/%3e%3c/svg%3e");
}

.custom-radio .custom-control-input:disabled:checked ~ .custom-control-label::before {
  background-color: rgba(52, 144, 220, 0.5);
}

.custom-switch {
  padding-left: 2.25rem;
}

.custom-switch .custom-control-label::before {
  left: -2.25rem;
  width: 1.75rem;
  pointer-events: all;
  border-radius: 0.5rem;
}

.custom-switch .custom-control-label::after {
  top: calc(0.22rem + 2px);
  left: calc(-2.25rem + 2px);
  width: calc(1rem - 4px);
  height: calc(1rem - 4px);
  background-color: #adb5bd;
  border-radius: 0.5rem;
  transition: transform 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}

@media (prefers-reduced-motion: reduce) {
  .custom-switch .custom-control-label::after {
    transition: none;
  }
}

.custom-switch .custom-control-input:checked ~ .custom-control-label::after {
  background-color: #fff;
  transform: translateX(0.75rem);
}

.custom-switch .custom-control-input:disabled:checked ~ .custom-control-label::before {
  background-color: rgba(52, 144, 220, 0.5);
}

.custom-select {
  display: inline-block;
  width: 100%;
  height: calc(1.6em + 0.75rem + 2px);
  padding: 0.375rem 1.75rem 0.375rem 0.75rem;
  font-size: 0.9rem;
  font-weight: 400;
  line-height: 1.6;
  color: #495057;
  vertical-align: middle;
  background: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 4 5'%3e%3cpath fill='%23343a40' d='M2 0L0 2h4zm0 5L0 3h4z'/%3e%3c/svg%3e") no-repeat right 0.75rem center/8px 10px;
  background-color: #fff;
  border: 1px solid #ced4da;
  border-radius: 0.25rem;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}

.custom-select:focus {
  border-color: #a1cbef;
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(52, 144, 220, 0.25);
}

.custom-select:focus::-ms-value {
  color: #495057;
  background-color: #fff;
}

.custom-select[multiple],
.custom-select[size]:not([size="1"]) {
  height: auto;
  padding-right: 0.75rem;
  background-image: none;
}

.custom-select:disabled {
  color: #6c757d;
  background-color: #e9ecef;
}

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

.custom-select-sm {
  height: calc(1.5em + 0.5rem + 2px);
  padding-top: 0.25rem;
  padding-bottom: 0.25rem;
  padding-left: 0.5rem;
  font-size: 0.7875rem;
}

.custom-select-lg {
  height: calc(1.5em + 1rem + 2px);
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
  padding-left: 1rem;
  font-size: 1.125rem;
}

.custom-file {
  position: relative;
  display: inline-block;
  width: 100%;
  height: calc(1.6em + 0.75rem + 2px);
  margin-bottom: 0;
}

.custom-file-input {
  position: relative;
  z-index: 2;
  width: 100%;
  height: calc(1.6em + 0.75rem + 2px);
  margin: 0;
  opacity: 0;
}

.custom-file-input:focus ~ .custom-file-label {
  border-color: #a1cbef;
  box-shadow: 0 0 0 0.2rem rgba(52, 144, 220, 0.25);
}

.custom-file-input:disabled ~ .custom-file-label {
  background-color: #e9ecef;
}

.custom-file-input:lang(en) ~ .custom-file-label::after {
  content: "Browse";
}

.custom-file-input ~ .custom-file-label[data-browse]::after {
  content: attr(data-browse);
}

.custom-file-label {
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  z-index: 1;
  height: calc(1.6em + 0.75rem + 2px);
  padding: 0.375rem 0.75rem;
  font-weight: 400;
  line-height: 1.6;
  color: #495057;
  background-color: #fff;
  border: 1px solid #ced4da;
  border-radius: 0.25rem;
}

.custom-file-label::after {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  z-index: 3;
  display: block;
  height: calc(1.6em + 0.75rem);
  padding: 0.375rem 0.75rem;
  line-height: 1.6;
  color: #495057;
  content: "Browse";
  background-color: #e9ecef;
  border-left: inherit;
  border-radius: 0 0.25rem 0.25rem 0;
}

.custom-range {
  width: 100%;
  height: calc(1rem + 0.4rem);
  padding: 0;
  background-color: transparent;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}

.custom-range:focus {
  outline: none;
}

.custom-range:focus::-webkit-slider-thumb {
  box-shadow: 0 0 0 1px #f8fafc, 0 0 0 0.2rem rgba(52, 144, 220, 0.25);
}

.custom-range:focus::-moz-range-thumb {
  box-shadow: 0 0 0 1px #f8fafc, 0 0 0 0.2rem rgba(52, 144, 220, 0.25);
}

.custom-range:focus::-ms-thumb {
  box-shadow: 0 0 0 1px #f8fafc, 0 0 0 0.2rem rgba(52, 144, 220, 0.25);
}

.custom-range::-moz-focus-outer {
  border: 0;
}

.custom-range::-webkit-slider-thumb {
  width: 1rem;
  height: 1rem;
  margin-top: -0.25rem;
  background-color: #3490dc;
  border: 0;
  border-radius: 1rem;
  transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
  -webkit-appearance: none;
          appearance: none;
}

@media (prefers-reduced-motion: reduce) {
  .custom-range::-webkit-slider-thumb {
    transition: none;
  }
}

.custom-range::-webkit-slider-thumb:active {
  background-color: #cce3f6;
}

.custom-range::-webkit-slider-runnable-track {
  width: 100%;
  height: 0.5rem;
  color: transparent;
  cursor: pointer;
  background-color: #dee2e6;
  border-color: transparent;
  border-radius: 1rem;
}

.custom-range::-moz-range-thumb {
  width: 1rem;
  height: 1rem;
  background-color: #3490dc;
  border: 0;
  border-radius: 1rem;
  transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
  -moz-appearance: none;
       appearance: none;
}

@media (prefers-reduced-motion: reduce) {
  .custom-range::-moz-range-thumb {
    transition: none;
  }
}

.custom-range::-moz-range-thumb:active {
  background-color: #cce3f6;
}

.custom-range::-moz-range-track {
  width: 100%;
  height: 0.5rem;
  color: transparent;
  cursor: pointer;
  background-color: #dee2e6;
  border-color: transparent;
  border-radius: 1rem;
}

.custom-range::-ms-thumb {
  width: 1rem;
  height: 1rem;
  margin-top: 0;
  margin-right: 0.2rem;
  margin-left: 0.2rem;
  background-color: #3490dc;
  border: 0;
  border-radius: 1rem;
  transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
  appearance: none;
}

@media (prefers-reduced-motion: reduce) {
  .custom-range::-ms-thumb {
    transition: none;
  }
}

.custom-range::-ms-thumb:active {
  background-color: #cce3f6;
}

.custom-range::-ms-track {
  width: 100%;
  height: 0.5rem;
  color: transparent;
  cursor: pointer;
  background-color: transparent;
  border-color: transparent;
  border-width: 0.5rem;
}

.custom-range::-ms-fill-lower {
  background-color: #dee2e6;
  border-radius: 1rem;
}

.custom-range::-ms-fill-upper {
  margin-right: 15px;
  background-color: #dee2e6;
  border-radius: 1rem;
}

.custom-range:disabled::-webkit-slider-thumb {
  background-color: #adb5bd;
}

.custom-range:disabled::-webkit-slider-runnable-track {
  cursor: default;
}

.custom-range:disabled::-moz-range-thumb {
  background-color: #adb5bd;
}

.custom-range:disabled::-moz-range-track {
  cursor: default;
}

.custom-range:disabled::-ms-thumb {
  background-color: #adb5bd;
}

.custom-control-label::before,
.custom-file-label,
.custom-select {
  transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}

@media (prefers-reduced-motion: reduce) {
  .custom-control-label::before,
  .custom-file-label,
  .custom-select {
    transition: none;
  }
}

.nav {
  display: flex;
  flex-wrap: wrap;
  padding-left: 0;
  margin-bottom: 0;
  list-style: none;
}

.nav-link {
  display: block;
  padding: 0.5rem 1rem;
}

.nav-link:hover,
.nav-link:focus {
  text-decoration: none;
}

.nav-link.disabled {
  color: #6c757d;
  pointer-events: none;
  cursor: default;
}

.nav-tabs {
  border-bottom: 1px solid #dee2e6;
}

.nav-tabs .nav-item {
  margin-bottom: -1px;
}

.nav-tabs .nav-link {
  border: 1px solid transparent;
  border-top-left-radius: 0.25rem;
  border-top-right-radius: 0.25rem;
}

.nav-tabs .nav-link:hover,
.nav-tabs .nav-link:focus {
  border-color: #e9ecef #e9ecef #dee2e6;
}

.nav-tabs .nav-link.disabled {
  color: #6c757d;
  background-color: transparent;
  border-color: transparent;
}

.nav-tabs .nav-link.active,
.nav-tabs .nav-item.show .nav-link {
  color: #495057;
  background-color: #f8fafc;
  border-color: #dee2e6 #dee2e6 #f8fafc;
}

.nav-tabs .dropdown-menu {
  margin-top: -1px;
  border-top-left-radius: 0;
  border-top-right-radius: 0;
}

.nav-pills .nav-link {
  border-radius: 0.25rem;
}

.nav-pills .nav-link.active,
.nav-pills .show > .nav-link {
  color: #fff;
  background-color: #3490dc;
}

.nav-fill .nav-item {
  flex: 1 1 auto;
  text-align: center;
}

.nav-justified .nav-item {
  flex-basis: 0;
  flex-grow: 1;
  text-align: center;
}

.tab-content > .tab-pane {
  display: none;
}

.tab-content > .active {
  display: block;
}

.navbar {
  position: relative;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  padding: 0.5rem 1rem;
}

.navbar > .container,
.navbar > .container-fluid {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
}

.navbar-brand {
  display: inline-block;
  padding-top: 0.32rem;
  padding-bottom: 0.32rem;
  margin-right: 1rem;
  font-size: 1.125rem;
  line-height: inherit;
  white-space: nowrap;
}

.navbar-brand:hover,
.navbar-brand:focus {
  text-decoration: none;
}

.navbar-nav {
  display: flex;
  flex-direction: column;
  padding-left: 0;
  margin-bottom: 0;
  list-style: none;
}

.navbar-nav .nav-link {
  padding-right: 0;
  padding-left: 0;
}

.navbar-nav .dropdown-menu {
  position: static;
  float: none;
}

.navbar-text {
  display: inline-block;
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
}

.navbar-collapse {
  flex-basis: 100%;
  flex-grow: 1;
  align-items: center;
}

.navbar-toggler {
  padding: 0.25rem 0.75rem;
  font-size: 1.125rem;
  line-height: 1;
  background-color: transparent;
  border: 1px solid transparent;
  border-radius: 0.25rem;
}

.navbar-toggler:hover,
.navbar-toggler:focus {
  text-decoration: none;
}

.navbar-toggler-icon {
  display: inline-block;
  width: 1.5em;
  height: 1.5em;
  vertical-align: middle;
  content: "";
  background: no-repeat center center;
  background-size: 100% 100%;
}

@media (max-width: 576.98px) {
  .navbar-expand-sm > .container,
  .navbar-expand-sm > .container-fluid {
    padding-right: 0;
    padding-left: 0;
  }
}

@media (min-width: 577px) {
  .navbar-expand-sm {
    flex-flow: row nowrap;
    justify-content: flex-start;
  }

  .navbar-expand-sm .navbar-nav {
    flex-direction: row;
  }

  .navbar-expand-sm .navbar-nav .dropdown-menu {
    position: absolute;
  }

  .navbar-expand-sm .navbar-nav .nav-link {
    padding-right: 0.5rem;
    padding-left: 0.5rem;
  }

  .navbar-expand-sm > .container,
  .navbar-expand-sm > .container-fluid {
    flex-wrap: nowrap;
  }

  .navbar-expand-sm .navbar-collapse {
    display: flex !important;
    flex-basis: auto;
  }

  .navbar-expand-sm .navbar-toggler {
    display: none;
  }
}

@media (max-width: 768.98px) {
  .navbar-expand-md > .container,
  .navbar-expand-md > .container-fluid {
    padding-right: 0;
    padding-left: 0;
  }
}

@media (min-width: 769px) {
  .navbar-expand-md {
    flex-flow: row nowrap;
    justify-content: flex-start;
  }

  .navbar-expand-md .navbar-nav {
    flex-direction: row;
  }

  .navbar-expand-md .navbar-nav .dropdown-menu {
    position: absolute;
  }

  .navbar-expand-md .navbar-nav .nav-link {
    padding-right: 0.5rem;
    padding-left: 0.5rem;
  }

  .navbar-expand-md > .container,
  .navbar-expand-md > .container-fluid {
    flex-wrap: nowrap;
  }

  .navbar-expand-md .navbar-collapse {
    display: flex !important;
    flex-basis: auto;
  }

  .navbar-expand-md .navbar-toggler {
    display: none;
  }
}

@media (max-width: 1023.98px) {
  .navbar-expand-lg > .container,
  .navbar-expand-lg > .container-fluid {
    padding-right: 0;
    padding-left: 0;
  }
}

@media (min-width: 1024px) {
  .navbar-expand-lg {
    flex-flow: row nowrap;
    justify-content: flex-start;
  }

  .navbar-expand-lg .navbar-nav {
    flex-direction: row;
  }

  .navbar-expand-lg .navbar-nav .dropdown-menu {
    position: absolute;
  }

  .navbar-expand-lg .navbar-nav .nav-link {
    padding-right: 0.5rem;
    padding-left: 0.5rem;
  }

  .navbar-expand-lg > .container,
  .navbar-expand-lg > .container-fluid {
    flex-wrap: nowrap;
  }

  .navbar-expand-lg .navbar-collapse {
    display: flex !important;
    flex-basis: auto;
  }

  .navbar-expand-lg .navbar-toggler {
    display: none;
  }
}

@media (max-width: 1280.98px) {
  .navbar-expand-xl > .container,
  .navbar-expand-xl > .container-fluid {
    padding-right: 0;
    padding-left: 0;
  }
}

@media (min-width: 1281px) {
  .navbar-expand-xl {
    flex-flow: row nowrap;
    justify-content: flex-start;
  }

  .navbar-expand-xl .navbar-nav {
    flex-direction: row;
  }

  .navbar-expand-xl .navbar-nav .dropdown-menu {
    position: absolute;
  }

  .navbar-expand-xl .navbar-nav .nav-link {
    padding-right: 0.5rem;
    padding-left: 0.5rem;
  }

  .navbar-expand-xl > .container,
  .navbar-expand-xl > .container-fluid {
    flex-wrap: nowrap;
  }

  .navbar-expand-xl .navbar-collapse {
    display: flex !important;
    flex-basis: auto;
  }

  .navbar-expand-xl .navbar-toggler {
    display: none;
  }
}

.navbar-expand {
  flex-flow: row nowrap;
  justify-content: flex-start;
}

.navbar-expand > .container,
.navbar-expand > .container-fluid {
  padding-right: 0;
  padding-left: 0;
}

.navbar-expand .navbar-nav {
  flex-direction: row;
}

.navbar-expand .navbar-nav .dropdown-menu {
  position: absolute;
}

.navbar-expand .navbar-nav .nav-link {
  padding-right: 0.5rem;
  padding-left: 0.5rem;
}

.navbar-expand > .container,
.navbar-expand > .container-fluid {
  flex-wrap: nowrap;
}

.navbar-expand .navbar-collapse {
  display: flex !important;
  flex-basis: auto;
}

.navbar-expand .navbar-toggler {
  display: none;
}

.navbar-light .navbar-brand {
  color: rgba(0, 0, 0, 0.9);
}

.navbar-light .navbar-brand:hover,
.navbar-light .navbar-brand:focus {
  color: rgba(0, 0, 0, 0.9);
}

.navbar-light .navbar-nav .nav-link {
  color: rgba(0, 0, 0, 0.5);
}

.navbar-light .navbar-nav .nav-link:hover,
.navbar-light .navbar-nav .nav-link:focus {
  color: rgba(0, 0, 0, 0.7);
}

.navbar-light .navbar-nav .nav-link.disabled {
  color: rgba(0, 0, 0, 0.3);
}

.navbar-light .navbar-nav .show > .nav-link,
.navbar-light .navbar-nav .active > .nav-link,
.navbar-light .navbar-nav .nav-link.show,
.navbar-light .navbar-nav .nav-link.active {
  color: rgba(0, 0, 0, 0.9);
}

.navbar-light .navbar-toggler {
  color: rgba(0, 0, 0, 0.5);
  border-color: rgba(0, 0, 0, 0.1);
}

.navbar-light .navbar-toggler-icon {
  background-image: url("data:image/svg+xml,%3csvg viewBox='0 0 30 30' xmlns='http://www.w3.org/2000/svg'%3e%3cpath stroke='rgba(0, 0, 0, 0.5)' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
}

.navbar-light .navbar-text {
  color: rgba(0, 0, 0, 0.5);
}

.navbar-light .navbar-text a {
  color: rgba(0, 0, 0, 0.9);
}

.navbar-light .navbar-text a:hover,
.navbar-light .navbar-text a:focus {
  color: rgba(0, 0, 0, 0.9);
}

.navbar-dark .navbar-brand {
  color: #fff;
}

.navbar-dark .navbar-brand:hover,
.navbar-dark .navbar-brand:focus {
  color: #fff;
}

.navbar-dark .navbar-nav .nav-link {
  color: rgba(255, 255, 255, 0.5);
}

.navbar-dark .navbar-nav .nav-link:hover,
.navbar-dark .navbar-nav .nav-link:focus {
  color: rgba(255, 255, 255, 0.75);
}

.navbar-dark .navbar-nav .nav-link.disabled {
  color: rgba(255, 255, 255, 0.25);
}

.navbar-dark .navbar-nav .show > .nav-link,
.navbar-dark .navbar-nav .active > .nav-link,
.navbar-dark .navbar-nav .nav-link.show,
.navbar-dark .navbar-nav .nav-link.active {
  color: #fff;
}

.navbar-dark .navbar-toggler {
  color: rgba(255, 255, 255, 0.5);
  border-color: rgba(255, 255, 255, 0.1);
}

.navbar-dark .navbar-toggler-icon {
  background-image: url("data:image/svg+xml,%3csvg viewBox='0 0 30 30' xmlns='http://www.w3.org/2000/svg'%3e%3cpath stroke='rgba(255, 255, 255, 0.5)' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
}

.navbar-dark .navbar-text {
  color: rgba(255, 255, 255, 0.5);
}

.navbar-dark .navbar-text a {
  color: #fff;
}

.navbar-dark .navbar-text a:hover,
.navbar-dark .navbar-text a:focus {
  color: #fff;
}

.card {
  position: relative;
  display: flex;
  flex-direction: column;
  min-width: 0;
  word-wrap: break-word;
  background-color: #fff;
  background-clip: border-box;
  border: 1px solid rgba(0, 0, 0, 0.125);
  border-radius: 0.25rem;
}

.card > hr {
  margin-right: 0;
  margin-left: 0;
}

.card > .list-group:first-child .list-group-item:first-child {
  border-top-left-radius: 0.25rem;
  border-top-right-radius: 0.25rem;
}

.card > .list-group:last-child .list-group-item:last-child {
  border-bottom-right-radius: 0.25rem;
  border-bottom-left-radius: 0.25rem;
}

.card-body {
  flex: 1 1 auto;
  padding: 1.25rem;
}

.card-title {
  margin-bottom: 0.75rem;
}

.card-subtitle {
  margin-top: -0.375rem;
  margin-bottom: 0;
}

.card-text:last-child {
  margin-bottom: 0;
}

.card-link:hover {
  text-decoration: none;
}

.card-link + .card-link {
  margin-left: 1.25rem;
}

.card-header {
  padding: 0.75rem 1.25rem;
  margin-bottom: 0;
  background-color: rgba(0, 0, 0, 0.03);
  border-bottom: 1px solid rgba(0, 0, 0, 0.125);
}

.card-header:first-child {
  border-radius: calc(0.25rem - 1px) calc(0.25rem - 1px) 0 0;
}

.card-header + .list-group .list-group-item:first-child {
  border-top: 0;
}

.card-footer {
  padding: 0.75rem 1.25rem;
  background-color: rgba(0, 0, 0, 0.03);
  border-top: 1px solid rgba(0, 0, 0, 0.125);
}

.card-footer:last-child {
  border-radius: 0 0 calc(0.25rem - 1px) calc(0.25rem - 1px);
}

.card-header-tabs {
  margin-right: -0.625rem;
  margin-bottom: -0.75rem;
  margin-left: -0.625rem;
  border-bottom: 0;
}

.card-header-pills {
  margin-right: -0.625rem;
  margin-left: -0.625rem;
}

.card-img-overlay {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  padding: 1.25rem;
}

.card-img {
  width: 100%;
  border-radius: calc(0.25rem - 1px);
}

.card-img-top {
  width: 100%;
  border-top-left-radius: calc(0.25rem - 1px);
  border-top-right-radius: calc(0.25rem - 1px);
}

.card-img-bottom {
  width: 100%;
  border-bottom-right-radius: calc(0.25rem - 1px);
  border-bottom-left-radius: calc(0.25rem - 1px);
}

.card-deck {
  display: flex;
  flex-direction: column;
}

.card-deck .card {
  margin-bottom: 15px;
}

@media (min-width: 577px) {
  .card-deck {
    flex-flow: row wrap;
    margin-right: -15px;
    margin-left: -15px;
  }

  .card-deck .card {
    display: flex;
    flex: 1 0 0%;
    flex-direction: column;
    margin-right: 15px;
    margin-bottom: 0;
    margin-left: 15px;
  }
}

.card-group {
  display: flex;
  flex-direction: column;
}

.card-group > .card {
  margin-bottom: 15px;
}

@media (min-width: 577px) {
  .card-group {
    flex-flow: row wrap;
  }

  .card-group > .card {
    flex: 1 0 0%;
    margin-bottom: 0;
  }

  .card-group > .card + .card {
    margin-left: 0;
    border-left: 0;
  }

  .card-group > .card:not(:last-child) {
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
  }

  .card-group > .card:not(:last-child) .card-img-top,
  .card-group > .card:not(:last-child) .card-header {
    border-top-right-radius: 0;
  }

  .card-group > .card:not(:last-child) .card-img-bottom,
  .card-group > .card:not(:last-child) .card-footer {
    border-bottom-right-radius: 0;
  }

  .card-group > .card:not(:first-child) {
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
  }

  .card-group > .card:not(:first-child) .card-img-top,
  .card-group > .card:not(:first-child) .card-header {
    border-top-left-radius: 0;
  }

  .card-group > .card:not(:first-child) .card-img-bottom,
  .card-group > .card:not(:first-child) .card-footer {
    border-bottom-left-radius: 0;
  }
}

.card-columns .card {
  margin-bottom: 0.75rem;
}

@media (min-width: 577px) {
  .card-columns {
    -moz-column-count: 3;
         column-count: 3;
    -moz-column-gap: 1.25rem;
         column-gap: 1.25rem;
    orphans: 1;
    widows: 1;
  }

  .card-columns .card {
    display: inline-block;
    width: 100%;
  }
}

.accordion > .card {
  overflow: hidden;
}

.accordion > .card:not(:first-of-type) .card-header:first-child {
  border-radius: 0;
}

.accordion > .card:not(:first-of-type):not(:last-of-type) {
  border-bottom: 0;
  border-radius: 0;
}

.accordion > .card:first-of-type {
  border-bottom: 0;
  border-bottom-right-radius: 0;
  border-bottom-left-radius: 0;
}

.accordion > .card:last-of-type {
  border-top-left-radius: 0;
  border-top-right-radius: 0;
}

.accordion > .card .card-header {
  margin-bottom: -1px;
}

.breadcrumb {
  display: flex;
  flex-wrap: wrap;
  padding: 0.75rem 1rem;
  margin-bottom: 1rem;
  list-style: none;
  background-color: #e9ecef;
  border-radius: 0.25rem;
}

.breadcrumb-item + .breadcrumb-item {
  padding-left: 0.5rem;
}

.breadcrumb-item + .breadcrumb-item::before {
  display: inline-block;
  padding-right: 0.5rem;
  color: #6c757d;
  content: "/";
}

.breadcrumb-item + .breadcrumb-item:hover::before {
  text-decoration: underline;
}

.breadcrumb-item + .breadcrumb-item:hover::before {
  text-decoration: none;
}

.breadcrumb-item.active {
  color: #6c757d;
}

.pagination {
  display: flex;
  padding-left: 0;
  list-style: none;
  border-radius: 0.25rem;
}

.page-link {
  position: relative;
  display: block;
  padding: 0.5rem 0.75rem;
  margin-left: -1px;
  line-height: 1.25;
  color: #3490dc;
  background-color: #fff;
  border: 1px solid #dee2e6;
}

.page-link:hover {
  z-index: 2;
  color: #1d68a7;
  text-decoration: none;
  background-color: #e9ecef;
  border-color: #dee2e6;
}

.page-link:focus {
  z-index: 2;
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(52, 144, 220, 0.25);
}

.page-item:first-child .page-link {
  margin-left: 0;
  border-top-left-radius: 0.25rem;
  border-bottom-left-radius: 0.25rem;
}

.page-item:last-child .page-link {
  border-top-right-radius: 0.25rem;
  border-bottom-right-radius: 0.25rem;
}

.page-item.active .page-link {
  z-index: 1;
  color: #fff;
  background-color: #3490dc;
  border-color: #3490dc;
}

.page-item.disabled .page-link {
  color: #6c757d;
  pointer-events: none;
  cursor: auto;
  background-color: #fff;
  border-color: #dee2e6;
}

.pagination-lg .page-link {
  padding: 0.75rem 1.5rem;
  font-size: 1.125rem;
  line-height: 1.5;
}

.pagination-lg .page-item:first-child .page-link {
  border-top-left-radius: 0.3rem;
  border-bottom-left-radius: 0.3rem;
}

.pagination-lg .page-item:last-child .page-link {
  border-top-right-radius: 0.3rem;
  border-bottom-right-radius: 0.3rem;
}

.pagination-sm .page-link {
  padding: 0.25rem 0.5rem;
  font-size: 0.7875rem;
  line-height: 1.5;
}

.pagination-sm .page-item:first-child .page-link {
  border-top-left-radius: 0.2rem;
  border-bottom-left-radius: 0.2rem;
}

.pagination-sm .page-item:last-child .page-link {
  border-top-right-radius: 0.2rem;
  border-bottom-right-radius: 0.2rem;
}

.badge {
  display: inline-block;
  padding: 0.25em 0.4em;
  font-size: 75%;
  font-weight: 700;
  line-height: 1;
  text-align: center;
  white-space: nowrap;
  vertical-align: baseline;
  border-radius: 0.25rem;
  transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}

@media (prefers-reduced-motion: reduce) {
  .badge {
    transition: none;
  }
}

a.badge:hover,
a.badge:focus {
  text-decoration: none;
}

.badge:empty {
  display: none;
}

.btn .badge {
  position: relative;
  top: -1px;
}

.badge-pill {
  padding-right: 0.6em;
  padding-left: 0.6em;
  border-radius: 10rem;
}

.badge-primary {
  color: #fff;
  background-color: #3490dc;
}

a.badge-primary:hover,
a.badge-primary:focus {
  color: #fff;
  background-color: #2176bd;
}

a.badge-primary:focus,
a.badge-primary.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(52, 144, 220, 0.5);
}

.badge-secondary {
  color: #fff;
  background-color: #6c757d;
}

a.badge-secondary:hover,
a.badge-secondary:focus {
  color: #fff;
  background-color: #545b62;
}

a.badge-secondary:focus,
a.badge-secondary.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(108, 117, 125, 0.5);
}

.badge-success {
  color: #fff;
  background-color: #38c172;
}

a.badge-success:hover,
a.badge-success:focus {
  color: #fff;
  background-color: #2d995b;
}

a.badge-success:focus,
a.badge-success.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(56, 193, 114, 0.5);
}

.badge-info {
  color: #212529;
  background-color: #6cb2eb;
}

a.badge-info:hover,
a.badge-info:focus {
  color: #212529;
  background-color: #3f9ae5;
}

a.badge-info:focus,
a.badge-info.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(108, 178, 235, 0.5);
}

.badge-warning {
  color: #212529;
  background-color: #ffed4a;
}

a.badge-warning:hover,
a.badge-warning:focus {
  color: #212529;
  background-color: #ffe817;
}

a.badge-warning:focus,
a.badge-warning.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(255, 237, 74, 0.5);
}

.badge-danger {
  color: #fff;
  background-color: #e3342f;
}

a.badge-danger:hover,
a.badge-danger:focus {
  color: #fff;
  background-color: #c51f1a;
}

a.badge-danger:focus,
a.badge-danger.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(227, 52, 47, 0.5);
}

.badge-light {
  color: #212529;
  background-color: #f8f9fa;
}

a.badge-light:hover,
a.badge-light:focus {
  color: #212529;
  background-color: #dae0e5;
}

a.badge-light:focus,
a.badge-light.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(248, 249, 250, 0.5);
}

.badge-dark {
  color: #fff;
  background-color: #343a40;
}

a.badge-dark:hover,
a.badge-dark:focus {
  color: #fff;
  background-color: #1d2124;
}

a.badge-dark:focus,
a.badge-dark.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(52, 58, 64, 0.5);
}

.jumbotron {
  padding: 2rem 1rem;
  margin-bottom: 2rem;
  background-color: #e9ecef;
  border-radius: 0.3rem;
}

@media (min-width: 577px) {
  .jumbotron {
    padding: 4rem 2rem;
  }
}

.jumbotron-fluid {
  padding-right: 0;
  padding-left: 0;
  border-radius: 0;
}

.alert {
  position: relative;
  padding: 0.75rem 1.25rem;
  margin-bottom: 1rem;
  border: 1px solid transparent;
  border-radius: 0.25rem;
}

.alert-heading {
  color: inherit;
}

.alert-link {
  font-weight: 700;
}

.alert-dismissible {
  padding-right: 3.85rem;
}

.alert-dismissible .close {
  position: absolute;
  top: 0;
  right: 0;
  padding: 0.75rem 1.25rem;
  color: inherit;
}

.alert-primary {
  color: #1b4b72;
  background-color: #d6e9f8;
  border-color: #c6e0f5;
}

.alert-primary hr {
  border-top-color: #b0d4f1;
}

.alert-primary .alert-link {
  color: #113049;
}

.alert-secondary {
  color: #383d41;
  background-color: #e2e3e5;
  border-color: #d6d8db;
}

.alert-secondary hr {
  border-top-color: #c8cbcf;
}

.alert-secondary .alert-link {
  color: #202326;
}

.alert-success {
  color: #1d643b;
  background-color: #d7f3e3;
  border-color: #c7eed8;
}

.alert-success hr {
  border-top-color: #b3e8ca;
}

.alert-success .alert-link {
  color: #123c24;
}

.alert-info {
  color: #385d7a;
  background-color: #e2f0fb;
  border-color: #d6e9f9;
}

.alert-info hr {
  border-top-color: #c0ddf6;
}

.alert-info .alert-link {
  color: #284257;
}

.alert-warning {
  color: #857b26;
  background-color: #fffbdb;
  border-color: #fffacc;
}

.alert-warning hr {
  border-top-color: #fff8b3;
}

.alert-warning .alert-link {
  color: #5d561b;
}

.alert-danger {
  color: #761b18;
  background-color: #f9d6d5;
  border-color: #f7c6c5;
}

.alert-danger hr {
  border-top-color: #f4b0af;
}

.alert-danger .alert-link {
  color: #4c110f;
}

.alert-light {
  color: #818182;
  background-color: #fefefe;
  border-color: #fdfdfe;
}

.alert-light hr {
  border-top-color: #ececf6;
}

.alert-light .alert-link {
  color: #686868;
}

.alert-dark {
  color: #1b1e21;
  background-color: #d6d8d9;
  border-color: #c6c8ca;
}

.alert-dark hr {
  border-top-color: #b9bbbe;
}

.alert-dark .alert-link {
  color: #040505;
}

@-webkit-keyframes progress-bar-stripes {
  from {
    background-position: 1rem 0;
  }

  to {
    background-position: 0 0;
  }
}

@keyframes progress-bar-stripes {
  from {
    background-position: 1rem 0;
  }

  to {
    background-position: 0 0;
  }
}

.progress {
  display: flex;
  height: 1rem;
  overflow: hidden;
  font-size: 0.675rem;
  background-color: #e9ecef;
  border-radius: 0.25rem;
}

.progress-bar {
  display: flex;
  flex-direction: column;
  justify-content: center;
  color: #fff;
  text-align: center;
  white-space: nowrap;
  background-color: #3490dc;
  transition: width 0.6s ease;
}

@media (prefers-reduced-motion: reduce) {
  .progress-bar {
    transition: none;
  }
}

.progress-bar-striped {
  background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
  background-size: 1rem 1rem;
}

.progress-bar-animated {
  -webkit-animation: progress-bar-stripes 1s linear infinite;
          animation: progress-bar-stripes 1s linear infinite;
}

@media (prefers-reduced-motion: reduce) {
  .progress-bar-animated {
    -webkit-animation: none;
            animation: none;
  }
}

.media {
  display: flex;
  align-items: flex-start;
}

.media-body {
  flex: 1;
}

.list-group {
  display: flex;
  flex-direction: column;
  padding-left: 0;
  margin-bottom: 0;
}

.list-group-item-action {
  width: 100%;
  color: #495057;
  text-align: inherit;
}

.list-group-item-action:hover,
.list-group-item-action:focus {
  z-index: 1;
  color: #495057;
  text-decoration: none;
  background-color: #f8f9fa;
}

.list-group-item-action:active {
  color: #212529;
  background-color: #e9ecef;
}

.list-group-item {
  position: relative;
  display: block;
  padding: 0.75rem 1.25rem;
  margin-bottom: -1px;
  background-color: #fff;
  border: 1px solid rgba(0, 0, 0, 0.125);
}

.list-group-item:first-child {
  border-top-left-radius: 0.25rem;
  border-top-right-radius: 0.25rem;
}

.list-group-item:last-child {
  margin-bottom: 0;
  border-bottom-right-radius: 0.25rem;
  border-bottom-left-radius: 0.25rem;
}

.list-group-item.disabled,
.list-group-item:disabled {
  color: #6c757d;
  pointer-events: none;
  background-color: #fff;
}

.list-group-item.active {
  z-index: 2;
  color: #fff;
  background-color: #3490dc;
  border-color: #3490dc;
}

.list-group-horizontal {
  flex-direction: row;
}

.list-group-horizontal .list-group-item {
  margin-right: -1px;
  margin-bottom: 0;
}

.list-group-horizontal .list-group-item:first-child {
  border-top-left-radius: 0.25rem;
  border-bottom-left-radius: 0.25rem;
  border-top-right-radius: 0;
}

.list-group-horizontal .list-group-item:last-child {
  margin-right: 0;
  border-top-right-radius: 0.25rem;
  border-bottom-right-radius: 0.25rem;
  border-bottom-left-radius: 0;
}

@media (min-width: 577px) {
  .list-group-horizontal-sm {
    flex-direction: row;
  }

  .list-group-horizontal-sm .list-group-item {
    margin-right: -1px;
    margin-bottom: 0;
  }

  .list-group-horizontal-sm .list-group-item:first-child {
    border-top-left-radius: 0.25rem;
    border-bottom-left-radius: 0.25rem;
    border-top-right-radius: 0;
  }

  .list-group-horizontal-sm .list-group-item:last-child {
    margin-right: 0;
    border-top-right-radius: 0.25rem;
    border-bottom-right-radius: 0.25rem;
    border-bottom-left-radius: 0;
  }
}

@media (min-width: 769px) {
  .list-group-horizontal-md {
    flex-direction: row;
  }

  .list-group-horizontal-md .list-group-item {
    margin-right: -1px;
    margin-bottom: 0;
  }

  .list-group-horizontal-md .list-group-item:first-child {
    border-top-left-radius: 0.25rem;
    border-bottom-left-radius: 0.25rem;
    border-top-right-radius: 0;
  }

  .list-group-horizontal-md .list-group-item:last-child {
    margin-right: 0;
    border-top-right-radius: 0.25rem;
    border-bottom-right-radius: 0.25rem;
    border-bottom-left-radius: 0;
  }
}

@media (min-width: 1024px) {
  .list-group-horizontal-lg {
    flex-direction: row;
  }

  .list-group-horizontal-lg .list-group-item {
    margin-right: -1px;
    margin-bottom: 0;
  }

  .list-group-horizontal-lg .list-group-item:first-child {
    border-top-left-radius: 0.25rem;
    border-bottom-left-radius: 0.25rem;
    border-top-right-radius: 0;
  }

  .list-group-horizontal-lg .list-group-item:last-child {
    margin-right: 0;
    border-top-right-radius: 0.25rem;
    border-bottom-right-radius: 0.25rem;
    border-bottom-left-radius: 0;
  }
}

@media (min-width: 1281px) {
  .list-group-horizontal-xl {
    flex-direction: row;
  }

  .list-group-horizontal-xl .list-group-item {
    margin-right: -1px;
    margin-bottom: 0;
  }

  .list-group-horizontal-xl .list-group-item:first-child {
    border-top-left-radius: 0.25rem;
    border-bottom-left-radius: 0.25rem;
    border-top-right-radius: 0;
  }

  .list-group-horizontal-xl .list-group-item:last-child {
    margin-right: 0;
    border-top-right-radius: 0.25rem;
    border-bottom-right-radius: 0.25rem;
    border-bottom-left-radius: 0;
  }
}

.list-group-flush .list-group-item {
  border-right: 0;
  border-left: 0;
  border-radius: 0;
}

.list-group-flush .list-group-item:last-child {
  margin-bottom: -1px;
}

.list-group-flush:first-child .list-group-item:first-child {
  border-top: 0;
}

.list-group-flush:last-child .list-group-item:last-child {
  margin-bottom: 0;
  border-bottom: 0;
}

.list-group-item-primary {
  color: #1b4b72;
  background-color: #c6e0f5;
}

.list-group-item-primary.list-group-item-action:hover,
.list-group-item-primary.list-group-item-action:focus {
  color: #1b4b72;
  background-color: #b0d4f1;
}

.list-group-item-primary.list-group-item-action.active {
  color: #fff;
  background-color: #1b4b72;
  border-color: #1b4b72;
}

.list-group-item-secondary {
  color: #383d41;
  background-color: #d6d8db;
}

.list-group-item-secondary.list-group-item-action:hover,
.list-group-item-secondary.list-group-item-action:focus {
  color: #383d41;
  background-color: #c8cbcf;
}

.list-group-item-secondary.list-group-item-action.active {
  color: #fff;
  background-color: #383d41;
  border-color: #383d41;
}

.list-group-item-success {
  color: #1d643b;
  background-color: #c7eed8;
}

.list-group-item-success.list-group-item-action:hover,
.list-group-item-success.list-group-item-action:focus {
  color: #1d643b;
  background-color: #b3e8ca;
}

.list-group-item-success.list-group-item-action.active {
  color: #fff;
  background-color: #1d643b;
  border-color: #1d643b;
}

.list-group-item-info {
  color: #385d7a;
  background-color: #d6e9f9;
}

.list-group-item-info.list-group-item-action:hover,
.list-group-item-info.list-group-item-action:focus {
  color: #385d7a;
  background-color: #c0ddf6;
}

.list-group-item-info.list-group-item-action.active {
  color: #fff;
  background-color: #385d7a;
  border-color: #385d7a;
}

.list-group-item-warning {
  color: #857b26;
  background-color: #fffacc;
}

.list-group-item-warning.list-group-item-action:hover,
.list-group-item-warning.list-group-item-action:focus {
  color: #857b26;
  background-color: #fff8b3;
}

.list-group-item-warning.list-group-item-action.active {
  color: #fff;
  background-color: #857b26;
  border-color: #857b26;
}

.list-group-item-danger {
  color: #761b18;
  background-color: #f7c6c5;
}

.list-group-item-danger.list-group-item-action:hover,
.list-group-item-danger.list-group-item-action:focus {
  color: #761b18;
  background-color: #f4b0af;
}

.list-group-item-danger.list-group-item-action.active {
  color: #fff;
  background-color: #761b18;
  border-color: #761b18;
}

.list-group-item-light {
  color: #818182;
  background-color: #fdfdfe;
}

.list-group-item-light.list-group-item-action:hover,
.list-group-item-light.list-group-item-action:focus {
  color: #818182;
  background-color: #ececf6;
}

.list-group-item-light.list-group-item-action.active {
  color: #fff;
  background-color: #818182;
  border-color: #818182;
}

.list-group-item-dark {
  color: #1b1e21;
  background-color: #c6c8ca;
}

.list-group-item-dark.list-group-item-action:hover,
.list-group-item-dark.list-group-item-action:focus {
  color: #1b1e21;
  background-color: #b9bbbe;
}

.list-group-item-dark.list-group-item-action.active {
  color: #fff;
  background-color: #1b1e21;
  border-color: #1b1e21;
}

.close {
  float: right;
  font-size: 1.35rem;
  font-weight: 700;
  line-height: 1;
  color: #000;
  text-shadow: 0 1px 0 #fff;
  opacity: 0.5;
}

.close:hover {
  color: #000;
  text-decoration: none;
}

.close:not(:disabled):not(.disabled):hover,
.close:not(:disabled):not(.disabled):focus {
  opacity: 0.75;
}

button.close {
  padding: 0;
  background-color: transparent;
  border: 0;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}

a.close.disabled {
  pointer-events: none;
}

.toast {
  max-width: 350px;
  overflow: hidden;
  font-size: 0.875rem;
  background-color: rgba(255, 255, 255, 0.85);
  background-clip: padding-box;
  border: 1px solid rgba(0, 0, 0, 0.1);
  box-shadow: 0 0.25rem 0.75rem rgba(0, 0, 0, 0.1);
  -webkit-backdrop-filter: blur(10px);
          backdrop-filter: blur(10px);
  opacity: 0;
  border-radius: 0.25rem;
}

.toast:not(:last-child) {
  margin-bottom: 0.75rem;
}

.toast.showing {
  opacity: 1;
}

.toast.show {
  display: block;
  opacity: 1;
}

.toast.hide {
  display: none;
}

.toast-header {
  display: flex;
  align-items: center;
  padding: 0.25rem 0.75rem;
  color: #6c757d;
  background-color: rgba(255, 255, 255, 0.85);
  background-clip: padding-box;
  border-bottom: 1px solid rgba(0, 0, 0, 0.05);
}

.toast-body {
  padding: 0.75rem;
}

.modal-open {
  overflow: hidden;
}

.modal-open .modal {
  overflow-x: hidden;
  overflow-y: auto;
}

.modal {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 1050;
  display: none;
  width: 100%;
  height: 100%;
  overflow: hidden;
  outline: 0;
}

.modal-dialog {
  position: relative;
  width: auto;
  margin: 0.5rem;
  pointer-events: none;
}

.modal.fade .modal-dialog {
  transition: transform 0.3s ease-out;
  transform: translate(0, -50px);
}

@media (prefers-reduced-motion: reduce) {
  .modal.fade .modal-dialog {
    transition: none;
  }
}

.modal.show .modal-dialog {
  transform: none;
}

.modal-dialog-scrollable {
  display: flex;
  max-height: calc(100% - 1rem);
}

.modal-dialog-scrollable .modal-content {
  max-height: calc(100vh - 1rem);
  overflow: hidden;
}

.modal-dialog-scrollable .modal-header,
.modal-dialog-scrollable .modal-footer {
  flex-shrink: 0;
}

.modal-dialog-scrollable .modal-body {
  overflow-y: auto;
}

.modal-dialog-centered {
  display: flex;
  align-items: center;
  min-height: calc(100% - 1rem);
}

.modal-dialog-centered::before {
  display: block;
  height: calc(100vh - 1rem);
  content: "";
}

.modal-dialog-centered.modal-dialog-scrollable {
  flex-direction: column;
  justify-content: center;
  height: 100%;
}

.modal-dialog-centered.modal-dialog-scrollable .modal-content {
  max-height: none;
}

.modal-dialog-centered.modal-dialog-scrollable::before {
  content: none;
}

.modal-content {
  position: relative;
  display: flex;
  flex-direction: column;
  width: 100%;
  pointer-events: auto;
  background-color: #fff;
  background-clip: padding-box;
  border: 1px solid rgba(0, 0, 0, 0.2);
  border-radius: 0.3rem;
  outline: 0;
}

.modal-backdrop {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 1040;
  width: 100vw;
  height: 100vh;
  background-color: #000;
}

.modal-backdrop.fade {
  opacity: 0;
}

.modal-backdrop.show {
  opacity: 0.5;
}

.modal-header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  padding: 1rem 1rem;
  border-bottom: 1px solid #dee2e6;
  border-top-left-radius: 0.3rem;
  border-top-right-radius: 0.3rem;
}

.modal-header .close {
  padding: 1rem 1rem;
  margin: -1rem -1rem -1rem auto;
}

.modal-title {
  margin-bottom: 0;
  line-height: 1.6;
}

.modal-body {
  position: relative;
  flex: 1 1 auto;
  padding: 1rem;
}

.modal-footer {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  padding: 1rem;
  border-top: 1px solid #dee2e6;
  border-bottom-right-radius: 0.3rem;
  border-bottom-left-radius: 0.3rem;
}

.modal-footer > :not(:first-child) {
  margin-left: 0.25rem;
}

.modal-footer > :not(:last-child) {
  margin-right: 0.25rem;
}

.modal-scrollbar-measure {
  position: absolute;
  top: -9999px;
  width: 50px;
  height: 50px;
  overflow: scroll;
}

@media (min-width: 577px) {
  .modal-dialog {
    max-width: 500px;
    margin: 1.75rem auto;
  }

  .modal-dialog-scrollable {
    max-height: calc(100% - 3.5rem);
  }

  .modal-dialog-scrollable .modal-content {
    max-height: calc(100vh - 3.5rem);
  }

  .modal-dialog-centered {
    min-height: calc(100% - 3.5rem);
  }

  .modal-dialog-centered::before {
    height: calc(100vh - 3.5rem);
  }

  .modal-sm {
    max-width: 300px;
  }
}

@media (min-width: 1024px) {
  .modal-lg,
  .modal-xl {
    max-width: 800px;
  }
}

@media (min-width: 1281px) {
  .modal-xl {
    max-width: 1140px;
  }
}

.tooltip {
  position: absolute;
  z-index: 1070;
  display: block;
  margin: 0;
  font-family: "Nunito", sans-serif;
  font-style: normal;
  font-weight: 400;
  line-height: 1.6;
  text-align: left;
  text-align: start;
  text-decoration: none;
  text-shadow: none;
  text-transform: none;
  letter-spacing: normal;
  word-break: normal;
  word-spacing: normal;
  white-space: normal;
  line-break: auto;
  font-size: 0.7875rem;
  word-wrap: break-word;
  opacity: 0;
}

.tooltip.show {
  opacity: 0.9;
}

.tooltip .arrow {
  position: absolute;
  display: block;
  width: 0.8rem;
  height: 0.4rem;
}

.tooltip .arrow::before {
  position: absolute;
  content: "";
  border-color: transparent;
  border-style: solid;
}

.bs-tooltip-top,
.bs-tooltip-auto[x-placement^=top] {
  padding: 0.4rem 0;
}

.bs-tooltip-top .arrow,
.bs-tooltip-auto[x-placement^=top] .arrow {
  bottom: 0;
}

.bs-tooltip-top .arrow::before,
.bs-tooltip-auto[x-placement^=top] .arrow::before {
  top: 0;
  border-width: 0.4rem 0.4rem 0;
  border-top-color: #000;
}

.bs-tooltip-right,
.bs-tooltip-auto[x-placement^=right] {
  padding: 0 0.4rem;
}

.bs-tooltip-right .arrow,
.bs-tooltip-auto[x-placement^=right] .arrow {
  left: 0;
  width: 0.4rem;
  height: 0.8rem;
}

.bs-tooltip-right .arrow::before,
.bs-tooltip-auto[x-placement^=right] .arrow::before {
  right: 0;
  border-width: 0.4rem 0.4rem 0.4rem 0;
  border-right-color: #000;
}

.bs-tooltip-bottom,
.bs-tooltip-auto[x-placement^=bottom] {
  padding: 0.4rem 0;
}

.bs-tooltip-bottom .arrow,
.bs-tooltip-auto[x-placement^=bottom] .arrow {
  top: 0;
}

.bs-tooltip-bottom .arrow::before,
.bs-tooltip-auto[x-placement^=bottom] .arrow::before {
  bottom: 0;
  border-width: 0 0.4rem 0.4rem;
  border-bottom-color: #000;
}

.bs-tooltip-left,
.bs-tooltip-auto[x-placement^=left] {
  padding: 0 0.4rem;
}

.bs-tooltip-left .arrow,
.bs-tooltip-auto[x-placement^=left] .arrow {
  right: 0;
  width: 0.4rem;
  height: 0.8rem;
}

.bs-tooltip-left .arrow::before,
.bs-tooltip-auto[x-placement^=left] .arrow::before {
  left: 0;
  border-width: 0.4rem 0 0.4rem 0.4rem;
  border-left-color: #000;
}

.tooltip-inner {
  max-width: 200px;
  padding: 0.25rem 0.5rem;
  color: #fff;
  text-align: center;
  background-color: #000;
  border-radius: 0.25rem;
}

.popover {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1060;
  display: block;
  max-width: 276px;
  font-family: "Nunito", sans-serif;
  font-style: normal;
  font-weight: 400;
  line-height: 1.6;
  text-align: left;
  text-align: start;
  text-decoration: none;
  text-shadow: none;
  text-transform: none;
  letter-spacing: normal;
  word-break: normal;
  word-spacing: normal;
  white-space: normal;
  line-break: auto;
  font-size: 0.7875rem;
  word-wrap: break-word;
  background-color: #fff;
  background-clip: padding-box;
  border: 1px solid rgba(0, 0, 0, 0.2);
  border-radius: 0.3rem;
}

.popover .arrow {
  position: absolute;
  display: block;
  width: 1rem;
  height: 0.5rem;
  margin: 0 0.3rem;
}

.popover .arrow::before,
.popover .arrow::after {
  position: absolute;
  display: block;
  content: "";
  border-color: transparent;
  border-style: solid;
}

.bs-popover-top,
.bs-popover-auto[x-placement^=top] {
  margin-bottom: 0.5rem;
}

.bs-popover-top > .arrow,
.bs-popover-auto[x-placement^=top] > .arrow {
  bottom: calc((0.5rem + 1px) * -1);
}

.bs-popover-top > .arrow::before,
.bs-popover-auto[x-placement^=top] > .arrow::before {
  bottom: 0;
  border-width: 0.5rem 0.5rem 0;
  border-top-color: rgba(0, 0, 0, 0.25);
}

.bs-popover-top > .arrow::after,
.bs-popover-auto[x-placement^=top] > .arrow::after {
  bottom: 1px;
  border-width: 0.5rem 0.5rem 0;
  border-top-color: #fff;
}

.bs-popover-right,
.bs-popover-auto[x-placement^=right] {
  margin-left: 0.5rem;
}

.bs-popover-right > .arrow,
.bs-popover-auto[x-placement^=right] > .arrow {
  left: calc((0.5rem + 1px) * -1);
  width: 0.5rem;
  height: 1rem;
  margin: 0.3rem 0;
}

.bs-popover-right > .arrow::before,
.bs-popover-auto[x-placement^=right] > .arrow::before {
  left: 0;
  border-width: 0.5rem 0.5rem 0.5rem 0;
  border-right-color: rgba(0, 0, 0, 0.25);
}

.bs-popover-right > .arrow::after,
.bs-popover-auto[x-placement^=right] > .arrow::after {
  left: 1px;
  border-width: 0.5rem 0.5rem 0.5rem 0;
  border-right-color: #fff;
}

.bs-popover-bottom,
.bs-popover-auto[x-placement^=bottom] {
  margin-top: 0.5rem;
}

.bs-popover-bottom > .arrow,
.bs-popover-auto[x-placement^=bottom] > .arrow {
  top: calc((0.5rem + 1px) * -1);
}

.bs-popover-bottom > .arrow::before,
.bs-popover-auto[x-placement^=bottom] > .arrow::before {
  top: 0;
  border-width: 0 0.5rem 0.5rem 0.5rem;
  border-bottom-color: rgba(0, 0, 0, 0.25);
}

.bs-popover-bottom > .arrow::after,
.bs-popover-auto[x-placement^=bottom] > .arrow::after {
  top: 1px;
  border-width: 0 0.5rem 0.5rem 0.5rem;
  border-bottom-color: #fff;
}

.bs-popover-bottom .popover-header::before,
.bs-popover-auto[x-placement^=bottom] .popover-header::before {
  position: absolute;
  top: 0;
  left: 50%;
  display: block;
  width: 1rem;
  margin-left: -0.5rem;
  content: "";
  border-bottom: 1px solid #f7f7f7;
}

.bs-popover-left,
.bs-popover-auto[x-placement^=left] {
  margin-right: 0.5rem;
}

.bs-popover-left > .arrow,
.bs-popover-auto[x-placement^=left] > .arrow {
  right: calc((0.5rem + 1px) * -1);
  width: 0.5rem;
  height: 1rem;
  margin: 0.3rem 0;
}

.bs-popover-left > .arrow::before,
.bs-popover-auto[x-placement^=left] > .arrow::before {
  right: 0;
  border-width: 0.5rem 0 0.5rem 0.5rem;
  border-left-color: rgba(0, 0, 0, 0.25);
}

.bs-popover-left > .arrow::after,
.bs-popover-auto[x-placement^=left] > .arrow::after {
  right: 1px;
  border-width: 0.5rem 0 0.5rem 0.5rem;
  border-left-color: #fff;
}

.popover-header {
  padding: 0.5rem 0.75rem;
  margin-bottom: 0;
  font-size: 0.9rem;
  background-color: #f7f7f7;
  border-bottom: 1px solid #ebebeb;
  border-top-left-radius: calc(0.3rem - 1px);
  border-top-right-radius: calc(0.3rem - 1px);
}

.popover-header:empty {
  display: none;
}

.popover-body {
  padding: 0.5rem 0.75rem;
  color: #212529;
}

.carousel {
  position: relative;
}

.carousel.pointer-event {
  touch-action: pan-y;
}

.carousel-inner {
  position: relative;
  width: 100%;
  overflow: hidden;
}

.carousel-inner::after {
  display: block;
  clear: both;
  content: "";
}

.carousel-item {
  position: relative;
  display: none;
  float: left;
  width: 100%;
  margin-right: -100%;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  transition: transform 0.6s ease-in-out;
}

@media (prefers-reduced-motion: reduce) {
  .carousel-item {
    transition: none;
  }
}

.carousel-item.active,
.carousel-item-next,
.carousel-item-prev {
  display: block;
}

.carousel-item-next:not(.carousel-item-left),
.active.carousel-item-right {
  transform: translateX(100%);
}

.carousel-item-prev:not(.carousel-item-right),
.active.carousel-item-left {
  transform: translateX(-100%);
}

.carousel-fade .carousel-item {
  opacity: 0;
  transition-property: opacity;
  transform: none;
}

.carousel-fade .carousel-item.active,
.carousel-fade .carousel-item-next.carousel-item-left,
.carousel-fade .carousel-item-prev.carousel-item-right {
  z-index: 1;
  opacity: 1;
}

.carousel-fade .active.carousel-item-left,
.carousel-fade .active.carousel-item-right {
  z-index: 0;
  opacity: 0;
  transition: 0s 0.6s opacity;
}

@media (prefers-reduced-motion: reduce) {
  .carousel-fade .active.carousel-item-left,
  .carousel-fade .active.carousel-item-right {
    transition: none;
  }
}

.carousel-control-prev,
.carousel-control-next {
  position: absolute;
  top: 0;
  bottom: 0;
  z-index: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 15%;
  color: #fff;
  text-align: center;
  opacity: 0.5;
  transition: opacity 0.15s ease;
}

@media (prefers-reduced-motion: reduce) {
  .carousel-control-prev,
  .carousel-control-next {
    transition: none;
  }
}

.carousel-control-prev:hover,
.carousel-control-prev:focus,
.carousel-control-next:hover,
.carousel-control-next:focus {
  color: #fff;
  text-decoration: none;
  outline: 0;
  opacity: 0.9;
}

.carousel-control-prev {
  left: 0;
}

.carousel-control-next {
  right: 0;
}

.carousel-control-prev-icon,
.carousel-control-next-icon {
  display: inline-block;
  width: 20px;
  height: 20px;
  background: no-repeat 50%/100% 100%;
}

.carousel-control-prev-icon {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 8 8'%3e%3cpath d='M5.25 0l-4 4 4 4 1.5-1.5-2.5-2.5 2.5-2.5-1.5-1.5z'/%3e%3c/svg%3e");
}

.carousel-control-next-icon {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 8 8'%3e%3cpath d='M2.75 0l-1.5 1.5 2.5 2.5-2.5 2.5 1.5 1.5 4-4-4-4z'/%3e%3c/svg%3e");
}

.carousel-indicators {
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 15;
  display: flex;
  justify-content: center;
  padding-left: 0;
  margin-right: 15%;
  margin-left: 15%;
  list-style: none;
}

.carousel-indicators li {
  box-sizing: content-box;
  flex: 0 1 auto;
  width: 30px;
  height: 3px;
  margin-right: 3px;
  margin-left: 3px;
  text-indent: -999px;
  cursor: pointer;
  background-color: #fff;
  background-clip: padding-box;
  border-top: 10px solid transparent;
  border-bottom: 10px solid transparent;
  opacity: 0.5;
  transition: opacity 0.6s ease;
}

@media (prefers-reduced-motion: reduce) {
  .carousel-indicators li {
    transition: none;
  }
}

.carousel-indicators .active {
  opacity: 1;
}

.carousel-caption {
  position: absolute;
  right: 15%;
  bottom: 20px;
  left: 15%;
  z-index: 10;
  padding-top: 20px;
  padding-bottom: 20px;
  color: #fff;
  text-align: center;
}

@-webkit-keyframes spinner-border {
  to {
    transform: rotate(360deg);
  }
}

@keyframes spinner-border {
  to {
    transform: rotate(360deg);
  }
}

.spinner-border {
  display: inline-block;
  width: 2rem;
  height: 2rem;
  vertical-align: text-bottom;
  border: 0.25em solid currentColor;
  border-right-color: transparent;
  border-radius: 50%;
  -webkit-animation: spinner-border 0.75s linear infinite;
          animation: spinner-border 0.75s linear infinite;
}

.spinner-border-sm {
  width: 1rem;
  height: 1rem;
  border-width: 0.2em;
}

@-webkit-keyframes spinner-grow {
  0% {
    transform: scale(0);
  }

  50% {
    opacity: 1;
  }
}

@keyframes spinner-grow {
  0% {
    transform: scale(0);
  }

  50% {
    opacity: 1;
  }
}

.spinner-grow {
  display: inline-block;
  width: 2rem;
  height: 2rem;
  vertical-align: text-bottom;
  background-color: currentColor;
  border-radius: 50%;
  opacity: 0;
  -webkit-animation: spinner-grow 0.75s linear infinite;
          animation: spinner-grow 0.75s linear infinite;
}

.spinner-grow-sm {
  width: 1rem;
  height: 1rem;
}

.align-baseline {
  vertical-align: baseline !important;
}

.align-top {
  vertical-align: top !important;
}

.align-middle {
  vertical-align: middle !important;
}

.align-bottom {
  vertical-align: bottom !important;
}

.align-text-bottom {
  vertical-align: text-bottom !important;
}

.align-text-top {
  vertical-align: text-top !important;
}

.bg-primary {
  background-color: #3490dc !important;
}

a.bg-primary:hover,
a.bg-primary:focus,
button.bg-primary:hover,
button.bg-primary:focus {
  background-color: #2176bd !important;
}

.bg-secondary {
  background-color: #6c757d !important;
}

a.bg-secondary:hover,
a.bg-secondary:focus,
button.bg-secondary:hover,
button.bg-secondary:focus {
  background-color: #545b62 !important;
}

.bg-success {
  background-color: #38c172 !important;
}

a.bg-success:hover,
a.bg-success:focus,
button.bg-success:hover,
button.bg-success:focus {
  background-color: #2d995b !important;
}

.bg-info {
  background-color: #6cb2eb !important;
}

a.bg-info:hover,
a.bg-info:focus,
button.bg-info:hover,
button.bg-info:focus {
  background-color: #3f9ae5 !important;
}

.bg-warning {
  background-color: #ffed4a !important;
}

a.bg-warning:hover,
a.bg-warning:focus,
button.bg-warning:hover,
button.bg-warning:focus {
  background-color: #ffe817 !important;
}

.bg-danger {
  background-color: #e3342f !important;
}

a.bg-danger:hover,
a.bg-danger:focus,
button.bg-danger:hover,
button.bg-danger:focus {
  background-color: #c51f1a !important;
}

.bg-light {
  background-color: #f8f9fa !important;
}

a.bg-light:hover,
a.bg-light:focus,
button.bg-light:hover,
button.bg-light:focus {
  background-color: #dae0e5 !important;
}

.bg-dark {
  background-color: #343a40 !important;
}

a.bg-dark:hover,
a.bg-dark:focus,
button.bg-dark:hover,
button.bg-dark:focus {
  background-color: #1d2124 !important;
}

.bg-white {
  background-color: #fff !important;
}

.bg-transparent {
  background-color: transparent !important;
}

.border {
  border: 1px solid #dee2e6 !important;
}

.border-top {
  border-top: 1px solid #dee2e6 !important;
}

.border-right {
  border-right: 1px solid #dee2e6 !important;
}

.border-bottom {
  border-bottom: 1px solid #dee2e6 !important;
}

.border-left {
  border-left: 1px solid #dee2e6 !important;
}

.border-0 {
  border: 0 !important;
}

.border-top-0 {
  border-top: 0 !important;
}

.border-right-0 {
  border-right: 0 !important;
}

.border-bottom-0 {
  border-bottom: 0 !important;
}

.border-left-0 {
  border-left: 0 !important;
}

.border-primary {
  border-color: #3490dc !important;
}

.border-secondary {
  border-color: #6c757d !important;
}

.border-success {
  border-color: #38c172 !important;
}

.border-info {
  border-color: #6cb2eb !important;
}

.border-warning {
  border-color: #ffed4a !important;
}

.border-danger {
  border-color: #e3342f !important;
}

.border-light {
  border-color: #f8f9fa !important;
}

.border-dark {
  border-color: #343a40 !important;
}

.border-white {
  border-color: #fff !important;
}

.rounded-sm {
  border-radius: 0.2rem !important;
}

.rounded {
  border-radius: 0.25rem !important;
}

.rounded-top {
  border-top-left-radius: 0.25rem !important;
  border-top-right-radius: 0.25rem !important;
}

.rounded-right {
  border-top-right-radius: 0.25rem !important;
  border-bottom-right-radius: 0.25rem !important;
}

.rounded-bottom {
  border-bottom-right-radius: 0.25rem !important;
  border-bottom-left-radius: 0.25rem !important;
}

.rounded-left {
  border-top-left-radius: 0.25rem !important;
  border-bottom-left-radius: 0.25rem !important;
}

.rounded-lg {
  border-radius: 0.3rem !important;
}

.rounded-circle {
  border-radius: 50% !important;
}

.rounded-pill {
  border-radius: 50rem !important;
}

.rounded-0 {
  border-radius: 0 !important;
}

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

.d-none {
  display: none !important;
}

.d-inline {
  display: inline !important;
}

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

.d-block {
  display: block !important;
}

.d-table {
  display: table !important;
}

.d-table-row {
  display: table-row !important;
}

.d-table-cell {
  display: table-cell !important;
}

.d-flex {
  display: flex !important;
}

.d-inline-flex {
  display: inline-flex !important;
}

@media (min-width: 577px) {
  .d-sm-none {
    display: none !important;
  }

  .d-sm-inline {
    display: inline !important;
  }

  .d-sm-inline-block {
    display: inline-block !important;
  }

  .d-sm-block {
    display: block !important;
  }

  .d-sm-table {
    display: table !important;
  }

  .d-sm-table-row {
    display: table-row !important;
  }

  .d-sm-table-cell {
    display: table-cell !important;
  }

  .d-sm-flex {
    display: flex !important;
  }

  .d-sm-inline-flex {
    display: inline-flex !important;
  }
}

@media (min-width: 769px) {
  .d-md-none {
    display: none !important;
  }

  .d-md-inline {
    display: inline !important;
  }

  .d-md-inline-block {
    display: inline-block !important;
  }

  .d-md-block {
    display: block !important;
  }

  .d-md-table {
    display: table !important;
  }

  .d-md-table-row {
    display: table-row !important;
  }

  .d-md-table-cell {
    display: table-cell !important;
  }

  .d-md-flex {
    display: flex !important;
  }

  .d-md-inline-flex {
    display: inline-flex !important;
  }
}

@media (min-width: 1024px) {
  .d-lg-none {
    display: none !important;
  }

  .d-lg-inline {
    display: inline !important;
  }

  .d-lg-inline-block {
    display: inline-block !important;
  }

  .d-lg-block {
    display: block !important;
  }

  .d-lg-table {
    display: table !important;
  }

  .d-lg-table-row {
    display: table-row !important;
  }

  .d-lg-table-cell {
    display: table-cell !important;
  }

  .d-lg-flex {
    display: flex !important;
  }

  .d-lg-inline-flex {
    display: inline-flex !important;
  }
}

@media (min-width: 1281px) {
  .d-xl-none {
    display: none !important;
  }

  .d-xl-inline {
    display: inline !important;
  }

  .d-xl-inline-block {
    display: inline-block !important;
  }

  .d-xl-block {
    display: block !important;
  }

  .d-xl-table {
    display: table !important;
  }

  .d-xl-table-row {
    display: table-row !important;
  }

  .d-xl-table-cell {
    display: table-cell !important;
  }

  .d-xl-flex {
    display: flex !important;
  }

  .d-xl-inline-flex {
    display: inline-flex !important;
  }
}

@media print {
  .d-print-none {
    display: none !important;
  }

  .d-print-inline {
    display: inline !important;
  }

  .d-print-inline-block {
    display: inline-block !important;
  }

  .d-print-block {
    display: block !important;
  }

  .d-print-table {
    display: table !important;
  }

  .d-print-table-row {
    display: table-row !important;
  }

  .d-print-table-cell {
    display: table-cell !important;
  }

  .d-print-flex {
    display: flex !important;
  }

  .d-print-inline-flex {
    display: inline-flex !important;
  }
}

.embed-responsive {
  position: relative;
  display: block;
  width: 100%;
  padding: 0;
  overflow: hidden;
}

.embed-responsive::before {
  display: block;
  content: "";
}

.embed-responsive .embed-responsive-item,
.embed-responsive iframe,
.embed-responsive embed,
.embed-responsive object,
.embed-responsive video {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: 0;
}

.embed-responsive-21by9::before {
  padding-top: 42.8571428571%;
}

.embed-responsive-16by9::before {
  padding-top: 56.25%;
}

.embed-responsive-4by3::before {
  padding-top: 75%;
}

.embed-responsive-1by1::before {
  padding-top: 100%;
}

.flex-row {
  flex-direction: row !important;
}

.flex-column {
  flex-direction: column !important;
}

.flex-row-reverse {
  flex-direction: row-reverse !important;
}

.flex-column-reverse {
  flex-direction: column-reverse !important;
}

.flex-wrap {
  flex-wrap: wrap !important;
}

.flex-nowrap {
  flex-wrap: nowrap !important;
}

.flex-wrap-reverse {
  flex-wrap: wrap-reverse !important;
}

.flex-fill {
  flex: 1 1 auto !important;
}

.flex-grow-0 {
  flex-grow: 0 !important;
}

.flex-grow-1 {
  flex-grow: 1 !important;
}

.flex-shrink-0 {
  flex-shrink: 0 !important;
}

.flex-shrink-1 {
  flex-shrink: 1 !important;
}

.justify-content-start {
  justify-content: flex-start !important;
}

.justify-content-end {
  justify-content: flex-end !important;
}

.justify-content-center {
  justify-content: center !important;
}

.justify-content-between {
  justify-content: space-between !important;
}

.justify-content-around {
  justify-content: space-around !important;
}

.align-items-start {
  align-items: flex-start !important;
}

.align-items-end {
  align-items: flex-end !important;
}

.align-items-center {
  align-items: center !important;
}

.align-items-baseline {
  align-items: baseline !important;
}

.align-items-stretch {
  align-items: stretch !important;
}

.align-content-start {
  align-content: flex-start !important;
}

.align-content-end {
  align-content: flex-end !important;
}

.align-content-center {
  align-content: center !important;
}

.align-content-between {
  align-content: space-between !important;
}

.align-content-around {
  align-content: space-around !important;
}

.align-content-stretch {
  align-content: stretch !important;
}

.align-self-auto {
  align-self: auto !important;
}

.align-self-start {
  align-self: flex-start !important;
}

.align-self-end {
  align-self: flex-end !important;
}

.align-self-center {
  align-self: center !important;
}

.align-self-baseline {
  align-self: baseline !important;
}

.align-self-stretch {
  align-self: stretch !important;
}

@media (min-width: 577px) {
  .flex-sm-row {
    flex-direction: row !important;
  }

  .flex-sm-column {
    flex-direction: column !important;
  }

  .flex-sm-row-reverse {
    flex-direction: row-reverse !important;
  }

  .flex-sm-column-reverse {
    flex-direction: column-reverse !important;
  }

  .flex-sm-wrap {
    flex-wrap: wrap !important;
  }

  .flex-sm-nowrap {
    flex-wrap: nowrap !important;
  }

  .flex-sm-wrap-reverse {
    flex-wrap: wrap-reverse !important;
  }

  .flex-sm-fill {
    flex: 1 1 auto !important;
  }

  .flex-sm-grow-0 {
    flex-grow: 0 !important;
  }

  .flex-sm-grow-1 {
    flex-grow: 1 !important;
  }

  .flex-sm-shrink-0 {
    flex-shrink: 0 !important;
  }

  .flex-sm-shrink-1 {
    flex-shrink: 1 !important;
  }

  .justify-content-sm-start {
    justify-content: flex-start !important;
  }

  .justify-content-sm-end {
    justify-content: flex-end !important;
  }

  .justify-content-sm-center {
    justify-content: center !important;
  }

  .justify-content-sm-between {
    justify-content: space-between !important;
  }

  .justify-content-sm-around {
    justify-content: space-around !important;
  }

  .align-items-sm-start {
    align-items: flex-start !important;
  }

  .align-items-sm-end {
    align-items: flex-end !important;
  }

  .align-items-sm-center {
    align-items: center !important;
  }

  .align-items-sm-baseline {
    align-items: baseline !important;
  }

  .align-items-sm-stretch {
    align-items: stretch !important;
  }

  .align-content-sm-start {
    align-content: flex-start !important;
  }

  .align-content-sm-end {
    align-content: flex-end !important;
  }

  .align-content-sm-center {
    align-content: center !important;
  }

  .align-content-sm-between {
    align-content: space-between !important;
  }

  .align-content-sm-around {
    align-content: space-around !important;
  }

  .align-content-sm-stretch {
    align-content: stretch !important;
  }

  .align-self-sm-auto {
    align-self: auto !important;
  }

  .align-self-sm-start {
    align-self: flex-start !important;
  }

  .align-self-sm-end {
    align-self: flex-end !important;
  }

  .align-self-sm-center {
    align-self: center !important;
  }

  .align-self-sm-baseline {
    align-self: baseline !important;
  }

  .align-self-sm-stretch {
    align-self: stretch !important;
  }
}

@media (min-width: 769px) {
  .flex-md-row {
    flex-direction: row !important;
  }

  .flex-md-column {
    flex-direction: column !important;
  }

  .flex-md-row-reverse {
    flex-direction: row-reverse !important;
  }

  .flex-md-column-reverse {
    flex-direction: column-reverse !important;
  }

  .flex-md-wrap {
    flex-wrap: wrap !important;
  }

  .flex-md-nowrap {
    flex-wrap: nowrap !important;
  }

  .flex-md-wrap-reverse {
    flex-wrap: wrap-reverse !important;
  }

  .flex-md-fill {
    flex: 1 1 auto !important;
  }

  .flex-md-grow-0 {
    flex-grow: 0 !important;
  }

  .flex-md-grow-1 {
    flex-grow: 1 !important;
  }

  .flex-md-shrink-0 {
    flex-shrink: 0 !important;
  }

  .flex-md-shrink-1 {
    flex-shrink: 1 !important;
  }

  .justify-content-md-start {
    justify-content: flex-start !important;
  }

  .justify-content-md-end {
    justify-content: flex-end !important;
  }

  .justify-content-md-center {
    justify-content: center !important;
  }

  .justify-content-md-between {
    justify-content: space-between !important;
  }

  .justify-content-md-around {
    justify-content: space-around !important;
  }

  .align-items-md-start {
    align-items: flex-start !important;
  }

  .align-items-md-end {
    align-items: flex-end !important;
  }

  .align-items-md-center {
    align-items: center !important;
  }

  .align-items-md-baseline {
    align-items: baseline !important;
  }

  .align-items-md-stretch {
    align-items: stretch !important;
  }

  .align-content-md-start {
    align-content: flex-start !important;
  }

  .align-content-md-end {
    align-content: flex-end !important;
  }

  .align-content-md-center {
    align-content: center !important;
  }

  .align-content-md-between {
    align-content: space-between !important;
  }

  .align-content-md-around {
    align-content: space-around !important;
  }

  .align-content-md-stretch {
    align-content: stretch !important;
  }

  .align-self-md-auto {
    align-self: auto !important;
  }

  .align-self-md-start {
    align-self: flex-start !important;
  }

  .align-self-md-end {
    align-self: flex-end !important;
  }

  .align-self-md-center {
    align-self: center !important;
  }

  .align-self-md-baseline {
    align-self: baseline !important;
  }

  .align-self-md-stretch {
    align-self: stretch !important;
  }
}

@media (min-width: 1024px) {
  .flex-lg-row {
    flex-direction: row !important;
  }

  .flex-lg-column {
    flex-direction: column !important;
  }

  .flex-lg-row-reverse {
    flex-direction: row-reverse !important;
  }

  .flex-lg-column-reverse {
    flex-direction: column-reverse !important;
  }

  .flex-lg-wrap {
    flex-wrap: wrap !important;
  }

  .flex-lg-nowrap {
    flex-wrap: nowrap !important;
  }

  .flex-lg-wrap-reverse {
    flex-wrap: wrap-reverse !important;
  }

  .flex-lg-fill {
    flex: 1 1 auto !important;
  }

  .flex-lg-grow-0 {
    flex-grow: 0 !important;
  }

  .flex-lg-grow-1 {
    flex-grow: 1 !important;
  }

  .flex-lg-shrink-0 {
    flex-shrink: 0 !important;
  }

  .flex-lg-shrink-1 {
    flex-shrink: 1 !important;
  }

  .justify-content-lg-start {
    justify-content: flex-start !important;
  }

  .justify-content-lg-end {
    justify-content: flex-end !important;
  }

  .justify-content-lg-center {
    justify-content: center !important;
  }

  .justify-content-lg-between {
    justify-content: space-between !important;
  }

  .justify-content-lg-around {
    justify-content: space-around !important;
  }

  .align-items-lg-start {
    align-items: flex-start !important;
  }

  .align-items-lg-end {
    align-items: flex-end !important;
  }

  .align-items-lg-center {
    align-items: center !important;
  }

  .align-items-lg-baseline {
    align-items: baseline !important;
  }

  .align-items-lg-stretch {
    align-items: stretch !important;
  }

  .align-content-lg-start {
    align-content: flex-start !important;
  }

  .align-content-lg-end {
    align-content: flex-end !important;
  }

  .align-content-lg-center {
    align-content: center !important;
  }

  .align-content-lg-between {
    align-content: space-between !important;
  }

  .align-content-lg-around {
    align-content: space-around !important;
  }

  .align-content-lg-stretch {
    align-content: stretch !important;
  }

  .align-self-lg-auto {
    align-self: auto !important;
  }

  .align-self-lg-start {
    align-self: flex-start !important;
  }

  .align-self-lg-end {
    align-self: flex-end !important;
  }

  .align-self-lg-center {
    align-self: center !important;
  }

  .align-self-lg-baseline {
    align-self: baseline !important;
  }

  .align-self-lg-stretch {
    align-self: stretch !important;
  }
}

@media (min-width: 1281px) {
  .flex-xl-row {
    flex-direction: row !important;
  }

  .flex-xl-column {
    flex-direction: column !important;
  }

  .flex-xl-row-reverse {
    flex-direction: row-reverse !important;
  }

  .flex-xl-column-reverse {
    flex-direction: column-reverse !important;
  }

  .flex-xl-wrap {
    flex-wrap: wrap !important;
  }

  .flex-xl-nowrap {
    flex-wrap: nowrap !important;
  }

  .flex-xl-wrap-reverse {
    flex-wrap: wrap-reverse !important;
  }

  .flex-xl-fill {
    flex: 1 1 auto !important;
  }

  .flex-xl-grow-0 {
    flex-grow: 0 !important;
  }

  .flex-xl-grow-1 {
    flex-grow: 1 !important;
  }

  .flex-xl-shrink-0 {
    flex-shrink: 0 !important;
  }

  .flex-xl-shrink-1 {
    flex-shrink: 1 !important;
  }

  .justify-content-xl-start {
    justify-content: flex-start !important;
  }

  .justify-content-xl-end {
    justify-content: flex-end !important;
  }

  .justify-content-xl-center {
    justify-content: center !important;
  }

  .justify-content-xl-between {
    justify-content: space-between !important;
  }

  .justify-content-xl-around {
    justify-content: space-around !important;
  }

  .align-items-xl-start {
    align-items: flex-start !important;
  }

  .align-items-xl-end {
    align-items: flex-end !important;
  }

  .align-items-xl-center {
    align-items: center !important;
  }

  .align-items-xl-baseline {
    align-items: baseline !important;
  }

  .align-items-xl-stretch {
    align-items: stretch !important;
  }

  .align-content-xl-start {
    align-content: flex-start !important;
  }

  .align-content-xl-end {
    align-content: flex-end !important;
  }

  .align-content-xl-center {
    align-content: center !important;
  }

  .align-content-xl-between {
    align-content: space-between !important;
  }

  .align-content-xl-around {
    align-content: space-around !important;
  }

  .align-content-xl-stretch {
    align-content: stretch !important;
  }

  .align-self-xl-auto {
    align-self: auto !important;
  }

  .align-self-xl-start {
    align-self: flex-start !important;
  }

  .align-self-xl-end {
    align-self: flex-end !important;
  }

  .align-self-xl-center {
    align-self: center !important;
  }

  .align-self-xl-baseline {
    align-self: baseline !important;
  }

  .align-self-xl-stretch {
    align-self: stretch !important;
  }
}

.float-left {
  float: left !important;
}

.float-right {
  float: right !important;
}

.float-none {
  float: none !important;
}

@media (min-width: 577px) {
  .float-sm-left {
    float: left !important;
  }

  .float-sm-right {
    float: right !important;
  }

  .float-sm-none {
    float: none !important;
  }
}

@media (min-width: 769px) {
  .float-md-left {
    float: left !important;
  }

  .float-md-right {
    float: right !important;
  }

  .float-md-none {
    float: none !important;
  }
}

@media (min-width: 1024px) {
  .float-lg-left {
    float: left !important;
  }

  .float-lg-right {
    float: right !important;
  }

  .float-lg-none {
    float: none !important;
  }
}

@media (min-width: 1281px) {
  .float-xl-left {
    float: left !important;
  }

  .float-xl-right {
    float: right !important;
  }

  .float-xl-none {
    float: none !important;
  }
}

.overflow-auto {
  overflow: auto !important;
}

.overflow-hidden {
  overflow: hidden !important;
}

.position-static {
  position: static !important;
}

.position-relative {
  position: relative !important;
}

.position-absolute {
  position: absolute !important;
}

.position-fixed {
  position: fixed !important;
}

.position-sticky {
  position: sticky !important;
}

.fixed-top {
  position: fixed;
  top: 0;
  right: 0;
  left: 0;
  z-index: 1030;
}

.fixed-bottom {
  position: fixed;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1030;
}

@supports (position: sticky) {
  .sticky-top {
    position: sticky;
    top: 0;
    z-index: 1020;
  }
}

.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

.sr-only-focusable:active,
.sr-only-focusable:focus {
  position: static;
  width: auto;
  height: auto;
  overflow: visible;
  clip: auto;
  white-space: normal;
}

.shadow-sm {
  box-shadow: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075) !important;
}

.shadow {
  box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15) !important;
}

.shadow-lg {
  box-shadow: 0 1rem 3rem rgba(0, 0, 0, 0.175) !important;
}

.shadow-none {
  box-shadow: none !important;
}

.w-25 {
  width: 25% !important;
}

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

.w-75 {
  width: 75% !important;
}

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

.w-auto {
  width: auto !important;
}

.h-25 {
  height: 25% !important;
}

.h-50 {
  height: 50% !important;
}

.h-75 {
  height: 75% !important;
}

.h-100 {
  height: 100% !important;
}

.h-auto {
  height: auto !important;
}

.mw-100 {
  max-width: 100% !important;
}

.mh-100 {
  max-height: 100% !important;
}

.min-vw-100 {
  min-width: 100vw !important;
}

.min-vh-100 {
  min-height: 100vh !important;
}

.vw-100 {
  width: 100vw !important;
}

.vh-100 {
  height: 100vh !important;
}

.stretched-link::after {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1;
  pointer-events: auto;
  content: "";
  background-color: rgba(0, 0, 0, 0);
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.mt-n1,
.my-n1 {
  margin-top: -1rem !important;
}

.mr-n1,
.mx-n1 {
  margin-right: -1rem !important;
}

.mb-n1,
.my-n1 {
  margin-bottom: -1rem !important;
}

.ml-n1,
.mx-n1 {
  margin-left: -1rem !important;
}

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

.mt-n2,
.my-n2 {
  margin-top: -2rem !important;
}

.mr-n2,
.mx-n2 {
  margin-right: -2rem !important;
}

.mb-n2,
.my-n2 {
  margin-bottom: -2rem !important;
}

.ml-n2,
.mx-n2 {
  margin-left: -2rem !important;
}

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

.mt-n3,
.my-n3 {
  margin-top: -3rem !important;
}

.mr-n3,
.mx-n3 {
  margin-right: -3rem !important;
}

.mb-n3,
.my-n3 {
  margin-bottom: -3rem !important;
}

.ml-n3,
.mx-n3 {
  margin-left: -3rem !important;
}

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

.mt-n4,
.my-n4 {
  margin-top: -4rem !important;
}

.mr-n4,
.mx-n4 {
  margin-right: -4rem !important;
}

.mb-n4,
.my-n4 {
  margin-bottom: -4rem !important;
}

.ml-n4,
.mx-n4 {
  margin-left: -4rem !important;
}

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

.mt-n5,
.my-n5 {
  margin-top: -5rem !important;
}

.mr-n5,
.mx-n5 {
  margin-right: -5rem !important;
}

.mb-n5,
.my-n5 {
  margin-bottom: -5rem !important;
}

.ml-n5,
.mx-n5 {
  margin-left: -5rem !important;
}

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

.mt-n15,
.my-n15 {
  margin-top: -1.5rem !important;
}

.mr-n15,
.mx-n15 {
  margin-right: -1.5rem !important;
}

.mb-n15,
.my-n15 {
  margin-bottom: -1.5rem !important;
}

.ml-n15,
.mx-n15 {
  margin-left: -1.5rem !important;
}

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

.mt-n25,
.my-n25 {
  margin-top: -2.5rem !important;
}

.mr-n25,
.mx-n25 {
  margin-right: -2.5rem !important;
}

.mb-n25,
.my-n25 {
  margin-bottom: -2.5rem !important;
}

.ml-n25,
.mx-n25 {
  margin-left: -2.5rem !important;
}

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

.mt-n35,
.my-n35 {
  margin-top: -3.5rem !important;
}

.mr-n35,
.mx-n35 {
  margin-right: -3.5rem !important;
}

.mb-n35,
.my-n35 {
  margin-bottom: -3.5rem !important;
}

.ml-n35,
.mx-n35 {
  margin-left: -3.5rem !important;
}

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

.mt-n45,
.my-n45 {
  margin-top: -4.5rem !important;
}

.mr-n45,
.mx-n45 {
  margin-right: -4.5rem !important;
}

.mb-n45,
.my-n45 {
  margin-bottom: -4.5rem !important;
}

.ml-n45,
.mx-n45 {
  margin-left: -4.5rem !important;
}

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

.mt-n55,
.my-n55 {
  margin-top: -5.5rem !important;
}

.mr-n55,
.mx-n55 {
  margin-right: -5.5rem !important;
}

.mb-n55,
.my-n55 {
  margin-bottom: -5.5rem !important;
}

.ml-n55,
.mx-n55 {
  margin-left: -5.5rem !important;
}

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

.mt-n6,
.my-n6 {
  margin-top: -6rem !important;
}

.mr-n6,
.mx-n6 {
  margin-right: -6rem !important;
}

.mb-n6,
.my-n6 {
  margin-bottom: -6rem !important;
}

.ml-n6,
.mx-n6 {
  margin-left: -6rem !important;
}

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

.mt-n65,
.my-n65 {
  margin-top: -6.5rem !important;
}

.mr-n65,
.mx-n65 {
  margin-right: -6.5rem !important;
}

.mb-n65,
.my-n65 {
  margin-bottom: -6.5rem !important;
}

.ml-n65,
.mx-n65 {
  margin-left: -6.5rem !important;
}

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

.mt-n7,
.my-n7 {
  margin-top: -7rem !important;
}

.mr-n7,
.mx-n7 {
  margin-right: -7rem !important;
}

.mb-n7,
.my-n7 {
  margin-bottom: -7rem !important;
}

.ml-n7,
.mx-n7 {
  margin-left: -7rem !important;
}

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

.mt-n75,
.my-n75 {
  margin-top: -7.5rem !important;
}

.mr-n75,
.mx-n75 {
  margin-right: -7.5rem !important;
}

.mb-n75,
.my-n75 {
  margin-bottom: -7.5rem !important;
}

.ml-n75,
.mx-n75 {
  margin-left: -7.5rem !important;
}

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

.mt-n8,
.my-n8 {
  margin-top: -8rem !important;
}

.mr-n8,
.mx-n8 {
  margin-right: -8rem !important;
}

.mb-n8,
.my-n8 {
  margin-bottom: -8rem !important;
}

.ml-n8,
.mx-n8 {
  margin-left: -8rem !important;
}

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

.mt-n85,
.my-n85 {
  margin-top: -8.5rem !important;
}

.mr-n85,
.mx-n85 {
  margin-right: -8.5rem !important;
}

.mb-n85,
.my-n85 {
  margin-bottom: -8.5rem !important;
}

.ml-n85,
.mx-n85 {
  margin-left: -8.5rem !important;
}

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

.mt-n9,
.my-n9 {
  margin-top: -9rem !important;
}

.mr-n9,
.mx-n9 {
  margin-right: -9rem !important;
}

.mb-n9,
.my-n9 {
  margin-bottom: -9rem !important;
}

.ml-n9,
.mx-n9 {
  margin-left: -9rem !important;
}

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

.mt-n10,
.my-n10 {
  margin-top: -10rem !important;
}

.mr-n10,
.mx-n10 {
  margin-right: -10rem !important;
}

.mb-n10,
.my-n10 {
  margin-bottom: -10rem !important;
}

.ml-n10,
.mx-n10 {
  margin-left: -10rem !important;
}

.m-auto {
  margin: auto !important;
}

.mt-auto,
.my-auto {
  margin-top: auto !important;
}

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

.mb-auto,
.my-auto {
  margin-bottom: auto !important;
}

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

@media (min-width: 577px) {
  .m-sm-0 {
    margin: 0 !important;
  }

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

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

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

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

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

  .mt-sm-1,
  .my-sm-1 {
    margin-top: 1rem !important;
  }

  .mr-sm-1,
  .mx-sm-1 {
    margin-right: 1rem !important;
  }

  .mb-sm-1,
  .my-sm-1 {
    margin-bottom: 1rem !important;
  }

  .ml-sm-1,
  .mx-sm-1 {
    margin-left: 1rem !important;
  }

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

  .mt-sm-2,
  .my-sm-2 {
    margin-top: 2rem !important;
  }

  .mr-sm-2,
  .mx-sm-2 {
    margin-right: 2rem !important;
  }

  .mb-sm-2,
  .my-sm-2 {
    margin-bottom: 2rem !important;
  }

  .ml-sm-2,
  .mx-sm-2 {
    margin-left: 2rem !important;
  }

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

  .mt-sm-3,
  .my-sm-3 {
    margin-top: 3rem !important;
  }

  .mr-sm-3,
  .mx-sm-3 {
    margin-right: 3rem !important;
  }

  .mb-sm-3,
  .my-sm-3 {
    margin-bottom: 3rem !important;
  }

  .ml-sm-3,
  .mx-sm-3 {
    margin-left: 3rem !important;
  }

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

  .mt-sm-4,
  .my-sm-4 {
    margin-top: 4rem !important;
  }

  .mr-sm-4,
  .mx-sm-4 {
    margin-right: 4rem !important;
  }

  .mb-sm-4,
  .my-sm-4 {
    margin-bottom: 4rem !important;
  }

  .ml-sm-4,
  .mx-sm-4 {
    margin-left: 4rem !important;
  }

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

  .mt-sm-5,
  .my-sm-5 {
    margin-top: 5rem !important;
  }

  .mr-sm-5,
  .mx-sm-5 {
    margin-right: 5rem !important;
  }

  .mb-sm-5,
  .my-sm-5 {
    margin-bottom: 5rem !important;
  }

  .ml-sm-5,
  .mx-sm-5 {
    margin-left: 5rem !important;
  }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

  .mt-sm-6,
  .my-sm-6 {
    margin-top: 6rem !important;
  }

  .mr-sm-6,
  .mx-sm-6 {
    margin-right: 6rem !important;
  }

  .mb-sm-6,
  .my-sm-6 {
    margin-bottom: 6rem !important;
  }

  .ml-sm-6,
  .mx-sm-6 {
    margin-left: 6rem !important;
  }

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

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

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

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

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

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

  .mt-sm-7,
  .my-sm-7 {
    margin-top: 7rem !important;
  }

  .mr-sm-7,
  .mx-sm-7 {
    margin-right: 7rem !important;
  }

  .mb-sm-7,
  .my-sm-7 {
    margin-bottom: 7rem !important;
  }

  .ml-sm-7,
  .mx-sm-7 {
    margin-left: 7rem !important;
  }

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

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

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

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

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

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

  .mt-sm-8,
  .my-sm-8 {
    margin-top: 8rem !important;
  }

  .mr-sm-8,
  .mx-sm-8 {
    margin-right: 8rem !important;
  }

  .mb-sm-8,
  .my-sm-8 {
    margin-bottom: 8rem !important;
  }

  .ml-sm-8,
  .mx-sm-8 {
    margin-left: 8rem !important;
  }

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

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

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

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

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

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

  .mt-sm-9,
  .my-sm-9 {
    margin-top: 9rem !important;
  }

  .mr-sm-9,
  .mx-sm-9 {
    margin-right: 9rem !important;
  }

  .mb-sm-9,
  .my-sm-9 {
    margin-bottom: 9rem !important;
  }

  .ml-sm-9,
  .mx-sm-9 {
    margin-left: 9rem !important;
  }

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

  .mt-sm-10,
  .my-sm-10 {
    margin-top: 10rem !important;
  }

  .mr-sm-10,
  .mx-sm-10 {
    margin-right: 10rem !important;
  }

  .mb-sm-10,
  .my-sm-10 {
    margin-bottom: 10rem !important;
  }

  .ml-sm-10,
  .mx-sm-10 {
    margin-left: 10rem !important;
  }

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

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

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

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

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

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

  .pt-sm-1,
  .py-sm-1 {
    padding-top: 1rem !important;
  }

  .pr-sm-1,
  .px-sm-1 {
    padding-right: 1rem !important;
  }

  .pb-sm-1,
  .py-sm-1 {
    padding-bottom: 1rem !important;
  }

  .pl-sm-1,
  .px-sm-1 {
    padding-left: 1rem !important;
  }

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

  .pt-sm-2,
  .py-sm-2 {
    padding-top: 2rem !important;
  }

  .pr-sm-2,
  .px-sm-2 {
    padding-right: 2rem !important;
  }

  .pb-sm-2,
  .py-sm-2 {
    padding-bottom: 2rem !important;
  }

  .pl-sm-2,
  .px-sm-2 {
    padding-left: 2rem !important;
  }

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

  .pt-sm-3,
  .py-sm-3 {
    padding-top: 3rem !important;
  }

  .pr-sm-3,
  .px-sm-3 {
    padding-right: 3rem !important;
  }

  .pb-sm-3,
  .py-sm-3 {
    padding-bottom: 3rem !important;
  }

  .pl-sm-3,
  .px-sm-3 {
    padding-left: 3rem !important;
  }

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

  .pt-sm-4,
  .py-sm-4 {
    padding-top: 4rem !important;
  }

  .pr-sm-4,
  .px-sm-4 {
    padding-right: 4rem !important;
  }

  .pb-sm-4,
  .py-sm-4 {
    padding-bottom: 4rem !important;
  }

  .pl-sm-4,
  .px-sm-4 {
    padding-left: 4rem !important;
  }

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

  .pt-sm-5,
  .py-sm-5 {
    padding-top: 5rem !important;
  }

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

  .pb-sm-5,
  .py-sm-5 {
    padding-bottom: 5rem !important;
  }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

  .pt-sm-6,
  .py-sm-6 {
    padding-top: 6rem !important;
  }

  .pr-sm-6,
  .px-sm-6 {
    padding-right: 6rem !important;
  }

  .pb-sm-6,
  .py-sm-6 {
    padding-bottom: 6rem !important;
  }

  .pl-sm-6,
  .px-sm-6 {
    padding-left: 6rem !important;
  }

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

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

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

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

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

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

  .pt-sm-7,
  .py-sm-7 {
    padding-top: 7rem !important;
  }

  .pr-sm-7,
  .px-sm-7 {
    padding-right: 7rem !important;
  }

  .pb-sm-7,
  .py-sm-7 {
    padding-bottom: 7rem !important;
  }

  .pl-sm-7,
  .px-sm-7 {
    padding-left: 7rem !important;
  }

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

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

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

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

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

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

  .pt-sm-8,
  .py-sm-8 {
    padding-top: 8rem !important;
  }

  .pr-sm-8,
  .px-sm-8 {
    padding-right: 8rem !important;
  }

  .pb-sm-8,
  .py-sm-8 {
    padding-bottom: 8rem !important;
  }

  .pl-sm-8,
  .px-sm-8 {
    padding-left: 8rem !important;
  }

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

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

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

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

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

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

  .pt-sm-9,
  .py-sm-9 {
    padding-top: 9rem !important;
  }

  .pr-sm-9,
  .px-sm-9 {
    padding-right: 9rem !important;
  }

  .pb-sm-9,
  .py-sm-9 {
    padding-bottom: 9rem !important;
  }

  .pl-sm-9,
  .px-sm-9 {
    padding-left: 9rem !important;
  }

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

  .pt-sm-10,
  .py-sm-10 {
    padding-top: 10rem !important;
  }

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

  .pb-sm-10,
  .py-sm-10 {
    padding-bottom: 10rem !important;
  }

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

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

  .mt-sm-n1,
  .my-sm-n1 {
    margin-top: -1rem !important;
  }

  .mr-sm-n1,
  .mx-sm-n1 {
    margin-right: -1rem !important;
  }

  .mb-sm-n1,
  .my-sm-n1 {
    margin-bottom: -1rem !important;
  }

  .ml-sm-n1,
  .mx-sm-n1 {
    margin-left: -1rem !important;
  }

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

  .mt-sm-n2,
  .my-sm-n2 {
    margin-top: -2rem !important;
  }

  .mr-sm-n2,
  .mx-sm-n2 {
    margin-right: -2rem !important;
  }

  .mb-sm-n2,
  .my-sm-n2 {
    margin-bottom: -2rem !important;
  }

  .ml-sm-n2,
  .mx-sm-n2 {
    margin-left: -2rem !important;
  }

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

  .mt-sm-n3,
  .my-sm-n3 {
    margin-top: -3rem !important;
  }

  .mr-sm-n3,
  .mx-sm-n3 {
    margin-right: -3rem !important;
  }

  .mb-sm-n3,
  .my-sm-n3 {
    margin-bottom: -3rem !important;
  }

  .ml-sm-n3,
  .mx-sm-n3 {
    margin-left: -3rem !important;
  }

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

  .mt-sm-n4,
  .my-sm-n4 {
    margin-top: -4rem !important;
  }

  .mr-sm-n4,
  .mx-sm-n4 {
    margin-right: -4rem !important;
  }

  .mb-sm-n4,
  .my-sm-n4 {
    margin-bottom: -4rem !important;
  }

  .ml-sm-n4,
  .mx-sm-n4 {
    margin-left: -4rem !important;
  }

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

  .mt-sm-n5,
  .my-sm-n5 {
    margin-top: -5rem !important;
  }

  .mr-sm-n5,
  .mx-sm-n5 {
    margin-right: -5rem !important;
  }

  .mb-sm-n5,
  .my-sm-n5 {
    margin-bottom: -5rem !important;
  }

  .ml-sm-n5,
  .mx-sm-n5 {
    margin-left: -5rem !important;
  }

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

  .mt-sm-n15,
  .my-sm-n15 {
    margin-top: -1.5rem !important;
  }

  .mr-sm-n15,
  .mx-sm-n15 {
    margin-right: -1.5rem !important;
  }

  .mb-sm-n15,
  .my-sm-n15 {
    margin-bottom: -1.5rem !important;
  }

  .ml-sm-n15,
  .mx-sm-n15 {
    margin-left: -1.5rem !important;
  }

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

  .mt-sm-n25,
  .my-sm-n25 {
    margin-top: -2.5rem !important;
  }

  .mr-sm-n25,
  .mx-sm-n25 {
    margin-right: -2.5rem !important;
  }

  .mb-sm-n25,
  .my-sm-n25 {
    margin-bottom: -2.5rem !important;
  }

  .ml-sm-n25,
  .mx-sm-n25 {
    margin-left: -2.5rem !important;
  }

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

  .mt-sm-n35,
  .my-sm-n35 {
    margin-top: -3.5rem !important;
  }

  .mr-sm-n35,
  .mx-sm-n35 {
    margin-right: -3.5rem !important;
  }

  .mb-sm-n35,
  .my-sm-n35 {
    margin-bottom: -3.5rem !important;
  }

  .ml-sm-n35,
  .mx-sm-n35 {
    margin-left: -3.5rem !important;
  }

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

  .mt-sm-n45,
  .my-sm-n45 {
    margin-top: -4.5rem !important;
  }

  .mr-sm-n45,
  .mx-sm-n45 {
    margin-right: -4.5rem !important;
  }

  .mb-sm-n45,
  .my-sm-n45 {
    margin-bottom: -4.5rem !important;
  }

  .ml-sm-n45,
  .mx-sm-n45 {
    margin-left: -4.5rem !important;
  }

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

  .mt-sm-n55,
  .my-sm-n55 {
    margin-top: -5.5rem !important;
  }

  .mr-sm-n55,
  .mx-sm-n55 {
    margin-right: -5.5rem !important;
  }

  .mb-sm-n55,
  .my-sm-n55 {
    margin-bottom: -5.5rem !important;
  }

  .ml-sm-n55,
  .mx-sm-n55 {
    margin-left: -5.5rem !important;
  }

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

  .mt-sm-n6,
  .my-sm-n6 {
    margin-top: -6rem !important;
  }

  .mr-sm-n6,
  .mx-sm-n6 {
    margin-right: -6rem !important;
  }

  .mb-sm-n6,
  .my-sm-n6 {
    margin-bottom: -6rem !important;
  }

  .ml-sm-n6,
  .mx-sm-n6 {
    margin-left: -6rem !important;
  }

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

  .mt-sm-n65,
  .my-sm-n65 {
    margin-top: -6.5rem !important;
  }

  .mr-sm-n65,
  .mx-sm-n65 {
    margin-right: -6.5rem !important;
  }

  .mb-sm-n65,
  .my-sm-n65 {
    margin-bottom: -6.5rem !important;
  }

  .ml-sm-n65,
  .mx-sm-n65 {
    margin-left: -6.5rem !important;
  }

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

  .mt-sm-n7,
  .my-sm-n7 {
    margin-top: -7rem !important;
  }

  .mr-sm-n7,
  .mx-sm-n7 {
    margin-right: -7rem !important;
  }

  .mb-sm-n7,
  .my-sm-n7 {
    margin-bottom: -7rem !important;
  }

  .ml-sm-n7,
  .mx-sm-n7 {
    margin-left: -7rem !important;
  }

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

  .mt-sm-n75,
  .my-sm-n75 {
    margin-top: -7.5rem !important;
  }

  .mr-sm-n75,
  .mx-sm-n75 {
    margin-right: -7.5rem !important;
  }

  .mb-sm-n75,
  .my-sm-n75 {
    margin-bottom: -7.5rem !important;
  }

  .ml-sm-n75,
  .mx-sm-n75 {
    margin-left: -7.5rem !important;
  }

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

  .mt-sm-n8,
  .my-sm-n8 {
    margin-top: -8rem !important;
  }

  .mr-sm-n8,
  .mx-sm-n8 {
    margin-right: -8rem !important;
  }

  .mb-sm-n8,
  .my-sm-n8 {
    margin-bottom: -8rem !important;
  }

  .ml-sm-n8,
  .mx-sm-n8 {
    margin-left: -8rem !important;
  }

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

  .mt-sm-n85,
  .my-sm-n85 {
    margin-top: -8.5rem !important;
  }

  .mr-sm-n85,
  .mx-sm-n85 {
    margin-right: -8.5rem !important;
  }

  .mb-sm-n85,
  .my-sm-n85 {
    margin-bottom: -8.5rem !important;
  }

  .ml-sm-n85,
  .mx-sm-n85 {
    margin-left: -8.5rem !important;
  }

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

  .mt-sm-n9,
  .my-sm-n9 {
    margin-top: -9rem !important;
  }

  .mr-sm-n9,
  .mx-sm-n9 {
    margin-right: -9rem !important;
  }

  .mb-sm-n9,
  .my-sm-n9 {
    margin-bottom: -9rem !important;
  }

  .ml-sm-n9,
  .mx-sm-n9 {
    margin-left: -9rem !important;
  }

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

  .mt-sm-n10,
  .my-sm-n10 {
    margin-top: -10rem !important;
  }

  .mr-sm-n10,
  .mx-sm-n10 {
    margin-right: -10rem !important;
  }

  .mb-sm-n10,
  .my-sm-n10 {
    margin-bottom: -10rem !important;
  }

  .ml-sm-n10,
  .mx-sm-n10 {
    margin-left: -10rem !important;
  }

  .m-sm-auto {
    margin: auto !important;
  }

  .mt-sm-auto,
  .my-sm-auto {
    margin-top: auto !important;
  }

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

  .mb-sm-auto,
  .my-sm-auto {
    margin-bottom: auto !important;
  }

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

@media (min-width: 769px) {
  .m-md-0 {
    margin: 0 !important;
  }

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

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

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

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

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

  .mt-md-1,
  .my-md-1 {
    margin-top: 1rem !important;
  }

  .mr-md-1,
  .mx-md-1 {
    margin-right: 1rem !important;
  }

  .mb-md-1,
  .my-md-1 {
    margin-bottom: 1rem !important;
  }

  .ml-md-1,
  .mx-md-1 {
    margin-left: 1rem !important;
  }

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

  .mt-md-2,
  .my-md-2 {
    margin-top: 2rem !important;
  }

  .mr-md-2,
  .mx-md-2 {
    margin-right: 2rem !important;
  }

  .mb-md-2,
  .my-md-2 {
    margin-bottom: 2rem !important;
  }

  .ml-md-2,
  .mx-md-2 {
    margin-left: 2rem !important;
  }

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

  .mt-md-3,
  .my-md-3 {
    margin-top: 3rem !important;
  }

  .mr-md-3,
  .mx-md-3 {
    margin-right: 3rem !important;
  }

  .mb-md-3,
  .my-md-3 {
    margin-bottom: 3rem !important;
  }

  .ml-md-3,
  .mx-md-3 {
    margin-left: 3rem !important;
  }

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

  .mt-md-4,
  .my-md-4 {
    margin-top: 4rem !important;
  }

  .mr-md-4,
  .mx-md-4 {
    margin-right: 4rem !important;
  }

  .mb-md-4,
  .my-md-4 {
    margin-bottom: 4rem !important;
  }

  .ml-md-4,
  .mx-md-4 {
    margin-left: 4rem !important;
  }

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

  .mt-md-5,
  .my-md-5 {
    margin-top: 5rem !important;
  }

  .mr-md-5,
  .mx-md-5 {
    margin-right: 5rem !important;
  }

  .mb-md-5,
  .my-md-5 {
    margin-bottom: 5rem !important;
  }

  .ml-md-5,
  .mx-md-5 {
    margin-left: 5rem !important;
  }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

  .mt-md-6,
  .my-md-6 {
    margin-top: 6rem !important;
  }

  .mr-md-6,
  .mx-md-6 {
    margin-right: 6rem !important;
  }

  .mb-md-6,
  .my-md-6 {
    margin-bottom: 6rem !important;
  }

  .ml-md-6,
  .mx-md-6 {
    margin-left: 6rem !important;
  }

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

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

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

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

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

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

  .mt-md-7,
  .my-md-7 {
    margin-top: 7rem !important;
  }

  .mr-md-7,
  .mx-md-7 {
    margin-right: 7rem !important;
  }

  .mb-md-7,
  .my-md-7 {
    margin-bottom: 7rem !important;
  }

  .ml-md-7,
  .mx-md-7 {
    margin-left: 7rem !important;
  }

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

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

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

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

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

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

  .mt-md-8,
  .my-md-8 {
    margin-top: 8rem !important;
  }

  .mr-md-8,
  .mx-md-8 {
    margin-right: 8rem !important;
  }

  .mb-md-8,
  .my-md-8 {
    margin-bottom: 8rem !important;
  }

  .ml-md-8,
  .mx-md-8 {
    margin-left: 8rem !important;
  }

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

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

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

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

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

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

  .mt-md-9,
  .my-md-9 {
    margin-top: 9rem !important;
  }

  .mr-md-9,
  .mx-md-9 {
    margin-right: 9rem !important;
  }

  .mb-md-9,
  .my-md-9 {
    margin-bottom: 9rem !important;
  }

  .ml-md-9,
  .mx-md-9 {
    margin-left: 9rem !important;
  }

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

  .mt-md-10,
  .my-md-10 {
    margin-top: 10rem !important;
  }

  .mr-md-10,
  .mx-md-10 {
    margin-right: 10rem !important;
  }

  .mb-md-10,
  .my-md-10 {
    margin-bottom: 10rem !important;
  }

  .ml-md-10,
  .mx-md-10 {
    margin-left: 10rem !important;
  }

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

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

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

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

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

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

  .pt-md-1,
  .py-md-1 {
    padding-top: 1rem !important;
  }

  .pr-md-1,
  .px-md-1 {
    padding-right: 1rem !important;
  }

  .pb-md-1,
  .py-md-1 {
    padding-bottom: 1rem !important;
  }

  .pl-md-1,
  .px-md-1 {
    padding-left: 1rem !important;
  }

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

  .pt-md-2,
  .py-md-2 {
    padding-top: 2rem !important;
  }

  .pr-md-2,
  .px-md-2 {
    padding-right: 2rem !important;
  }

  .pb-md-2,
  .py-md-2 {
    padding-bottom: 2rem !important;
  }

  .pl-md-2,
  .px-md-2 {
    padding-left: 2rem !important;
  }

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

  .pt-md-3,
  .py-md-3 {
    padding-top: 3rem !important;
  }

  .pr-md-3,
  .px-md-3 {
    padding-right: 3rem !important;
  }

  .pb-md-3,
  .py-md-3 {
    padding-bottom: 3rem !important;
  }

  .pl-md-3,
  .px-md-3 {
    padding-left: 3rem !important;
  }

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

  .pt-md-4,
  .py-md-4 {
    padding-top: 4rem !important;
  }

  .pr-md-4,
  .px-md-4 {
    padding-right: 4rem !important;
  }

  .pb-md-4,
  .py-md-4 {
    padding-bottom: 4rem !important;
  }

  .pl-md-4,
  .px-md-4 {
    padding-left: 4rem !important;
  }

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

  .pt-md-5,
  .py-md-5 {
    padding-top: 5rem !important;
  }

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

  .pb-md-5,
  .py-md-5 {
    padding-bottom: 5rem !important;
  }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

  .pt-md-6,
  .py-md-6 {
    padding-top: 6rem !important;
  }

  .pr-md-6,
  .px-md-6 {
    padding-right: 6rem !important;
  }

  .pb-md-6,
  .py-md-6 {
    padding-bottom: 6rem !important;
  }

  .pl-md-6,
  .px-md-6 {
    padding-left: 6rem !important;
  }

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

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

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

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

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

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

  .pt-md-7,
  .py-md-7 {
    padding-top: 7rem !important;
  }

  .pr-md-7,
  .px-md-7 {
    padding-right: 7rem !important;
  }

  .pb-md-7,
  .py-md-7 {
    padding-bottom: 7rem !important;
  }

  .pl-md-7,
  .px-md-7 {
    padding-left: 7rem !important;
  }

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

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

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

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

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

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

  .pt-md-8,
  .py-md-8 {
    padding-top: 8rem !important;
  }

  .pr-md-8,
  .px-md-8 {
    padding-right: 8rem !important;
  }

  .pb-md-8,
  .py-md-8 {
    padding-bottom: 8rem !important;
  }

  .pl-md-8,
  .px-md-8 {
    padding-left: 8rem !important;
  }

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

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

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

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

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

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

  .pt-md-9,
  .py-md-9 {
    padding-top: 9rem !important;
  }

  .pr-md-9,
  .px-md-9 {
    padding-right: 9rem !important;
  }

  .pb-md-9,
  .py-md-9 {
    padding-bottom: 9rem !important;
  }

  .pl-md-9,
  .px-md-9 {
    padding-left: 9rem !important;
  }

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

  .pt-md-10,
  .py-md-10 {
    padding-top: 10rem !important;
  }

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

  .pb-md-10,
  .py-md-10 {
    padding-bottom: 10rem !important;
  }

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

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

  .mt-md-n1,
  .my-md-n1 {
    margin-top: -1rem !important;
  }

  .mr-md-n1,
  .mx-md-n1 {
    margin-right: -1rem !important;
  }

  .mb-md-n1,
  .my-md-n1 {
    margin-bottom: -1rem !important;
  }

  .ml-md-n1,
  .mx-md-n1 {
    margin-left: -1rem !important;
  }

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

  .mt-md-n2,
  .my-md-n2 {
    margin-top: -2rem !important;
  }

  .mr-md-n2,
  .mx-md-n2 {
    margin-right: -2rem !important;
  }

  .mb-md-n2,
  .my-md-n2 {
    margin-bottom: -2rem !important;
  }

  .ml-md-n2,
  .mx-md-n2 {
    margin-left: -2rem !important;
  }

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

  .mt-md-n3,
  .my-md-n3 {
    margin-top: -3rem !important;
  }

  .mr-md-n3,
  .mx-md-n3 {
    margin-right: -3rem !important;
  }

  .mb-md-n3,
  .my-md-n3 {
    margin-bottom: -3rem !important;
  }

  .ml-md-n3,
  .mx-md-n3 {
    margin-left: -3rem !important;
  }

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

  .mt-md-n4,
  .my-md-n4 {
    margin-top: -4rem !important;
  }

  .mr-md-n4,
  .mx-md-n4 {
    margin-right: -4rem !important;
  }

  .mb-md-n4,
  .my-md-n4 {
    margin-bottom: -4rem !important;
  }

  .ml-md-n4,
  .mx-md-n4 {
    margin-left: -4rem !important;
  }

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

  .mt-md-n5,
  .my-md-n5 {
    margin-top: -5rem !important;
  }

  .mr-md-n5,
  .mx-md-n5 {
    margin-right: -5rem !important;
  }

  .mb-md-n5,
  .my-md-n5 {
    margin-bottom: -5rem !important;
  }

  .ml-md-n5,
  .mx-md-n5 {
    margin-left: -5rem !important;
  }

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

  .mt-md-n15,
  .my-md-n15 {
    margin-top: -1.5rem !important;
  }

  .mr-md-n15,
  .mx-md-n15 {
    margin-right: -1.5rem !important;
  }

  .mb-md-n15,
  .my-md-n15 {
    margin-bottom: -1.5rem !important;
  }

  .ml-md-n15,
  .mx-md-n15 {
    margin-left: -1.5rem !important;
  }

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

  .mt-md-n25,
  .my-md-n25 {
    margin-top: -2.5rem !important;
  }

  .mr-md-n25,
  .mx-md-n25 {
    margin-right: -2.5rem !important;
  }

  .mb-md-n25,
  .my-md-n25 {
    margin-bottom: -2.5rem !important;
  }

  .ml-md-n25,
  .mx-md-n25 {
    margin-left: -2.5rem !important;
  }

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

  .mt-md-n35,
  .my-md-n35 {
    margin-top: -3.5rem !important;
  }

  .mr-md-n35,
  .mx-md-n35 {
    margin-right: -3.5rem !important;
  }

  .mb-md-n35,
  .my-md-n35 {
    margin-bottom: -3.5rem !important;
  }

  .ml-md-n35,
  .mx-md-n35 {
    margin-left: -3.5rem !important;
  }

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

  .mt-md-n45,
  .my-md-n45 {
    margin-top: -4.5rem !important;
  }

  .mr-md-n45,
  .mx-md-n45 {
    margin-right: -4.5rem !important;
  }

  .mb-md-n45,
  .my-md-n45 {
    margin-bottom: -4.5rem !important;
  }

  .ml-md-n45,
  .mx-md-n45 {
    margin-left: -4.5rem !important;
  }

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

  .mt-md-n55,
  .my-md-n55 {
    margin-top: -5.5rem !important;
  }

  .mr-md-n55,
  .mx-md-n55 {
    margin-right: -5.5rem !important;
  }

  .mb-md-n55,
  .my-md-n55 {
    margin-bottom: -5.5rem !important;
  }

  .ml-md-n55,
  .mx-md-n55 {
    margin-left: -5.5rem !important;
  }

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

  .mt-md-n6,
  .my-md-n6 {
    margin-top: -6rem !important;
  }

  .mr-md-n6,
  .mx-md-n6 {
    margin-right: -6rem !important;
  }

  .mb-md-n6,
  .my-md-n6 {
    margin-bottom: -6rem !important;
  }

  .ml-md-n6,
  .mx-md-n6 {
    margin-left: -6rem !important;
  }

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

  .mt-md-n65,
  .my-md-n65 {
    margin-top: -6.5rem !important;
  }

  .mr-md-n65,
  .mx-md-n65 {
    margin-right: -6.5rem !important;
  }

  .mb-md-n65,
  .my-md-n65 {
    margin-bottom: -6.5rem !important;
  }

  .ml-md-n65,
  .mx-md-n65 {
    margin-left: -6.5rem !important;
  }

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

  .mt-md-n7,
  .my-md-n7 {
    margin-top: -7rem !important;
  }

  .mr-md-n7,
  .mx-md-n7 {
    margin-right: -7rem !important;
  }

  .mb-md-n7,
  .my-md-n7 {
    margin-bottom: -7rem !important;
  }

  .ml-md-n7,
  .mx-md-n7 {
    margin-left: -7rem !important;
  }

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

  .mt-md-n75,
  .my-md-n75 {
    margin-top: -7.5rem !important;
  }

  .mr-md-n75,
  .mx-md-n75 {
    margin-right: -7.5rem !important;
  }

  .mb-md-n75,
  .my-md-n75 {
    margin-bottom: -7.5rem !important;
  }

  .ml-md-n75,
  .mx-md-n75 {
    margin-left: -7.5rem !important;
  }

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

  .mt-md-n8,
  .my-md-n8 {
    margin-top: -8rem !important;
  }

  .mr-md-n8,
  .mx-md-n8 {
    margin-right: -8rem !important;
  }

  .mb-md-n8,
  .my-md-n8 {
    margin-bottom: -8rem !important;
  }

  .ml-md-n8,
  .mx-md-n8 {
    margin-left: -8rem !important;
  }

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

  .mt-md-n85,
  .my-md-n85 {
    margin-top: -8.5rem !important;
  }

  .mr-md-n85,
  .mx-md-n85 {
    margin-right: -8.5rem !important;
  }

  .mb-md-n85,
  .my-md-n85 {
    margin-bottom: -8.5rem !important;
  }

  .ml-md-n85,
  .mx-md-n85 {
    margin-left: -8.5rem !important;
  }

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

  .mt-md-n9,
  .my-md-n9 {
    margin-top: -9rem !important;
  }

  .mr-md-n9,
  .mx-md-n9 {
    margin-right: -9rem !important;
  }

  .mb-md-n9,
  .my-md-n9 {
    margin-bottom: -9rem !important;
  }

  .ml-md-n9,
  .mx-md-n9 {
    margin-left: -9rem !important;
  }

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

  .mt-md-n10,
  .my-md-n10 {
    margin-top: -10rem !important;
  }

  .mr-md-n10,
  .mx-md-n10 {
    margin-right: -10rem !important;
  }

  .mb-md-n10,
  .my-md-n10 {
    margin-bottom: -10rem !important;
  }

  .ml-md-n10,
  .mx-md-n10 {
    margin-left: -10rem !important;
  }

  .m-md-auto {
    margin: auto !important;
  }

  .mt-md-auto,
  .my-md-auto {
    margin-top: auto !important;
  }

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

  .mb-md-auto,
  .my-md-auto {
    margin-bottom: auto !important;
  }

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

@media (min-width: 1024px) {
  .m-lg-0 {
    margin: 0 !important;
  }

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

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

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

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

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

  .mt-lg-1,
  .my-lg-1 {
    margin-top: 1rem !important;
  }

  .mr-lg-1,
  .mx-lg-1 {
    margin-right: 1rem !important;
  }

  .mb-lg-1,
  .my-lg-1 {
    margin-bottom: 1rem !important;
  }

  .ml-lg-1,
  .mx-lg-1 {
    margin-left: 1rem !important;
  }

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

  .mt-lg-2,
  .my-lg-2 {
    margin-top: 2rem !important;
  }

  .mr-lg-2,
  .mx-lg-2 {
    margin-right: 2rem !important;
  }

  .mb-lg-2,
  .my-lg-2 {
    margin-bottom: 2rem !important;
  }

  .ml-lg-2,
  .mx-lg-2 {
    margin-left: 2rem !important;
  }

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

  .mt-lg-3,
  .my-lg-3 {
    margin-top: 3rem !important;
  }

  .mr-lg-3,
  .mx-lg-3 {
    margin-right: 3rem !important;
  }

  .mb-lg-3,
  .my-lg-3 {
    margin-bottom: 3rem !important;
  }

  .ml-lg-3,
  .mx-lg-3 {
    margin-left: 3rem !important;
  }

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

  .mt-lg-4,
  .my-lg-4 {
    margin-top: 4rem !important;
  }

  .mr-lg-4,
  .mx-lg-4 {
    margin-right: 4rem !important;
  }

  .mb-lg-4,
  .my-lg-4 {
    margin-bottom: 4rem !important;
  }

  .ml-lg-4,
  .mx-lg-4 {
    margin-left: 4rem !important;
  }

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

  .mt-lg-5,
  .my-lg-5 {
    margin-top: 5rem !important;
  }

  .mr-lg-5,
  .mx-lg-5 {
    margin-right: 5rem !important;
  }

  .mb-lg-5,
  .my-lg-5 {
    margin-bottom: 5rem !important;
  }

  .ml-lg-5,
  .mx-lg-5 {
    margin-left: 5rem !important;
  }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

  .mt-lg-6,
  .my-lg-6 {
    margin-top: 6rem !important;
  }

  .mr-lg-6,
  .mx-lg-6 {
    margin-right: 6rem !important;
  }

  .mb-lg-6,
  .my-lg-6 {
    margin-bottom: 6rem !important;
  }

  .ml-lg-6,
  .mx-lg-6 {
    margin-left: 6rem !important;
  }

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

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

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

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

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

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

  .mt-lg-7,
  .my-lg-7 {
    margin-top: 7rem !important;
  }

  .mr-lg-7,
  .mx-lg-7 {
    margin-right: 7rem !important;
  }

  .mb-lg-7,
  .my-lg-7 {
    margin-bottom: 7rem !important;
  }

  .ml-lg-7,
  .mx-lg-7 {
    margin-left: 7rem !important;
  }

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

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

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

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

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

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

  .mt-lg-8,
  .my-lg-8 {
    margin-top: 8rem !important;
  }

  .mr-lg-8,
  .mx-lg-8 {
    margin-right: 8rem !important;
  }

  .mb-lg-8,
  .my-lg-8 {
    margin-bottom: 8rem !important;
  }

  .ml-lg-8,
  .mx-lg-8 {
    margin-left: 8rem !important;
  }

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

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

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

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

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

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

  .mt-lg-9,
  .my-lg-9 {
    margin-top: 9rem !important;
  }

  .mr-lg-9,
  .mx-lg-9 {
    margin-right: 9rem !important;
  }

  .mb-lg-9,
  .my-lg-9 {
    margin-bottom: 9rem !important;
  }

  .ml-lg-9,
  .mx-lg-9 {
    margin-left: 9rem !important;
  }

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

  .mt-lg-10,
  .my-lg-10 {
    margin-top: 10rem !important;
  }

  .mr-lg-10,
  .mx-lg-10 {
    margin-right: 10rem !important;
  }

  .mb-lg-10,
  .my-lg-10 {
    margin-bottom: 10rem !important;
  }

  .ml-lg-10,
  .mx-lg-10 {
    margin-left: 10rem !important;
  }

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

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

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

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

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

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

  .pt-lg-1,
  .py-lg-1 {
    padding-top: 1rem !important;
  }

  .pr-lg-1,
  .px-lg-1 {
    padding-right: 1rem !important;
  }

  .pb-lg-1,
  .py-lg-1 {
    padding-bottom: 1rem !important;
  }

  .pl-lg-1,
  .px-lg-1 {
    padding-left: 1rem !important;
  }

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

  .pt-lg-2,
  .py-lg-2 {
    padding-top: 2rem !important;
  }

  .pr-lg-2,
  .px-lg-2 {
    padding-right: 2rem !important;
  }

  .pb-lg-2,
  .py-lg-2 {
    padding-bottom: 2rem !important;
  }

  .pl-lg-2,
  .px-lg-2 {
    padding-left: 2rem !important;
  }

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

  .pt-lg-3,
  .py-lg-3 {
    padding-top: 3rem !important;
  }

  .pr-lg-3,
  .px-lg-3 {
    padding-right: 3rem !important;
  }

  .pb-lg-3,
  .py-lg-3 {
    padding-bottom: 3rem !important;
  }

  .pl-lg-3,
  .px-lg-3 {
    padding-left: 3rem !important;
  }

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

  .pt-lg-4,
  .py-lg-4 {
    padding-top: 4rem !important;
  }

  .pr-lg-4,
  .px-lg-4 {
    padding-right: 4rem !important;
  }

  .pb-lg-4,
  .py-lg-4 {
    padding-bottom: 4rem !important;
  }

  .pl-lg-4,
  .px-lg-4 {
    padding-left: 4rem !important;
  }

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

  .pt-lg-5,
  .py-lg-5 {
    padding-top: 5rem !important;
  }

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

  .pb-lg-5,
  .py-lg-5 {
    padding-bottom: 5rem !important;
  }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

  .pt-lg-6,
  .py-lg-6 {
    padding-top: 6rem !important;
  }

  .pr-lg-6,
  .px-lg-6 {
    padding-right: 6rem !important;
  }

  .pb-lg-6,
  .py-lg-6 {
    padding-bottom: 6rem !important;
  }

  .pl-lg-6,
  .px-lg-6 {
    padding-left: 6rem !important;
  }

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

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

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

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

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

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

  .pt-lg-7,
  .py-lg-7 {
    padding-top: 7rem !important;
  }

  .pr-lg-7,
  .px-lg-7 {
    padding-right: 7rem !important;
  }

  .pb-lg-7,
  .py-lg-7 {
    padding-bottom: 7rem !important;
  }

  .pl-lg-7,
  .px-lg-7 {
    padding-left: 7rem !important;
  }

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

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

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

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

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

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

  .pt-lg-8,
  .py-lg-8 {
    padding-top: 8rem !important;
  }

  .pr-lg-8,
  .px-lg-8 {
    padding-right: 8rem !important;
  }

  .pb-lg-8,
  .py-lg-8 {
    padding-bottom: 8rem !important;
  }

  .pl-lg-8,
  .px-lg-8 {
    padding-left: 8rem !important;
  }

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

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

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

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

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

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

  .pt-lg-9,
  .py-lg-9 {
    padding-top: 9rem !important;
  }

  .pr-lg-9,
  .px-lg-9 {
    padding-right: 9rem !important;
  }

  .pb-lg-9,
  .py-lg-9 {
    padding-bottom: 9rem !important;
  }

  .pl-lg-9,
  .px-lg-9 {
    padding-left: 9rem !important;
  }

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

  .pt-lg-10,
  .py-lg-10 {
    padding-top: 10rem !important;
  }

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

  .pb-lg-10,
  .py-lg-10 {
    padding-bottom: 10rem !important;
  }

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

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

  .mt-lg-n1,
  .my-lg-n1 {
    margin-top: -1rem !important;
  }

  .mr-lg-n1,
  .mx-lg-n1 {
    margin-right: -1rem !important;
  }

  .mb-lg-n1,
  .my-lg-n1 {
    margin-bottom: -1rem !important;
  }

  .ml-lg-n1,
  .mx-lg-n1 {
    margin-left: -1rem !important;
  }

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

  .mt-lg-n2,
  .my-lg-n2 {
    margin-top: -2rem !important;
  }

  .mr-lg-n2,
  .mx-lg-n2 {
    margin-right: -2rem !important;
  }

  .mb-lg-n2,
  .my-lg-n2 {
    margin-bottom: -2rem !important;
  }

  .ml-lg-n2,
  .mx-lg-n2 {
    margin-left: -2rem !important;
  }

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

  .mt-lg-n3,
  .my-lg-n3 {
    margin-top: -3rem !important;
  }

  .mr-lg-n3,
  .mx-lg-n3 {
    margin-right: -3rem !important;
  }

  .mb-lg-n3,
  .my-lg-n3 {
    margin-bottom: -3rem !important;
  }

  .ml-lg-n3,
  .mx-lg-n3 {
    margin-left: -3rem !important;
  }

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

  .mt-lg-n4,
  .my-lg-n4 {
    margin-top: -4rem !important;
  }

  .mr-lg-n4,
  .mx-lg-n4 {
    margin-right: -4rem !important;
  }

  .mb-lg-n4,
  .my-lg-n4 {
    margin-bottom: -4rem !important;
  }

  .ml-lg-n4,
  .mx-lg-n4 {
    margin-left: -4rem !important;
  }

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

  .mt-lg-n5,
  .my-lg-n5 {
    margin-top: -5rem !important;
  }

  .mr-lg-n5,
  .mx-lg-n5 {
    margin-right: -5rem !important;
  }

  .mb-lg-n5,
  .my-lg-n5 {
    margin-bottom: -5rem !important;
  }

  .ml-lg-n5,
  .mx-lg-n5 {
    margin-left: -5rem !important;
  }

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

  .mt-lg-n15,
  .my-lg-n15 {
    margin-top: -1.5rem !important;
  }

  .mr-lg-n15,
  .mx-lg-n15 {
    margin-right: -1.5rem !important;
  }

  .mb-lg-n15,
  .my-lg-n15 {
    margin-bottom: -1.5rem !important;
  }

  .ml-lg-n15,
  .mx-lg-n15 {
    margin-left: -1.5rem !important;
  }

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

  .mt-lg-n25,
  .my-lg-n25 {
    margin-top: -2.5rem !important;
  }

  .mr-lg-n25,
  .mx-lg-n25 {
    margin-right: -2.5rem !important;
  }

  .mb-lg-n25,
  .my-lg-n25 {
    margin-bottom: -2.5rem !important;
  }

  .ml-lg-n25,
  .mx-lg-n25 {
    margin-left: -2.5rem !important;
  }

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

  .mt-lg-n35,
  .my-lg-n35 {
    margin-top: -3.5rem !important;
  }

  .mr-lg-n35,
  .mx-lg-n35 {
    margin-right: -3.5rem !important;
  }

  .mb-lg-n35,
  .my-lg-n35 {
    margin-bottom: -3.5rem !important;
  }

  .ml-lg-n35,
  .mx-lg-n35 {
    margin-left: -3.5rem !important;
  }

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

  .mt-lg-n45,
  .my-lg-n45 {
    margin-top: -4.5rem !important;
  }

  .mr-lg-n45,
  .mx-lg-n45 {
    margin-right: -4.5rem !important;
  }

  .mb-lg-n45,
  .my-lg-n45 {
    margin-bottom: -4.5rem !important;
  }

  .ml-lg-n45,
  .mx-lg-n45 {
    margin-left: -4.5rem !important;
  }

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

  .mt-lg-n55,
  .my-lg-n55 {
    margin-top: -5.5rem !important;
  }

  .mr-lg-n55,
  .mx-lg-n55 {
    margin-right: -5.5rem !important;
  }

  .mb-lg-n55,
  .my-lg-n55 {
    margin-bottom: -5.5rem !important;
  }

  .ml-lg-n55,
  .mx-lg-n55 {
    margin-left: -5.5rem !important;
  }

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

  .mt-lg-n6,
  .my-lg-n6 {
    margin-top: -6rem !important;
  }

  .mr-lg-n6,
  .mx-lg-n6 {
    margin-right: -6rem !important;
  }

  .mb-lg-n6,
  .my-lg-n6 {
    margin-bottom: -6rem !important;
  }

  .ml-lg-n6,
  .mx-lg-n6 {
    margin-left: -6rem !important;
  }

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

  .mt-lg-n65,
  .my-lg-n65 {
    margin-top: -6.5rem !important;
  }

  .mr-lg-n65,
  .mx-lg-n65 {
    margin-right: -6.5rem !important;
  }

  .mb-lg-n65,
  .my-lg-n65 {
    margin-bottom: -6.5rem !important;
  }

  .ml-lg-n65,
  .mx-lg-n65 {
    margin-left: -6.5rem !important;
  }

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

  .mt-lg-n7,
  .my-lg-n7 {
    margin-top: -7rem !important;
  }

  .mr-lg-n7,
  .mx-lg-n7 {
    margin-right: -7rem !important;
  }

  .mb-lg-n7,
  .my-lg-n7 {
    margin-bottom: -7rem !important;
  }

  .ml-lg-n7,
  .mx-lg-n7 {
    margin-left: -7rem !important;
  }

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

  .mt-lg-n75,
  .my-lg-n75 {
    margin-top: -7.5rem !important;
  }

  .mr-lg-n75,
  .mx-lg-n75 {
    margin-right: -7.5rem !important;
  }

  .mb-lg-n75,
  .my-lg-n75 {
    margin-bottom: -7.5rem !important;
  }

  .ml-lg-n75,
  .mx-lg-n75 {
    margin-left: -7.5rem !important;
  }

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

  .mt-lg-n8,
  .my-lg-n8 {
    margin-top: -8rem !important;
  }

  .mr-lg-n8,
  .mx-lg-n8 {
    margin-right: -8rem !important;
  }

  .mb-lg-n8,
  .my-lg-n8 {
    margin-bottom: -8rem !important;
  }

  .ml-lg-n8,
  .mx-lg-n8 {
    margin-left: -8rem !important;
  }

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

  .mt-lg-n85,
  .my-lg-n85 {
    margin-top: -8.5rem !important;
  }

  .mr-lg-n85,
  .mx-lg-n85 {
    margin-right: -8.5rem !important;
  }

  .mb-lg-n85,
  .my-lg-n85 {
    margin-bottom: -8.5rem !important;
  }

  .ml-lg-n85,
  .mx-lg-n85 {
    margin-left: -8.5rem !important;
  }

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

  .mt-lg-n9,
  .my-lg-n9 {
    margin-top: -9rem !important;
  }

  .mr-lg-n9,
  .mx-lg-n9 {
    margin-right: -9rem !important;
  }

  .mb-lg-n9,
  .my-lg-n9 {
    margin-bottom: -9rem !important;
  }

  .ml-lg-n9,
  .mx-lg-n9 {
    margin-left: -9rem !important;
  }

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

  .mt-lg-n10,
  .my-lg-n10 {
    margin-top: -10rem !important;
  }

  .mr-lg-n10,
  .mx-lg-n10 {
    margin-right: -10rem !important;
  }

  .mb-lg-n10,
  .my-lg-n10 {
    margin-bottom: -10rem !important;
  }

  .ml-lg-n10,
  .mx-lg-n10 {
    margin-left: -10rem !important;
  }

  .m-lg-auto {
    margin: auto !important;
  }

  .mt-lg-auto,
  .my-lg-auto {
    margin-top: auto !important;
  }

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

  .mb-lg-auto,
  .my-lg-auto {
    margin-bottom: auto !important;
  }

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

@media (min-width: 1281px) {
  .m-xl-0 {
    margin: 0 !important;
  }

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

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

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

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

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

  .mt-xl-1,
  .my-xl-1 {
    margin-top: 1rem !important;
  }

  .mr-xl-1,
  .mx-xl-1 {
    margin-right: 1rem !important;
  }

  .mb-xl-1,
  .my-xl-1 {
    margin-bottom: 1rem !important;
  }

  .ml-xl-1,
  .mx-xl-1 {
    margin-left: 1rem !important;
  }

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

  .mt-xl-2,
  .my-xl-2 {
    margin-top: 2rem !important;
  }

  .mr-xl-2,
  .mx-xl-2 {
    margin-right: 2rem !important;
  }

  .mb-xl-2,
  .my-xl-2 {
    margin-bottom: 2rem !important;
  }

  .ml-xl-2,
  .mx-xl-2 {
    margin-left: 2rem !important;
  }

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

  .mt-xl-3,
  .my-xl-3 {
    margin-top: 3rem !important;
  }

  .mr-xl-3,
  .mx-xl-3 {
    margin-right: 3rem !important;
  }

  .mb-xl-3,
  .my-xl-3 {
    margin-bottom: 3rem !important;
  }

  .ml-xl-3,
  .mx-xl-3 {
    margin-left: 3rem !important;
  }

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

  .mt-xl-4,
  .my-xl-4 {
    margin-top: 4rem !important;
  }

  .mr-xl-4,
  .mx-xl-4 {
    margin-right: 4rem !important;
  }

  .mb-xl-4,
  .my-xl-4 {
    margin-bottom: 4rem !important;
  }

  .ml-xl-4,
  .mx-xl-4 {
    margin-left: 4rem !important;
  }

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

  .mt-xl-5,
  .my-xl-5 {
    margin-top: 5rem !important;
  }

  .mr-xl-5,
  .mx-xl-5 {
    margin-right: 5rem !important;
  }

  .mb-xl-5,
  .my-xl-5 {
    margin-bottom: 5rem !important;
  }

  .ml-xl-5,
  .mx-xl-5 {
    margin-left: 5rem !important;
  }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

  .mt-xl-6,
  .my-xl-6 {
    margin-top: 6rem !important;
  }

  .mr-xl-6,
  .mx-xl-6 {
    margin-right: 6rem !important;
  }

  .mb-xl-6,
  .my-xl-6 {
    margin-bottom: 6rem !important;
  }

  .ml-xl-6,
  .mx-xl-6 {
    margin-left: 6rem !important;
  }

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

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

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

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

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

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

  .mt-xl-7,
  .my-xl-7 {
    margin-top: 7rem !important;
  }

  .mr-xl-7,
  .mx-xl-7 {
    margin-right: 7rem !important;
  }

  .mb-xl-7,
  .my-xl-7 {
    margin-bottom: 7rem !important;
  }

  .ml-xl-7,
  .mx-xl-7 {
    margin-left: 7rem !important;
  }

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

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

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

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

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

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

  .mt-xl-8,
  .my-xl-8 {
    margin-top: 8rem !important;
  }

  .mr-xl-8,
  .mx-xl-8 {
    margin-right: 8rem !important;
  }

  .mb-xl-8,
  .my-xl-8 {
    margin-bottom: 8rem !important;
  }

  .ml-xl-8,
  .mx-xl-8 {
    margin-left: 8rem !important;
  }

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

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

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

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

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

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

  .mt-xl-9,
  .my-xl-9 {
    margin-top: 9rem !important;
  }

  .mr-xl-9,
  .mx-xl-9 {
    margin-right: 9rem !important;
  }

  .mb-xl-9,
  .my-xl-9 {
    margin-bottom: 9rem !important;
  }

  .ml-xl-9,
  .mx-xl-9 {
    margin-left: 9rem !important;
  }

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

  .mt-xl-10,
  .my-xl-10 {
    margin-top: 10rem !important;
  }

  .mr-xl-10,
  .mx-xl-10 {
    margin-right: 10rem !important;
  }

  .mb-xl-10,
  .my-xl-10 {
    margin-bottom: 10rem !important;
  }

  .ml-xl-10,
  .mx-xl-10 {
    margin-left: 10rem !important;
  }

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

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

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

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

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

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

  .pt-xl-1,
  .py-xl-1 {
    padding-top: 1rem !important;
  }

  .pr-xl-1,
  .px-xl-1 {
    padding-right: 1rem !important;
  }

  .pb-xl-1,
  .py-xl-1 {
    padding-bottom: 1rem !important;
  }

  .pl-xl-1,
  .px-xl-1 {
    padding-left: 1rem !important;
  }

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

  .pt-xl-2,
  .py-xl-2 {
    padding-top: 2rem !important;
  }

  .pr-xl-2,
  .px-xl-2 {
    padding-right: 2rem !important;
  }

  .pb-xl-2,
  .py-xl-2 {
    padding-bottom: 2rem !important;
  }

  .pl-xl-2,
  .px-xl-2 {
    padding-left: 2rem !important;
  }

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

  .pt-xl-3,
  .py-xl-3 {
    padding-top: 3rem !important;
  }

  .pr-xl-3,
  .px-xl-3 {
    padding-right: 3rem !important;
  }

  .pb-xl-3,
  .py-xl-3 {
    padding-bottom: 3rem !important;
  }

  .pl-xl-3,
  .px-xl-3 {
    padding-left: 3rem !important;
  }

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

  .pt-xl-4,
  .py-xl-4 {
    padding-top: 4rem !important;
  }

  .pr-xl-4,
  .px-xl-4 {
    padding-right: 4rem !important;
  }

  .pb-xl-4,
  .py-xl-4 {
    padding-bottom: 4rem !important;
  }

  .pl-xl-4,
  .px-xl-4 {
    padding-left: 4rem !important;
  }

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

  .pt-xl-5,
  .py-xl-5 {
    padding-top: 5rem !important;
  }

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

  .pb-xl-5,
  .py-xl-5 {
    padding-bottom: 5rem !important;
  }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

  .pt-xl-6,
  .py-xl-6 {
    padding-top: 6rem !important;
  }

  .pr-xl-6,
  .px-xl-6 {
    padding-right: 6rem !important;
  }

  .pb-xl-6,
  .py-xl-6 {
    padding-bottom: 6rem !important;
  }

  .pl-xl-6,
  .px-xl-6 {
    padding-left: 6rem !important;
  }

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

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

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

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

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

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

  .pt-xl-7,
  .py-xl-7 {
    padding-top: 7rem !important;
  }

  .pr-xl-7,
  .px-xl-7 {
    padding-right: 7rem !important;
  }

  .pb-xl-7,
  .py-xl-7 {
    padding-bottom: 7rem !important;
  }

  .pl-xl-7,
  .px-xl-7 {
    padding-left: 7rem !important;
  }

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

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

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

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

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

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

  .pt-xl-8,
  .py-xl-8 {
    padding-top: 8rem !important;
  }

  .pr-xl-8,
  .px-xl-8 {
    padding-right: 8rem !important;
  }

  .pb-xl-8,
  .py-xl-8 {
    padding-bottom: 8rem !important;
  }

  .pl-xl-8,
  .px-xl-8 {
    padding-left: 8rem !important;
  }

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

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

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

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

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

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

  .pt-xl-9,
  .py-xl-9 {
    padding-top: 9rem !important;
  }

  .pr-xl-9,
  .px-xl-9 {
    padding-right: 9rem !important;
  }

  .pb-xl-9,
  .py-xl-9 {
    padding-bottom: 9rem !important;
  }

  .pl-xl-9,
  .px-xl-9 {
    padding-left: 9rem !important;
  }

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

  .pt-xl-10,
  .py-xl-10 {
    padding-top: 10rem !important;
  }

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

  .pb-xl-10,
  .py-xl-10 {
    padding-bottom: 10rem !important;
  }

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

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

  .mt-xl-n1,
  .my-xl-n1 {
    margin-top: -1rem !important;
  }

  .mr-xl-n1,
  .mx-xl-n1 {
    margin-right: -1rem !important;
  }

  .mb-xl-n1,
  .my-xl-n1 {
    margin-bottom: -1rem !important;
  }

  .ml-xl-n1,
  .mx-xl-n1 {
    margin-left: -1rem !important;
  }

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

  .mt-xl-n2,
  .my-xl-n2 {
    margin-top: -2rem !important;
  }

  .mr-xl-n2,
  .mx-xl-n2 {
    margin-right: -2rem !important;
  }

  .mb-xl-n2,
  .my-xl-n2 {
    margin-bottom: -2rem !important;
  }

  .ml-xl-n2,
  .mx-xl-n2 {
    margin-left: -2rem !important;
  }

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

  .mt-xl-n3,
  .my-xl-n3 {
    margin-top: -3rem !important;
  }

  .mr-xl-n3,
  .mx-xl-n3 {
    margin-right: -3rem !important;
  }

  .mb-xl-n3,
  .my-xl-n3 {
    margin-bottom: -3rem !important;
  }

  .ml-xl-n3,
  .mx-xl-n3 {
    margin-left: -3rem !important;
  }

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

  .mt-xl-n4,
  .my-xl-n4 {
    margin-top: -4rem !important;
  }

  .mr-xl-n4,
  .mx-xl-n4 {
    margin-right: -4rem !important;
  }

  .mb-xl-n4,
  .my-xl-n4 {
    margin-bottom: -4rem !important;
  }

  .ml-xl-n4,
  .mx-xl-n4 {
    margin-left: -4rem !important;
  }

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

  .mt-xl-n5,
  .my-xl-n5 {
    margin-top: -5rem !important;
  }

  .mr-xl-n5,
  .mx-xl-n5 {
    margin-right: -5rem !important;
  }

  .mb-xl-n5,
  .my-xl-n5 {
    margin-bottom: -5rem !important;
  }

  .ml-xl-n5,
  .mx-xl-n5 {
    margin-left: -5rem !important;
  }

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

  .mt-xl-n15,
  .my-xl-n15 {
    margin-top: -1.5rem !important;
  }

  .mr-xl-n15,
  .mx-xl-n15 {
    margin-right: -1.5rem !important;
  }

  .mb-xl-n15,
  .my-xl-n15 {
    margin-bottom: -1.5rem !important;
  }

  .ml-xl-n15,
  .mx-xl-n15 {
    margin-left: -1.5rem !important;
  }

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

  .mt-xl-n25,
  .my-xl-n25 {
    margin-top: -2.5rem !important;
  }

  .mr-xl-n25,
  .mx-xl-n25 {
    margin-right: -2.5rem !important;
  }

  .mb-xl-n25,
  .my-xl-n25 {
    margin-bottom: -2.5rem !important;
  }

  .ml-xl-n25,
  .mx-xl-n25 {
    margin-left: -2.5rem !important;
  }

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

  .mt-xl-n35,
  .my-xl-n35 {
    margin-top: -3.5rem !important;
  }

  .mr-xl-n35,
  .mx-xl-n35 {
    margin-right: -3.5rem !important;
  }

  .mb-xl-n35,
  .my-xl-n35 {
    margin-bottom: -3.5rem !important;
  }

  .ml-xl-n35,
  .mx-xl-n35 {
    margin-left: -3.5rem !important;
  }

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

  .mt-xl-n45,
  .my-xl-n45 {
    margin-top: -4.5rem !important;
  }

  .mr-xl-n45,
  .mx-xl-n45 {
    margin-right: -4.5rem !important;
  }

  .mb-xl-n45,
  .my-xl-n45 {
    margin-bottom: -4.5rem !important;
  }

  .ml-xl-n45,
  .mx-xl-n45 {
    margin-left: -4.5rem !important;
  }

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

  .mt-xl-n55,
  .my-xl-n55 {
    margin-top: -5.5rem !important;
  }

  .mr-xl-n55,
  .mx-xl-n55 {
    margin-right: -5.5rem !important;
  }

  .mb-xl-n55,
  .my-xl-n55 {
    margin-bottom: -5.5rem !important;
  }

  .ml-xl-n55,
  .mx-xl-n55 {
    margin-left: -5.5rem !important;
  }

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

  .mt-xl-n6,
  .my-xl-n6 {
    margin-top: -6rem !important;
  }

  .mr-xl-n6,
  .mx-xl-n6 {
    margin-right: -6rem !important;
  }

  .mb-xl-n6,
  .my-xl-n6 {
    margin-bottom: -6rem !important;
  }

  .ml-xl-n6,
  .mx-xl-n6 {
    margin-left: -6rem !important;
  }

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

  .mt-xl-n65,
  .my-xl-n65 {
    margin-top: -6.5rem !important;
  }

  .mr-xl-n65,
  .mx-xl-n65 {
    margin-right: -6.5rem !important;
  }

  .mb-xl-n65,
  .my-xl-n65 {
    margin-bottom: -6.5rem !important;
  }

  .ml-xl-n65,
  .mx-xl-n65 {
    margin-left: -6.5rem !important;
  }

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

  .mt-xl-n7,
  .my-xl-n7 {
    margin-top: -7rem !important;
  }

  .mr-xl-n7,
  .mx-xl-n7 {
    margin-right: -7rem !important;
  }

  .mb-xl-n7,
  .my-xl-n7 {
    margin-bottom: -7rem !important;
  }

  .ml-xl-n7,
  .mx-xl-n7 {
    margin-left: -7rem !important;
  }

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

  .mt-xl-n75,
  .my-xl-n75 {
    margin-top: -7.5rem !important;
  }

  .mr-xl-n75,
  .mx-xl-n75 {
    margin-right: -7.5rem !important;
  }

  .mb-xl-n75,
  .my-xl-n75 {
    margin-bottom: -7.5rem !important;
  }

  .ml-xl-n75,
  .mx-xl-n75 {
    margin-left: -7.5rem !important;
  }

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

  .mt-xl-n8,
  .my-xl-n8 {
    margin-top: -8rem !important;
  }

  .mr-xl-n8,
  .mx-xl-n8 {
    margin-right: -8rem !important;
  }

  .mb-xl-n8,
  .my-xl-n8 {
    margin-bottom: -8rem !important;
  }

  .ml-xl-n8,
  .mx-xl-n8 {
    margin-left: -8rem !important;
  }

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

  .mt-xl-n85,
  .my-xl-n85 {
    margin-top: -8.5rem !important;
  }

  .mr-xl-n85,
  .mx-xl-n85 {
    margin-right: -8.5rem !important;
  }

  .mb-xl-n85,
  .my-xl-n85 {
    margin-bottom: -8.5rem !important;
  }

  .ml-xl-n85,
  .mx-xl-n85 {
    margin-left: -8.5rem !important;
  }

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

  .mt-xl-n9,
  .my-xl-n9 {
    margin-top: -9rem !important;
  }

  .mr-xl-n9,
  .mx-xl-n9 {
    margin-right: -9rem !important;
  }

  .mb-xl-n9,
  .my-xl-n9 {
    margin-bottom: -9rem !important;
  }

  .ml-xl-n9,
  .mx-xl-n9 {
    margin-left: -9rem !important;
  }

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

  .mt-xl-n10,
  .my-xl-n10 {
    margin-top: -10rem !important;
  }

  .mr-xl-n10,
  .mx-xl-n10 {
    margin-right: -10rem !important;
  }

  .mb-xl-n10,
  .my-xl-n10 {
    margin-bottom: -10rem !important;
  }

  .ml-xl-n10,
  .mx-xl-n10 {
    margin-left: -10rem !important;
  }

  .m-xl-auto {
    margin: auto !important;
  }

  .mt-xl-auto,
  .my-xl-auto {
    margin-top: auto !important;
  }

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

  .mb-xl-auto,
  .my-xl-auto {
    margin-bottom: auto !important;
  }

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

.text-monospace {
  font-family: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace !important;
}

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

.text-wrap {
  white-space: normal !important;
}

.text-nowrap {
  white-space: nowrap !important;
}

.text-truncate {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

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

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

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

@media (min-width: 577px) {
  .text-sm-left {
    text-align: left !important;
  }

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

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

@media (min-width: 769px) {
  .text-md-left {
    text-align: left !important;
  }

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

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

@media (min-width: 1024px) {
  .text-lg-left {
    text-align: left !important;
  }

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

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

@media (min-width: 1281px) {
  .text-xl-left {
    text-align: left !important;
  }

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

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

.text-lowercase {
  text-transform: lowercase !important;
}

.text-uppercase {
  text-transform: uppercase !important;
}

.text-capitalize {
  text-transform: capitalize !important;
}

.font-weight-light {
  font-weight: 300 !important;
}

.font-weight-lighter {
  font-weight: lighter !important;
}

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

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

.font-weight-bolder {
  font-weight: bolder !important;
}

.font-italic {
  font-style: italic !important;
}

.text-white {
  color: #fff !important;
}

.text-primary {
  color: #3490dc !important;
}

a.text-primary:hover,
a.text-primary:focus {
  color: #1d68a7 !important;
}

.text-secondary {
  color: #6c757d !important;
}

a.text-secondary:hover,
a.text-secondary:focus {
  color: #494f54 !important;
}

.text-success {
  color: #38c172 !important;
}

a.text-success:hover,
a.text-success:focus {
  color: #27864f !important;
}

.text-info {
  color: #6cb2eb !important;
}

a.text-info:hover,
a.text-info:focus {
  color: #298fe2 !important;
}

.text-warning {
  color: #ffed4a !important;
}

a.text-warning:hover,
a.text-warning:focus {
  color: #fde300 !important;
}

.text-danger {
  color: #e3342f !important;
}

a.text-danger:hover,
a.text-danger:focus {
  color: #ae1c17 !important;
}

.text-light {
  color: #f8f9fa !important;
}

a.text-light:hover,
a.text-light:focus {
  color: #cbd3da !important;
}

.text-dark {
  color: #343a40 !important;
}

a.text-dark:hover,
a.text-dark:focus {
  color: #121416 !important;
}

.text-body {
  color: #212529 !important;
}

.text-muted {
  color: #6c757d !important;
}

.text-black-50 {
  color: rgba(0, 0, 0, 0.5) !important;
}

.text-white-50 {
  color: rgba(255, 255, 255, 0.5) !important;
}

.text-hide {
  font: 0/0 a;
  color: transparent;
  text-shadow: none;
  background-color: transparent;
  border: 0;
}

.text-decoration-none {
  text-decoration: none !important;
}

.text-break {
  word-break: break-word !important;
  overflow-wrap: break-word !important;
}

.text-reset {
  color: inherit !important;
}

.visible {
  visibility: visible !important;
}

.invisible {
  visibility: hidden !important;
}

@media print {
  *,
  *::before,
  *::after {
    text-shadow: none !important;
    box-shadow: none !important;
  }

  a:not(.btn) {
    text-decoration: underline;
  }

  abbr[title]::after {
    content: " (" attr(title) ")";
  }

  pre {
    white-space: pre-wrap !important;
  }

  pre,
  blockquote {
    border: 1px solid #adb5bd;
    page-break-inside: avoid;
  }

  thead {
    display: table-header-group;
  }

  tr,
  img {
    page-break-inside: avoid;
  }

  p,
  h2,
  h3 {
    orphans: 3;
    widows: 3;
  }

  h2,
  h3 {
    page-break-after: avoid;
  }

@page {
    size: a3;
}

  body {
    min-width: 1024px !important;
  }

  .container {
    min-width: 1024px !important;
  }

  .navbar {
    display: none;
  }

  .badge {
    border: 1px solid #000;
  }

  .table {
    border-collapse: collapse !important;
  }

  .table td,
  .table th {
    background-color: #fff !important;
  }

  .table-bordered th,
  .table-bordered td {
    border: 1px solid #dee2e6 !important;
  }

  .table-dark {
    color: inherit;
  }

  .table-dark th,
  .table-dark td,
  .table-dark thead th,
  .table-dark tbody + tbody {
    border-color: #dee2e6;
  }

  .table .thead-dark th {
    color: inherit;
    border-color: #dee2e6;
  }
}

/* stylelint-disable */

/*
html5doctor.com Reset Stylesheet
v1.6.1
Last Updated: 2010-09-17
Author: Richard Clark - http://richclarkdesign.com
Twitter: @rich_clark
*/

html,
body,
div,
span,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
abbr,
address,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
samp,
small,
strong,
sub,
sup,
var,
b,
i,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section,
summary,
time,
mark,
audio,
video {
  padding: 0;
  margin: 0;
  font-size: 100%;
  line-height: 1.5;
  vertical-align: baseline;
  list-style: none;
  background: transparent;
  border: 0;
  outline: 0;
}

html {
  font-size: 62.5%;
  scroll-behavior: smooth;
}

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

nav ul {
  list-style: none;
}

blockquote,
q {
  quotes: none;
}

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

a {
  padding: 0;
  margin: 0;
  font-size: 100%;
  color: #1a1a1a;
  vertical-align: baseline;
  background: transparent;
}

a:hover {
  color: inherit;
  text-decoration: none;
}

@media screen and (min-width: 1025px) {
  a:hover {
    opacity: 0.7;
    transition: all 300ms ease-out;
  }
}

a:focus {
  outline: none;
}

button {
  border: none;
}

button:focus {
  outline: none;
}

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

/* change colours to suit your needs */

ins {
  color: #000;
  text-decoration: none;
  background-color: #ff9;
}

/* change colours to suit your needs */

mark {
  font-style: italic;
  font-weight: bold;
  color: #000;
  background-color: #ff9;
}

del {
  text-decoration: line-through;
}

abbr[title],
dfn[title] {
  cursor: help;
  border-bottom: 1px dotted;
}

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

/* change border colour to suit your needs */

hr {
  display: block;
  height: 1px;
  padding: 0;
  margin: 1em 0;
  border: 0;
  border-top: 1px solid #ccc;
}

input,
select {
  vertical-align: middle;
}

*,
*::before,
*::after {
  box-sizing: border-box;
}

:root {
  --white: #fff;
  --dark: #333;
  --gray: #666;
  --light-gray: #DFE0E6;
  --table-gray: #E1E1E1;
  --line-blue: #3B8FB3;
  --icon-blue: #008BC2;
  --footer-blue: linear-gradient(180deg, rgba(0, 116, 160, 1) 0%, rgba(0, 74, 150, 1) 100%);
  --search-blue: linear-gradient(180deg, rgba(214, 224, 230, 1) 0%, rgba(198, 226, 242, 1) 100%);
  --column-blue: linear-gradient(180deg, rgba(233, 240, 238, 1) 0%, rgba(213, 228, 230, 1) 100%);
  --font-family: "\6E38\30B4\30B7\30C3\30AF\4F53", YuGothic, "\6E38\30B4\30B7\30C3\30AF   Medium", "Yu Gothic Medium", "\6E38\30B4\30B7\30C3\30AF", "Yu Gothic", "\30D2\30E9\30AE\30CE\89D2\30B4   Pro W3", "Hiragino Kaku Gothic Pro", "\30E1\30A4\30EA\30AA", Meiryo, sans-serif;
  --font-family-bold: "\6E38\30B4\30B7\30C3\30AF", "Yu Gothic", "\30D2\30E9\30AE\30CE\89D2\30B4   Pro W3", "Hiragino Kaku Gothic Pro", "\30E1\30A4\30EA\30AA", Meiryo, sans-serif;
}

html {
  height: -webkit-fill-available;
  font-size: 16px;
}

body {
  min-height: 100vh;
  min-height: -webkit-fill-available;
  font-family: var(--font-family);
  color: var(--dark);
  font-size: 16px;
  font-weight: 400;
  line-height: 1.5;
  vertical-align: baseline;
  padding: 0;
  margin: 0;
}

*,
*::before,
*::after {
  box-sizing: border-box;
}

ul,
li {
  list-style: none;
  margin: 0;
  padding: 0;
}

h1,
h2,
h3,
h4,
h5,
h6,
.h1,
.h2,
.h3,
.h4,
.h5,
.h6 {
  font-family: var(--font-family-bold);
  font-weight: bold;
}

/* == クッキーポリシー == */

.common-gdpr-box p {
  font-size: 1rem !important;
}

.common-gdpr-box .btn-close {
  width: auto;
}

@media (min-width: 1024px) {
  .for-pc {
    display: block;
  }

  .for-sp {
    display: none;
  }
}

@media (max-width: 1023px) {
  .for-pc {
    display: none;
  }

  .for-sp {
    display: block;
  }
}

/* == 共通ボタン == */

button,
a {
  cursor: pointer;
}

button.icon-search {
  font-size: 0;
  background: none;
  border: none;
  position: relative;
}

button.icon-search::after {
  content: "";
  display: block;
  width: 27px;
  height: 27px;
  background: url(/images/front/icon/icon-search.svg) no-repeat 0 0;
}

.btn {
  width: 240px;
  min-height: 31px;
  display: flex;
  font-size: 14px;
  justify-content: center;
  align-items: center;
  text-decoration: none;
  padding: 0.3rem 1rem 0.3rem 2rem;
}

.btn.btn-white {
  background-color: var(--white);
  border-radius: 60px;
  color: var(--dark);
  position: relative;
  border: 1px solid var(--light-gray);
}

.btn.btn-white:hover {
  box-shadow: 0 0 20px rgba(0, 0, 0, 0.2);
}

.btn.btn-black {
  background-color: var(--dark);
  border-radius: 60px;
  color: var(--white);
  position: relative;
  border: 1px solid var(--light-gray);
}

.btn.btn-black:hover {
  box-shadow: 0 0 20px rgba(0, 0, 0, 0.2);
}

.btn.btn-black::after {
  content: "";
  width: 7px;
  height: 7px;
  background: url(/images/front/icon/icon_footerlist.svg) no-repeat 0 0;
  display: block;
  position: absolute;
  top: 12px;
  left: 15px;
}

.btn.btn-blue {
  background-color: var(--line-blue);
  border-radius: 20px;
  color: var(--white);
  position: relative;
  border: none;
}

.btn.btn-blue.icon-search-w::after {
  content: "";
  width: 19px;
  height: 18px;
  background: url(/images/front/icon/icon-search2.svg) no-repeat 0 0;
  display: block;
  position: absolute;
  top: calc(50% - 10px);
  left: 20px;
}

.btn.btn-blue:hover {
  box-shadow: 0 0 20px rgba(0, 0, 0, 0.2);
}

a.btn-black:not([href]):not([tabindex]) {
  color: var(--white);
}

a.btn.btn-white::after {
  content: "";
  width: 7px;
  height: 7px;
  background: url(/images/front/icon/btn_icon.svg) no-repeat 0 0;
  display: block;
  position: absolute;
  top: calc(50% - 4px);
  left: 15px;
}

a.btn.btn-black::after {
  content: "";
  width: 7px;
  height: 7px;
  background: url(/images/front/icon/icon_footerlist.svg) no-repeat 0 0;
  display: block;
  position: absolute;
  top: calc(50% - 4px);
  left: 15px;
}

/* page top */

.o-button--page-top .fa {
  font-size: 3.2rem !important;
  color: var(--dark) !important;
}

.footer__btn-top-text {
  text-align: center;
  font-size: 18px;
  margin: 0 0 43px;
}

/* == 共通form == */

select,
input[type=text],
input[type=email] {
  background-color: var(--white);
  height: 46px;
  border: 1px solid var(--light-gray);
  border-radius: 50px;
  max-width: 335px;
  padding: 0 20px;
  font-size: 14px;
  color: var(--dark);
}

.search-select {
  position: relative;
}

.search-select::after {
  content: "";
  position: absolute;
  right: 20px;
  top: calc(50% - 5px);
  width: 14px;
  height: 14px;
  background: url(/images/front/icon/icon-arrow-bottom.svg) no-repeat 0 0;
  pointer-events: none;
}

select {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  padding-right: 20px;
  text-align: center;
}

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

.l-header {
  position: relative;
  display: block;
  width: 100%;
}

.l-header .l-header__wrapper {
  display: flex;
  opacity: 1;
  /* == top-header-navi == */
}

.l-header .l-header__wrapper .l-header-navi__logo {
  position: absolute;
  top: 0;
  z-index: 100;
}

.l-header .l-header__wrapper .l-header__navi {
  position: absolute;
  top: 0;
  z-index: 100;
  right: 0;
  margin: 24px 32px 0 auto;
  display: flex;
  gap: 20px;
  height: 20px;
}

.l-header .l-header__wrapper .l-header__navi .l-header__navi_icon img {
  filter: drop-shadow(0px 0px 10px rgba(0, 0, 0, 0.4));
}

.l-header-navi__logo a {
  position: relative;
}

.l-header-navi__logo a::after {
  background: url(/images/front/top/logo_top_back2@3x.png) no-repeat 0 0;
  display: block;
  width: 380px;
  height: 424px;
  background-size: contain;
  content: "";
}

.l-header-navi__logo a .logo_top {
  position: absolute;
  z-index: 10;
  width: 380px;
}

.l-header-navi__logo a .logo_top_back1 {
  position: absolute;
  top: 0;
  left: 0;
  opacity: 0.5;
  width: 380px;
}

@media (max-width: 1024px) {
  .l-header-navi__logo a .logo_top,
  .l-header-navi__logo a .logo_top_back1,
  .l-header-navi__logo a::after {
    width: 180px;
  }

  .l-header .l-header__wrapper .l-header-navi__logo,
  .l-header .l-header__wrapper .l-header-navi__logo a,
  .l-header .l-header__wrapper .l-header-navi__logo a::after {
    display: block;
    height: 201px;
  }

  .o-header .slick-inner::after {
    height: 140px;
  }
}

.l-global-navi {
  display: none;
}

.l-global-navi.is-lower {
  width: 100%;
  display: flex;
  position: relative;
  opacity: 1;
  margin: 0;
  z-index: 10;
  background-color: var(--white);
  box-shadow: 0 2px 2px rgba(0, 0, 0, 0.1);
}

.l-global-navi.is-lower.nav-show {
  position: fixed;
  top: 0;
}

.l-global-navi.is-lower .l-global-navi__list {
  margin: 16px 52px 16px 0;
}

.l-global-navi.is-lower .l-global-navi__item .l-global-navi__anchor.icon-global {
  margin-right: -20px;
}

.l-global-navi.is-lower .hamburger-menu__btn {
  position: inherit;
}

.l-global-navi.is-lower .hamburger-menu__btn a.btn-open svg .cls-1 {
  fill: var(--dark);
}

.l-global-navi.is-lower .hamburger-menu__btn a {
  position: inherit;
  display: flex;
  align-items: center;
}

.l-global-navi.nav-show + .l-header .l-header__wrapper {
  opacity: 0;
  transition: all 0.3s ease-out;
  top: -424px;
}

@media (min-width: 1024px) {
  .l-global-navi {
    position: fixed;
    top: 0;
    z-index: 1002;
    display: flex;
    align-items: center;
    width: 100%;
    margin-top: -12.8rem;
    opacity: 0;
    transition: all 0.3s ease-out;
    background-color: var(--white);
    box-shadow: 0 2px 2px rgba(0, 0, 0, 0.1);
  }

  .l-global-navi.nav-show {
    margin-top: 0;
    opacity: 1;
    display: flex;
  }

  .l-global-navi .l-global-navi__logo {
    margin: 0 0 0 37px;
  }

  .l-global-navi .l-global-navi__box {
    margin: 0 0 auto auto;
  }

  .l-global-navi__list,
  .l-global-navi__sub-list {
    display: flex;
    gap: 40px;
    justify-content: flex-end;
  }

  .l-global-navi__list .l-global-navi__item .l-global-navi__anchor,
  .l-global-navi__sub-list .l-global-navi__sub-item .l-global-navi__sub-anchor {
    color: var(--dark);
    text-decoration: none;
    font-weight: 700;
    font-family: var(--font-family-bold);
    font-size: 16px;
    padding: 0;
  }

  .l-global-navi__list .l-global-navi__item.svg-icon {
    display: flex;
  }

  .l-global-navi__list .l-global-navi__item .l-global-navi__anchor.icon_fav,
  .l-global-navi__list .l-global-navi__item .l-global-navi__anchor.icon-global {
    display: flex;
    align-items: center;
  }

  .l-global-navi__list .l-global-navi__item .l-global-navi__anchor.icon_fav {
    margin-right: -20px;
  }

  .l-global-navi__list {
    margin: 16px 32px 16px 0;
  }

  .l-global-navi__sub-list {
    margin: 16px 2rem 16px 0;
  }

  .l-global-navi__sub-list li {
    margin-right: 0;
  }

  .l-global-navi.is-lower .l-global-navi__list {
    margin-right: 32px;
  }
}

@media (max-width: 1023px) {
  .top-sp-header {
    position: fixed;
    top: 0;
    z-index: 1002;
    display: flex;
    align-items: center;
    width: 100%;
    margin-top: -12.8rem;
    opacity: 0;
    transition: all 0.3s ease-out;
    background-color: var(--white);
    box-shadow: 0 2px 2px rgba(0, 0, 0, 0.1);
  }

  .l-global-navi.nav-show + .l-header .top-sp-header {
    margin-top: 0;
    opacity: 1;
    display: flex;
  }

  .l-global-navi.is-lower .l-global-navi__box {
    display: none;
  }

  .l-global-navi.is-lower .l-global-navi__logo {
    margin: 1rem 0 0.8rem 1rem;
  }

  .l-global-navi.is-lower .l-global-navi__logo img.logo_header {
    width: 70%;
  }

  .l-global-navi.is-lower .hamburger-menu__btn.for-sp {
    position: absolute;
    top: 20px;
    right: 50px;
  }
}

@media (min-width: 1024px) and (max-width: 1330px) {
  .l-global-navi .l-global-navi__logo {
    margin-left: 20px;
  }

  .l-global-navi .l-global-navi__logo img {
    width: 250px;
  }

  .l-global-navi__list,
  .l-global-navi__sub-list {
    gap: 15px;
  }

  .l-global-navi__item .u-font-size14,
  .l-global-navi__sub-item .u-font-size14 {
    font-size: 14px;
  }

  .l-global-navi__list .l-global-navi__item .l-global-navi__anchor.icon_fav {
    margin-right: auto;
  }

  .l-global-navi.is-lower .l-global-navi__item .l-global-navi__anchor.icon-global {
    margin-right: auto;
  }
}

.main-content-attention {
  background-color: var(--icon-blue);
  position: relative;
}

.main-content-attention .main-content-attention-inner {
  max-width: 1200px;
  height: 86px;
  margin: 0 auto;
  display: flex;
  align-items: center;
  gap: 83px;
}

.main-content-attention .main-content-attention-inner a {
  color: var(--white);
  text-decoration: none;
  display: block;
  padding-right: 50px;
}

.main-content-attention .main-content-attention-inner a::after {
  content: "";
  position: absolute;
  top: calc(50% - 8px);
  right: 35px;
  width: 9px;
  height: 17px;
  background: url(/images/front/icon/icon-arrow-right2.svg) no-repeat 0 0;
  background-size: contain;
}

.main-content-about {
  max-width: 1200px;
  min-height: 795px;
  margin: 0 auto;
  position: relative;
  padding: 84px 0 120px;
}

.main-content-about::before {
  content: "";
  position: absolute;
  width: 713px;
  height: 750px;
  background: url(/images/front/top/top-map.svg) no-repeat 0 0;
  right: 0;
  top: 125px;
}

.main-content-about h3 {
  margin: 0;
}

.main-content-about h3 .ttl-logo {
  background: url(/images/front/top/ttl-about.svg) no-repeat left 0;
  font-size: 0;
  max-width: 634px;
  height: 290px;
  background-size: contain;
}

.main-content-about .main-content-text {
  max-width: 645px;
  padding: 50px 0 62px 20px;
  margin: 0;
  letter-spacing: 1.5px;
  line-height: 1.9;
  font-size: 18px;
}

.main-content-about .main-content-btnarea {
  padding-left: 20px;
}

.main-content-about .main-content-btnarea.gallery {
  display: flex;
  flex-wrap: wrap;
}

.main-content-about .main-content-btnarea.gallery a {
  width: calc(100% / 3);
}

.main-content-about .main-content-btnarea.gallery a img {
  display: block;
  height: auto;
  width: 100%;
}

.main-content-seasonal-attractions {
  background: var(--footer-blue);
  width: 100%;
  position: relative;
  padding: 130px 0 170px;
  -webkit-clip-path: polygon(0 0, 100% 50px, 100% calc(100% - 50px), 0 100%);
          clip-path: polygon(0 0, 100% 50px, 100% calc(100% - 50px), 0 100%);
}

.main-content-seasonal-attractions::before {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  background: url(/images/front/back-image-f01.png) no-repeat center 60%;
  opacity: 0.15;
  top: 0;
}

.main-content-seasonal-attractions-ttl,
.main-content-seasonal-attractions-tabarea {
  position: relative;
  max-width: 1080px;
  margin: 0 auto;
}

.main-content-seasonal-attractions-ttl {
  color: var(--white);
  letter-spacing: 0.7rem;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 35px;
}

.main-content-seasonal-attractions-ttl span {
  font-size: 24px;
}

/* tabarea */

.main-content-seasonal-attractions-tabarea .ttl-tab-list {
  color: var(--white);
  text-align: right;
  margin: 0 110px 15px 0;
  font-size: 14px;
}

.main-content-seasonal-attractions-tabarea .tab-list {
  display: flex;
  justify-content: flex-end;
  color: var(--white);
  font-size: 18px;
  gap: 8px;
  margin: 0 30px 24px;
  padding: 0;
}

.main-content-seasonal-attractions-tabarea .tab-list .tab-menu {
  cursor: pointer;
  width: 64px;
  height: 36px;
  display: flex;
  justify-content: center;
  align-items: center;
  border-bottom: 1px solid var(--white);
  box-sizing: border-box;
}

.main-content-seasonal-attractions-tabarea .tab-list .tab-menu.current {
  border: 1px solid var(--white);
}

.main-content-seasonal-attractions-tabarea .content-group {
  text-align: center;
  color: var(--white);
}

.main-content-seasonal-attractions-tabarea .content-group .content-box {
  display: none;
}

/* tabarea slick */

.seasonal-attractions-slick a {
  text-decoration: none;
}

.seasonal-attractions-slick .slick-content-caption {
  color: var(--white);
  font-size: 14px;
  margin: 16px 0 0;
  text-align: left;
  padding: 0 0.7rem;
}

.seasonal-attractions-slick .slick-slide {
  margin: 0 15px;
}

.seasonal-attractions-slick .slick-slide img {
  width: 100%;
  height: auto;
  max-height: auto;
  -o-object-fit: cover;
     object-fit: cover;
  aspect-ratio: 1/1;
}

.seasonal-attractions-slick.slick-slide .slider-img {
  margin: 0 60px;
}

.seasonal-attractions-slick .slick-prev {
  left: -47px;
}

.seasonal-attractions-slick .slick-prev:before {
  content: "";
  width: 20px;
  height: 26px;
  background: url(/images/front/icon/icon-arrow-left2.svg) no-repeat 0 0;
  display: block;
}

.seasonal-attractions-slick .slick-next {
  right: -47px;
}

.seasonal-attractions-slick .slick-next:before {
  content: "";
  width: 20px;
  height: 26px;
  background: url(/images/front/icon/icon-arrow-right2.svg) no-repeat center right;
  display: block;
}

.seasonal-attractions-slick .slick-next,
.seasonal-attractions-slick .slick-prev {
  top: calc(50% - 20px);
}

.main-content-travel-theme {
  width: 100%;
  padding: 80px 0 120px;
}

.main-content-travel-theme h3 {
  display: flex;
  justify-content: space-between;
  max-width: 1200px;
  margin: 0 auto 32px;
}

.main-content-travel-theme h3 .ttl-logo {
  background: url(/images/front/top/ttl-travel-theme.svg) no-repeat left 0;
  font-size: 0;
  width: 704px;
  height: 99px;
  background-size: contain;
}

.main-content-travel-theme h3 .ttl-text {
  margin: auto 64px 48px auto;
  font-size: 24px;
}

.main-content-travel-theme ul {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 32px;
  padding: 0;
  margin: 0;
  flex-wrap: wrap;
}

.main-content-travel-theme ul figure {
  position: relative;
  margin: 0;
}

.main-content-travel-theme ul figure figcaption {
  position: absolute;
  bottom: 0;
  color: var(--white);
  font-size: 18px;
  padding: 0 0 22px;
  display: block;
  text-align: center;
  width: 100%;
  text-shadow: 0 0 6px rgba(0, 0, 0, 0.4);
}

.main-content-travel-theme .main-content-travel-theme-list {
  max-width: 1200px;
  margin: 0 auto 64px;
}

.main-content-travel-theme .main-content-travel-theme-list img {
  width: 100%;
  min-width: 276px;
  height: 184px;
  -o-object-fit: cover;
     object-fit: cover;
  aspect-ratio: 3/2;
}

.main-content-travel-theme .main-content-btnarea {
  display: flex;
  justify-content: center;
}

.main-content-ranking {
  background: linear-gradient(180deg, #e9f0ee 0%, #d5e4e6 100%);
  width: 100%;
  position: relative;
  padding: 130px 0 170px;
  -webkit-clip-path: polygon(0 0, 100% 50px, 100% calc(100% - 50px), 0 100%);
          clip-path: polygon(0 0, 100% 50px, 100% calc(100% - 50px), 0 100%);
}

.main-content-ranking::before {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  background: url(/images/front/back-image-f03.png) no-repeat center 60%;
  opacity: 0.1;
  top: 0;
}

.main-content-ranking h3,
.main-content-ranking-list {
  position: relative;
}

.main-content-ranking h3 {
  display: flex;
  justify-content: space-between;
  max-width: 1200px;
  margin: 0 auto 32px;
}

.main-content-ranking h3 .ttl-logo {
  background: url(/images/front/top/ttl-ranking.svg) no-repeat left 0;
  font-size: 0;
  width: 417px;
  height: 123px;
  background-size: contain;
  margin-right: 63px;
}

.main-content-ranking h3 .ttl-text {
  margin: auto auto 48px 64px;
  font-size: 24px;
}

.main-content-ranking-list ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 80px 32px;
  max-width: 970px;
  margin: 0 auto;
  padding: 0;
}

.main-content-ranking-list figure {
  margin: 0;
  position: relative;
}

.main-content-ranking-list figure::after {
  content: "";
  display: block;
  position: absolute;
}

.main-content-ranking-list figure.rank1::after {
  width: 87px;
  height: 87px;
  background: url(/images/front/top/ranking-icon_1.svg) no-repeat 0 0;
  top: -12px;
  left: -12px;
}

.main-content-ranking-list figure.rank2::after {
  width: 87px;
  height: 87px;
  background: url(/images/front/top/ranking-icon_2.svg) no-repeat 0 0;
  top: -12px;
  left: -12px;
}

.main-content-ranking-list figure.rank3::after {
  width: 64px;
  height: 64px;
  background: url(/images/front/top/ranking-icon_3.svg) no-repeat 0 0;
  top: -9px;
  left: -9px;
}

.main-content-ranking-list figure.rank4::after {
  width: 64px;
  height: 64px;
  background: url(/images/front/top/ranking-icon_4.svg) no-repeat 0 0;
  top: -9px;
  left: -9px;
}

.main-content-ranking-list figure.rank5::after {
  width: 64px;
  height: 64px;
  background: url(/images/front/top/ranking-icon_5.svg) no-repeat 0 0;
  top: -9px;
  left: -9px;
}

.main-content-ranking-list figure.rank1,
.main-content-ranking-list figure.rank2 {
  width: 450px;
}

.main-content-ranking-list figure.rank1 img,
.main-content-ranking-list figure.rank2 img {
  width: 100%;
  height: 300px;
  -o-object-fit: cover;
     object-fit: cover;
}

.main-content-ranking-list figure.rank3,
.main-content-ranking-list figure.rank4,
.main-content-ranking-list figure.rank5 {
  width: 300px;
}

.main-content-ranking-list figure.rank3 img,
.main-content-ranking-list figure.rank4 img,
.main-content-ranking-list figure.rank5 img {
  width: 100%;
  height: 200px;
  -o-object-fit: cover;
     object-fit: cover;
}

.main-content-ranking-list figure figcaption {
  margin-top: 16px;
}

.main-content-ranking-list a {
  text-decoration: none;
  color: var(--dark);
  font-size: 14px;
}

.main-content-recommendation-item {
  max-width: 1200px;
  margin: 0 auto;
  padding: 120px 0;
}

.main-content-recommendation-item h3 {
  display: flex;
  flex-direction: column;
  justify-content: center;
  margin: 0 auto 80px;
}

.main-content-recommendation-item h3 .ttl-logo {
  background: url(/images/front/top/ttl-recommendation-item.svg) no-repeat center 0;
  font-size: 0;
  width: 100%;
  height: 94px;
  background-size: contain;
}

.main-content-recommendation-item h3 .ttl-text {
  margin: 32px auto 0;
  font-size: 24px;
}

.main-content-recommendation-item-list {
  display: flex;
  justify-content: center;
  align-items: baseline;
  padding: 0;
  margin: 0;
  gap: 37px;
  flex-wrap: wrap;
}

.main-content-recommendation-item-list .recommendation-item {
  max-width: 210px;
}

.main-content-recommendation-item-list .recommendation-item figure {
  margin: 0;
}

.main-content-recommendation-item-list .recommendation-item figure img {
  width: 100%;
  max-width: 210px;
  height: 214px;
  -o-object-fit: cover;
     object-fit: cover;
}

.main-content-recommendation-item-list .recommendation-item a {
  color: var(--dark);
  text-decoration: none;
  font-size: 14px;
}

.main-content-recommendation-item-list figure {
  margin: 0;
}

.main-content-recommendation-item-list figure img {
  width: 100%;
  max-width: 210px;
  height: 214px;
  -o-object-fit: cover;
     object-fit: cover;
}

.main-content-recommendation-item-list a {
  color: var(--dark);
  text-decoration: none;
  font-size: 14px;
}

.main-content-recommendation-item .main-content-btnarea {
  margin-top: 64px;
  display: flex;
  justify-content: center;
}

.main-content-pickUp {
  background: var(--search-blue);
  width: 100%;
  position: relative;
  padding: 80px 0 120px;
}

.main-content-pickUp::before {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  background: url(/images/front/back-image-f02.png) no-repeat center 30%;
  opacity: 0.15;
  top: 0;
}

.main-content-pickUp h3,
.main-content-pickUp-list {
  position: relative;
}

.main-content-pickUp-list {
  max-width: 1200px;
  margin: 0 auto;
}

.main-content-pickUp-list ul {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 48px;
  padding: 0;
  margin: 0;
  flex-wrap: wrap;
}

.main-content-pickUp-list ul figure {
  position: relative;
  margin: 0;
}

.main-content-pickUp-list ul figure figcaption {
  position: absolute;
  bottom: 0;
  color: var(--white);
  font-size: 18px;
  padding: 0 30px 22px;
  text-shadow: 0 0 6px rgba(0, 0, 0, 0.5);
}

.main-content-pickUp-list img {
  width: 100%;
  height: 300px;
  -o-object-fit: cover;
     object-fit: cover;
  aspect-ratio: 344/300;
}

.main-content-pickUp h3 {
  display: flex;
  justify-content: space-between;
  max-width: 1200px;
  margin: 0 auto 32px;
}

.main-content-pickUp h3 .ttl-logo {
  background: url(/images/front/top/ttl-pick-up.svg) no-repeat left 0;
  font-size: 0;
  width: 417px;
  height: 123px;
  background-size: contain;
}

.main-content-pickUp h3 .ttl-text {
  margin: auto 64px 48px auto;
  font-size: 24px;
}

.main-content-information {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  max-width: 1136px;
  margin: 0 auto;
  padding: 120px 0 19px;
}

.main-content-information .main-content-information-left {
  width: 386px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}

.main-content-information .main-content-information-left .main-content-information-ttl {
  letter-spacing: 0.5rem;
  font-size: 24px;
  margin: 0 0 55px;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 57px;
}

.main-content-information .main-content-information-left .main-content-information-ttl::before {
  content: "";
  display: block;
  width: 385px;
  height: 62px;
  background: url(/images/front/contents/ttl-news.svg) no-repeat center top;
  background-size: contain;
}

.main-content-information .main-content-information-left .main-content-information--btnarea {
  width: 272px;
  height: 38px;
}

.main-content-information .main-content-information-left .main-content-information--btnarea .btn.btn-white {
  width: 100%;
  height: 100%;
  border-radius: 20px;
}

.main-content-information .main-content-information-left .main-content-information--btnarea .btn.btn-white::after {
  top: 15px;
}

.main-content-information .main-content-information-right {
  max-width: 686px;
  width: calc(100% - 386px);
}

.main-content-sns {
  max-width: 1136px;
  margin: 1.25rem auto 1rem;
}

.main-content-sns .main-content-sns-list {
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 0;
  margin: 0 0 80px;
  gap: 32px;
}

.main-content-sns .main-content-sns-list a {
  display: block;
}

.main-content-header {
  background: var(--footer-blue);
  width: 100%;
  height: 176px;
  position: relative;
  color: var(--white);
  display: flex;
  justify-content: center;
  align-items: center;
}

.main-content-header h2 {
  opacity: 1;
  position: relative;
  display: flex;
  justify-content: center;
  flex-direction: column;
  align-items: center;
  gap: 16px 0;
  letter-spacing: 0.7rem;
  font-size: 24px;
  max-width: 1000px;
}

.main-content-header h2.ttl-feature::after {
  content: "";
  width: 192px;
  height: 42px;
  background: url(/images/front/contents/ttl-feature.svg) no-repeat center top;
  display: block;
}

.main-content-header h2.ttl-theme-w::after {
  content: "";
  width: 169px;
  height: 43px;
  background: url(/images/front/contents/ttl-theme-w.svg) no-repeat center top;
  display: block;
}

.main-content-header h2.ttl-news {
  letter-spacing: 0.5rem;
}

.main-content-header h2.ttl-news::after {
  content: "";
  width: 237px;
  height: 35px;
  background: url(/images/front/contents/ttl-news.svg) no-repeat center top;
  display: block;
  background-size: contain;
}

.main-content-header h2.ttl-contact {
  letter-spacing: 0.5rem;
}

.main-content-header h2.ttl-contact::after {
  content: "";
  width: 172px;
  height: 35px;
  background: url(/images/front/contents/ttl-contact.svg) no-repeat center top;
  display: block;
}

.main-content-header h2.ttl-link {
  letter-spacing: 0.5rem;
}

.main-content-header h2.ttl-link::after {
  content: "";
  width: 141px;
  height: 35px;
  background: url(/images/front/contents/ttl-link.svg) no-repeat center top;
  display: block;
}

.main-content-header h2.ttl-brochure {
  letter-spacing: 0.5rem;
}

.main-content-header h2.ttl-brochure::after {
  content: "";
  width: 184px;
  height: 35px;
  background: url(/images/front/contents/ttl-brochure.svg) no-repeat center top;
  display: block;
}

.main-content-header h2.ttl-course::after {
  display: none;
}

.main-content-header::before {
  content: "";
  position: absolute;
  width: 100%;
  height: 176px;
  background: url(/images/front/back-image-f01.png) no-repeat center 17%;
  opacity: 0.2;
}

.main-content-header.content-news {
  background: var(--search-blue);
  color: var(--dark);
}

.main-content-header.content-news::before {
  background: url(/images/front/back-image-f02.png) no-repeat center 30%;
}

.main-content-header.content-news-detail {
  background: none;
  height: auto;
  max-width: 1200px;
  margin: 0 auto 65px;
  justify-content: flex-start;
}

.main-content-header.content-news-detail::before {
  display: none;
}

.main-content-header.content-news-detail .ttl-news {
  font-size: 0;
  gap: 0;
}

.main-content-header.content-spot-detail {
  background: none;
  height: auto;
  max-width: 1200px;
  margin: 0 auto 65px;
  justify-content: flex-start;
  /* 詳細ページ 見出し画像まとめ */
}

.main-content-header.content-spot-detail::before {
  display: none;
}

.main-content-header.content-spot-detail .ttl-spot-b,
.main-content-header.content-spot-detail .ttl-activity-event-b,
.main-content-header.content-spot-detail .ttl-gourmet-b,
.main-content-header.content-spot-detail .ttl-stay-b,
.main-content-header.content-spot-detail .ttl-access-b,
.main-content-header.content-spot-detail .ttl-service-b,
.main-content-header.content-spot-detail .ttl-meet-b,
.main-content-header.content-spot-detail .ttl-theme-b,
.main-content-header.content-spot-detail .ttl-favorite-b,
.main-content-header.content-spot-detail .ttl-feature-b,
.main-content-header.content-spot-detail .ttl-course-b {
  font-size: 0;
  gap: 0;
}

.main-content-header.content-spot-detail .ttl-spot-b::before,
.main-content-header.content-spot-detail .ttl-activity-event-b::before,
.main-content-header.content-spot-detail .ttl-gourmet-b::before,
.main-content-header.content-spot-detail .ttl-stay-b::before,
.main-content-header.content-spot-detail .ttl-access-b::before,
.main-content-header.content-spot-detail .ttl-service-b::before,
.main-content-header.content-spot-detail .ttl-meet-b::before,
.main-content-header.content-spot-detail .ttl-theme-b::before,
.main-content-header.content-spot-detail .ttl-favorite-b::before,
.main-content-header.content-spot-detail .ttl-feature-b::before,
.main-content-header.content-spot-detail .ttl-course-b::before {
  content: "";
  display: block;
}

.main-content-header.content-spot-detail .ttl-spot-b::before {
  width: 140px;
  height: 46px;
  background: url(/images/front/contents/ttl-spot-b.svg) no-repeat center top;
  background-size: contain;
}

.main-content-header.content-spot-detail .ttl-activity-event-b::before {
  width: 353px;
  height: 58px;
  background: url(/images/front/contents/ttl-activity-event-b.svg) no-repeat center top;
  background-size: contain;
}

.main-content-header.content-spot-detail .ttl-gourmet-b::before {
  width: 217px;
  height: 46px;
  background: url(/images/front/contents/ttl-gourmet-b.svg) no-repeat center top;
  background-size: contain;
}

.main-content-header.content-spot-detail .ttl-stay-b::before {
  width: 140px;
  height: 46px;
  background: url(/images/front/contents/ttl-stay-b.svg) no-repeat center top;
  background-size: contain;
}

.main-content-header.content-spot-detail .ttl-access-b::before {
  width: 187px;
  height: 43px;
  background: url(/images/front/contents/ttl-access-b.svg) no-repeat center top;
  background-size: contain;
}

.main-content-header.content-spot-detail .ttl-service-b::before {
  width: 187px;
  height: 46px;
  background: url(/images/front/contents/ttl-service-b.svg) no-repeat center top;
  background-size: contain;
}

.main-content-header.content-spot-detail .ttl-meet-b::before {
  width: 140px;
  height: 43px;
  background: url(/images/front/contents/ttl-meet-b.svg) no-repeat center top;
  background-size: contain;
}

.main-content-header.content-spot-detail .ttl-theme-b::before {
  width: 170px;
  height: 43px;
  background: url(/images/front/contents/ttl-theme-b.svg) no-repeat center top;
  background-size: contain;
}

.main-content-header.content-spot-detail .ttl-favorite-b::before {
  width: 217px;
  height: 48px;
  background: url(/images/front/contents/ttl-favorite-b.svg) no-repeat center top;
  background-size: contain;
}

.main-content-header.content-spot-detail .ttl-feature-b::before {
  width: 224px;
  height: 49px;
  background: url(/images/front/contents/ttl-feature-b.svg) no-repeat center top;
  background-size: contain;
}

.main-content-header.content-spot-detail .ttl-course-b::before {
  width: 187px;
  height: 43px;
  background: url(/images/front/contents/ttl-course-b.svg) no-repeat center top;
  background-size: contain;
}

.main-content-header.content-feature-detail {
  background: none;
  height: auto;
  max-width: 1200px;
  margin: 0 auto 26px;
  justify-content: flex-start;
}

.main-content-header.content-feature-detail::before {
  display: none;
}

.main-content-header.content-feature-detail .ttl-feature {
  font-size: 0;
  gap: 0;
}

.main-content-header.content-feature-detail .ttl-feature::before {
  content: "";
  display: block;
  width: 162px;
  height: 36px;
  background: url(/images/front/contents/ttl-feature2.svg) no-repeat center top;
  background-size: contain;
}

.main-content-header.content-feature-detail h2.ttl-feature::after {
  display: none;
}

.main-content-header.content-course-detail {
  background: none;
  height: auto;
  max-width: 1200px;
  margin: 0 auto 26px;
  justify-content: flex-start;
}

.main-content-header.content-course-detail::before {
  display: none;
}

.main-content-header.content-course-detail .ttl-course {
  font-size: 0;
  gap: 0;
}

.main-content-header.content-course-detail .ttl-course::before {
  content: "";
  display: block;
  width: 225px;
  height: 36px;
  background: url(/images/front/contents/ttl-itinerary.svg) no-repeat center top;
  background-size: contain;
}

.is-spot-detail .o-spot-detail__header__inner,
.is-spot-detail .o-spot-detail__caption {
  padding: 0 52px;
}

.is-spot-detail .o-spot-detail__header {
  max-width: 1140px;
  margin: 0 auto 134px;
}

.is-spot-detail .o-spot-detail__header__inner {
  border-bottom: 1px solid var(--dark);
}

.is-spot-detail .o-spot-detail__header__inner .o-spot-detail__title {
  font-weight: bold;
  font-family: var(--font-family-bold);
  line-height: 1.2;
  margin: 17px 0 27px;
  font-size: 28px;
}

.is-spot-detail .o-spot-detail__header__inner .katakana-text {
  font-size: 14px;
  line-height: 1.2;
  margin: 0;
}

.is-spot-detail .o-spot-detail__caption {
  font-size: 18px;
  line-height: 1.9;
  margin: 32px 0 0;
}

.custom-checkbox .custom-control-label::before,
.custom-control-label::after {
  display: none;
}

.custom-control-input {
  position: static;
  z-index: 1;
  opacity: 1;
}

.text-link {
  color: var(--line-blue);
  font-size: 14px;
  line-height: 1.2;
  display: inline-flex;
  align-items: center;
  gap: 25px;
  word-break: break-all;
}

.text-link::after {
  content: "";
  width: 16px;
  height: 16px;
  background: url(/images/front/icon/icon_link-window.svg) no-repeat 0 0;
  padding: 0 3px;
}

.modal-content .modal-header {
  position: relative;
}

.modal-content .modal-header .close {
  position: absolute;
  right: 15px;
  top: 10px;
  padding: 0;
  margin: 0;
  height: 22px;
}

.modal-content .modal-header .close span {
  line-height: 1;
}

.modal-content .modal-footer {
  justify-content: center;
}

.modal-content .modal-footer ul.l-contents {
  gap: 0 0.3rem;
}

.modal-content .modal-footer .btn.btn-black::before {
  display: none;
}

.modal-content .btn.btn-black,
.modal-content .btn.btn-white {
  margin: 1rem auto;
  padding-left: 1rem;
}

.modal-content .btn.btn-black:after,
.modal-content .btn.btn-white:after {
  display: none;
}

.modal-content .modal-footer ul.l-contents li:first-child {
  width: 100%;
}

@media (max-width: 1200px) {
  .main-content-travel-theme .main-content-travel-theme-list {
    padding: 0 1rem;
  }
}

@media (max-width: 1199px) {
  .seasonal-attractions-slick {
    margin: 0 47px;
  }
}

@media (min-width: 1025px) {
  .main-content-travel-theme .main-content-travel-theme-list li {
    width: calc(25% - 24px);
    min-width: 276px;
    height: 184px;
  }
}

@media (max-width: 1024px) {
  .main-content-attention .main-content-attention-inner {
    gap: 3rem;
  }

  .main-content-attention .main-content-attention-inner img {
    margin-left: 1rem;
  }

  .main-content-about {
    display: flex;
    flex-direction: column;
  }

  .main-content-about::before {
    display: none;
  }

  .main-content-about::after {
    content: "";
    display: block;
    width: 100%;
    height: 500px;
    background: url(/images/front/top/top-map.svg) no-repeat center 0;
    background-size: contain;
    order: 3;
  }

  .main-content-about h3 {
    order: 1;
  }

  .main-content-about h3 .ttl-logo {
    margin: 0 auto;
    background-position-x: center;
  }

  .main-content-about .main-content-text {
    margin: 0 auto;
    font-size: 14px;
    order: 2;
  }

  .main-content-about .main-content-btnarea {
    order: 4;
  }

  .main-content-about .main-content-btnarea .btn {
    margin: 30px auto;
  }

  .main-content-seasonal-attractions-ttl {
    width: 80%;
  }

  .main-content-seasonal-attractions-ttl img {
    width: 100%;
  }

  .main-content-seasonal-attractions {
    padding: 130px 0 9rem;
  }

  .seasonal-attractions-slick .slick-slide {
    margin: 0 1.5rem;
  }

  .seasonal-attractions-slick .slick-slide a {
    text-decoration: none;
  }

  .main-content-recommendation-item-list {
    flex-wrap: wrap;
    justify-content: center;
  }

  .seasonal-attractions-slick .slick-prev {
    left: -25px;
  }

  .seasonal-attractions-slick .slick-next {
    right: -25px;
  }
}

@media (max-width: 1023px) {
  .main-content-information {
    flex-direction: column;
    align-items: center;
  }

  .main-content-information .main-content-information-left .main-content-information-ttl {
    gap: 1.5rem;
    margin-bottom: 0;
  }

  .main-content-information .main-content-information-left {
    margin-bottom: 3rem;
    width: 100%;
  }

  .main-content-information .main-content-information-right {
    width: 100%;
  }

  .main-content-information-right .o-information__wrapper {
    margin-bottom: 2.5rem;
  }

  .main-content-information--btnarea.for-sp .btn {
    margin: 0 auto 56px;
  }

  .main-content-ranking-list ul {
    justify-content: center;
    gap: 32px;
  }

  .main-content-ranking-list figure.rank1,
  .main-content-ranking-list figure.rank2 {
    width: 300px;
  }

  .main-content-ranking-list figure figcaption {
    margin-top: 0.6rem;
  }

  .main-content-ranking-list figure.rank1 img,
  .main-content-ranking-list figure.rank2 img {
    width: 100%;
    height: 200px;
    -o-object-fit: cover;
       object-fit: cover;
  }

  .main-content-ranking-list figure.rank1::after,
  .main-content-ranking-list figure.rank2::after {
    width: 64px;
    height: 64px;
    top: -9px;
    left: -9px;
    background-size: contain;
  }
}

@media (max-width: 999px) {
  .main-content-header {
    height: auto;
  }

  .main-content-header::before {
    height: 100%;
  }

  .main-content-header h2 {
    padding: 0 2rem;
    margin: 1.5rem 0;
    font-size: 1.3rem;
    letter-spacing: 0.4rem;
  }
}

@media (max-width: 768px) {
  .main-content-attention .main-content-attention-inner {
    gap: 5px;
    flex-wrap: wrap;
    height: auto;
    padding: 5px 10px;
  }

  .main-content-attention .main-content-attention-inner img {
    max-width: 140px;
    margin: 0;
  }

  .main-content-about {
    padding: 2.5rem 1rem 3rem;
  }

  .main-content-about h3 .ttl-logo {
    height: 160px;
  }

  .main-content-about .main-content-text {
    padding: 2rem 1rem;
  }

  .main-content-about .main-content-btnarea {
    padding: 0;
  }

  .main-content-about::after {
    height: 360px;
  }

  .main-content-travel-theme {
    padding: 2.5rem 1rem 3rem;
    box-sizing: border-box;
  }

  .main-content-travel-theme h3 {
    flex-direction: column;
  }

  .main-content-travel-theme h3 .ttl-logo {
    width: 100%;
    height: 64px;
  }

  .main-content-travel-theme h3 .ttl-text {
    margin-bottom: 0;
  }

  .main-content-travel-theme .main-content-travel-theme-list {
    padding: 0;
    margin-bottom: 3rem;
  }

  .main-content-travel-theme ul {
    gap: 1rem;
  }

  .main-content-travel-theme ul li {
    width: calc(50% - 1rem);
  }

  .main-content-travel-theme .main-content-travel-theme-list img {
    min-width: auto;
    height: auto;
  }

  .main-content-ranking {
    padding: 4rem 0;
    box-sizing: border-box;
  }

  .main-content-ranking::before {
    background-position: center 0;
  }

  .main-content-ranking h3 {
    flex-direction: column;
  }

  .main-content-ranking h3 .ttl-text {
    margin-bottom: 0;
  }

  .main-content-ranking h3 .ttl-logo {
    width: 100%;
    height: 90px;
    background-size: contain;
    background-position: center 0;
  }

  .main-content-ranking-list {
    padding: 0 1rem;
  }

  .main-content-ranking-list ul {
    justify-content: center;
    max-width: 640px;
    gap: 1rem;
  }

  .main-content-ranking-list ul li {
    width: 100%;
  }

  .main-content-ranking-list ul li:nth-child(n+2) {
    width: calc(50% - 1rem);
  }

  .main-content-ranking-list figure.rank1 {
    width: 100%;
    max-width: 380px;
    margin: 0 auto;
  }

  .main-content-recommendation-item {
    padding: 2.5rem 1rem 3rem;
    box-sizing: border-box;
  }

  .main-content-recommendation-item h3 {
    margin: 0 auto;
  }

  .main-content-recommendation-item h3 .ttl-logo {
    height: 35px;
  }

  .main-content-recommendation-item h3 .ttl-text {
    margin: 1rem auto 0;
  }

  .main-content-recommendation-item-list {
    gap: 20px;
  }

  .main-content-recommendation-item-list .recommendation-item {
    max-width: 100%;
  }

  .main-content-recommendation-item-list .recommendation-item figure {
    text-align: center;
  }

  .main-content-recommendation-item-list .recommendation-item figure img {
    margin: 0 auto;
  }

  .main-content-recommendation-item-list .slick-prev {
    left: 2rem;
  }

  .main-content-recommendation-item-list .slick-next {
    right: 2rem;
  }

  .main-content-recommendation-item-list .slick-prev,
  .main-content-recommendation-item-list .slick-next {
    width: 14px;
    height: 26px;
    opacity: 1;
    z-index: 1;
    top: calc(50% - 13px);
  }

  .main-content-recommendation-item-list .slick-prev::before {
    content: "";
    width: 14px;
    height: 26px;
    background: url(/images/front/icon/icon-arrow-left3.svg) no-repeat 0 0;
    display: block;
  }

  .main-content-recommendation-item-list .slick-next::before {
    content: "";
    width: 14px;
    height: 26px;
    background: url(/images/front/icon/icon-arrow-right3.svg) no-repeat 0 0;
    display: block;
  }

  .main-content-pickUp {
    padding: 2.5rem 0 3rem;
    box-sizing: border-box;
  }

  .main-content-pickUp h3 {
    flex-direction: column;
  }

  .main-content-pickUp h3 .ttl-logo {
    width: 100%;
    height: 74px;
    background-position-x: center;
  }

  .main-content-pickUp h3 .ttl-text {
    margin-bottom: 0;
  }

  .main-content-pickUp-list {
    padding: 0 2rem;
  }

  .main-content-pickUp-list ul {
    gap: 2rem;
  }

  .main-content-pickUp-list a {
    text-decoration: none;
  }

  .main-content-pickUp-list ul figure {
    display: flex;
    align-items: center;
  }

  .main-content-pickUp-list ul figure img {
    width: 50%;
    height: auto;
  }

  .main-content-pickUp-list ul figure figcaption {
    padding: 0 0 0 1rem;
    text-shadow: none;
    color: var(--dark);
    position: relative;
  }

  .is-spot-detail .o-spot-detail__header {
    margin-bottom: 100px;
  }

  .main-content-ranking-list figure.rank2,
  .main-content-ranking-list figure.rank3,
  .main-content-ranking-list figure.rank4,
  .main-content-ranking-list figure.rank5 {
    width: 100%;
  }

  .main-content-ranking-list figure.rank1 img,
  .main-content-ranking-list figure.rank2 img,
  .main-content-ranking-list figure.rank3 img,
  .main-content-ranking-list figure.rank4 img,
  .main-content-ranking-list figure.rank5 img {
    width: 100%;
    height: auto;
    -o-object-fit: cover;
       object-fit: cover;
    aspect-ratio: 3/2;
  }

  .main-content-sns {
    margin-bottom: 4rem;
  }
}

@media (min-width: 767px) {
  .modal-content .modal-footer ul.l-contents {
    max-height: none;
  }
}

@media (max-width: 576px) {
  .main-content-header.content-spot-detail {
    margin-bottom: 2.5rem;
  }

  .is-spot-detail .o-spot-detail__header__inner,
  .is-spot-detail .o-spot-detail__caption {
    padding: 0 2rem;
  }

  .main-content-header.content-feature-detail {
    margin: 0 auto 2rem;
  }

  .main-content-header.content-course-detail {
    margin: 0 auto 2rem;
  }
}

@media (max-width: 570px) {
  .main-content-seasonal-attractions-tabarea .ttl-tab-list {
    text-align: center;
    margin: 0 auto 15px;
  }

  .main-content-seasonal-attractions-tabarea .tab-list {
    justify-content: center;
  }
}

@media (max-width: 425px) {
  .main-content-ranking h3 {
    flex-direction: column;
  }

  .main-content-ranking h3 .ttl-logo {
    width: 100%;
    height: 74px;
    background-position: center;
  }

  .main-content-travel-theme ul figure figcaption {
    font-size: 16px;
    padding: 0 0 12px;
  }

  .main-content-ranking-list figure {
    text-align: center;
  }

  .main-content-ranking-list figure img {
    max-width: 100%;
  }

  .main-content-information {
    padding-top: 4rem;
  }

  .main-content-information .main-content-information-left .main-content-information-ttl::before {
    width: 280px;
    height: 43px;
  }
}

@media (max-width: 375px) {
  .seasonal-attractions-slick .slick-slide {
    margin: 0 12px;
  }
}

/* == 下層コンテンツ 特集検索 == */

.search-header-menu {
  max-width: 1040px;
  width: 84%;
  margin: 80px auto 0;
}

.search-header-menu .search-header-menu-list {
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0;
  gap: 9px;
  padding: 0;
}

.search-header-menu .search-header-menu-list li {
  width: 33.33333%;
  height: 45px;
  background-color: var(--white);
  border-width: 1px 1px 0 1px;
  border-style: solid;
  border-color: #96979C;
  border-radius: 15px 15px 0 0;
  display: flex;
  justify-content: center;
  align-items: center;
}

.search-header-menu .search-header-menu-list li:hover {
  background-color: var(--dark);
}

.search-header-menu .search-header-menu-list li:hover a {
  color: var(--white);
}

.search-header-menu .search-header-menu-list li a {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
  text-decoration: none;
  color: var(--dark);
  font-family: var(--font-family-bold);
  font-weight: 600;
}

.search-header-menu .search-header-menu-list li a:hover {
  opacity: 1;
}

.search-header-menu .search-header-menu-list li.action {
  background-color: var(--dark);
}

.search-header-menu .search-header-menu-list li.action a {
  color: var(--white);
}

.search-area {
  width: 100%;
  padding: 40px 0;
  box-sizing: border-box;
  min-height: 128px;
  background: var(--search-blue);
}

.search-area .search-feature-input-area,
.search-area .search-feature-results-area {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 16px;
  width: 100%;
  max-width: 1140px;
  margin: 0 auto;
}

.search-area .search-feature-input-area .btn {
  width: 218px;
  height: 48px;
  border-radius: 50px;
  position: relative;
  padding: 0 2.5rem 0 1rem;
}

.search-area .search-feature-input-area .btn::after {
  content: "";
  position: absolute;
  right: 20px;
  top: calc(50% - 5px);
  width: 15px;
  height: 8px;
  background: url(/images/front/icon/icon-arrow-bottom.svg) no-repeat 0 0;
  pointer-events: none;
}

.search-area .search-feature-input-area .btn.active {
  background-color: var(--dark);
  color: var(--white);
  border-color: var(--dark);
}

.search-area .search-feature-input-area .btn.active::after {
  background: url(/images/front/icon/icon-arrow-top2.svg) no-repeat 0 0;
}

.search-area .search-feature-input-area input {
  width: 295px;
  height: 48px;
}

.search-area .search-feature-input-area + .search-feature-results-area {
  margin-top: 36px;
}

.search-area .search-feature-results-area {
  font-size: 14px;
  flex-wrap: wrap;
}

.search-area .search-feature-results-area p {
  margin: 0;
}

.search-area .search-feature-results-area button {
  display: flex;
  justify-content: space-between;
  align-items: center;
  border: 1px solid var(--dark);
  height: 32px;
  border-radius: 4px;
  padding: 0 10px;
  background: none;
  color: var(--dark);
}

.search-area .search-feature-results-area button.all-reset {
  border: none;
}

.search-area .search-feature-results-area button .icon-close {
  margin-left: 20px;
}

.search-area .search_category_box,
.search-area .search_area_box,
.search-area .search_distance_box {
  display: none;
  width: 100%;
  max-width: 1140px;
  background-color: var(--white);
  border: 1px solid var(--light-gray);
  border-radius: 16px;
  margin: 31px auto 0;
  padding: 41px 56px;
  position: relative;
}

.search-area .search_category_box .search_box__close-btn,
.search-area .search_area_box .search_box__close-btn,
.search-area .search_distance_box .search_box__close-btn {
  border: none;
  background: none;
  position: absolute;
  top: 15px;
  right: 15px;
}

.search-area .search-area__box_btn-area {
  display: flex;
  justify-content: center;
  gap: 24px;
  margin-top: 40px;
}

.search-area .search-area__box_btn-area .btn {
  width: 300px;
  height: 48px;
  border-radius: 50px;
}

.search-area .search_category_list,
.search-area .search_area_list {
  display: flex;
  flex-direction: column;
  gap: 23px;
}

.search-area .search_distance_list {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 1rem 78px;
}

.search-area .search_category_list li,
.search-area .search_area_list li,
.search-area .search_distance_list li {
  font-size: 14px;
  font-family: var(--font-family-bold);
  font-weight: bold;
}

.search-area .search_category_list label,
.search-area .search_area_list label,
.search-area .search_distance_list label {
  display: flex;
  align-items: center;
  gap: 10px;
}

.search-area .search_distance_list label {
  align-items: flex-start;
}

.search-area .search_category_list li > .search_category_list__inner {
  display: flex;
  flex-wrap: wrap;
  margin-top: 10px;
  margin-left: 2.5rem;
  gap: 10px;
}

.search-area .search_category_list__inner li {
  font-family: var(--font-family);
  font-weight: normal;
  width: calc(33.33333% - 10px);
}

.search-area .search_area_box__inner {
  display: flex;
}

.search-area .search_area_box__inner .search_area_box__inner_left {
  min-width: calc(100% - 784px);
  width: calc(1100px - 784px);
  order: 1;
}

.search-area .search_area_box__inner .search_area_box__inner-btn {
  order: 3;
}

.search-area .search_area_box__inner .search_area_box__inner-btn {
  width: 187px;
  height: 32px;
  position: absolute;
  top: 360px;
}

.search-area .search_area_box__inner .search_area_box__inner-btn::after {
  display: none;
}

.search-area .search_area_box__inner .search_area_box__inner-btn::before {
  content: "";
  display: block;
  position: absolute;
  top: calc(50% - 7px);
  right: 15px;
  width: 7px;
  height: 13px;
  background: url(/images/front/icon/icon-arrow-right4.svg) no-repeat 0 0;
  background-size: contain;
}

.search-area .search_area_box__inner .search_area_box__inner_right {
  width: 100%;
  max-width: 784px;
  position: relative;
  order: 2;
}

.search-area .search_area_box__inner .search_area_box__inner_right img {
  width: 100%;
}

.search-area .search_area_box__inner .search_area_box__inner_right .search-area__map-color {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
  display: none;
}

.search-area .search_area_box__inner .search_area_box__inner_right .active {
  display: block;
}

#tourism-attraction-form {
  padding: 0;
}

@media (max-width: 1023px) {
  .search-area .search-feature-input-area .search-select {
    width: 25%;
    min-width: 300px;
  }

  .search-area .search-feature-input-area .search-select select {
    width: 100%;
  }

  .search-area .search-feature-input-area input {
    width: 50%;
    min-width: 200px;
  }
}

@media (max-width: 949px) {
  .search-area {
    height: auto;
  }

  .search-area .search-feature-input-area,
  .search-area .search-feature-results-area {
    flex-wrap: wrap;
    padding: 0 1rem;
  }

  .search-area .search_area_box__inner {
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
    gap: 2rem;
  }

  .search-area .search_area_box__inner .search_area_box__inner-btn {
    position: relative;
    top: auto;
  }

  .search-area .search_category_list li > .search_category_list__inner li {
    width: calc(50% - 10px);
  }
}

@media (max-width: 768px) {
  .search-header-menu {
    margin: 3rem auto 0;
    width: 80%;
  }

  .search-header-menu .search-header-menu-list {
    padding: 0 10px;
  }

  .search-header-menu .search-header-menu-list li {
    font-size: 12px;
    padding: 0 15px;
    line-height: 1.2;
  }
}

@media (max-width: 768px) and (max-width: 577px) {
  .search-area .search_distance_box li:first-child {
    margin-right: 1.1rem;
  }

  .search-area__box_btn-area {
    flex-direction: column-reverse;
    align-items: center;
  }

  .search-area .search_category_list li > .search_category_list__inner li {
    width: 100%;
  }
}

@media (max-width: 768px) and (max-width: 576px) {
  .search-header-menu {
    width: 90%;
  }

  .search-header-menu .search-header-menu-list {
    padding: 0;
  }

  .search-header-menu .search-header-menu-list li {
    padding: 0 10px;
  }
}

@media (max-width: 768px) and (max-width: 499px) {
  .search-area .search-feature-input-area {
    flex-direction: column;
  }
}

.l-footer {
  color: var(--white);
}

.l-footer-inner {
  max-width: 1200px;
  margin: 0 auto;
}

.o-access__heading {
  font-size: 2rem;
  font-weight: 600;
  text-align: center;
}

@media (min-width: 1024px) {
  .o-access__heading {
    font-size: 2.4rem;
  }
}

.o-access__heading-box {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  min-height: 5rem;
  padding-top: 1rem;
  padding-bottom: 1rem;
  background-color: #fcdf53;
}

@media (min-width: 1024px) {
  .o-access__heading-box {
    height: 6rem;
  }
}

.o-access__heading-box--h40 {
  height: 4rem;
}

.o-access__heading-box--h40 .o-access__heading {
  font-size: 1.4rem;
}

@media (min-width: 1024px) {
  .o-access__heading-box--h40 .o-access__heading {
    font-size: 1.6rem;
  }
}

.o-access__description {
  font-size: 1.4rem;
  color: #000;
}

@media (min-width: 577px) {
  .o-access__description {
    font-size: 1.6rem;
  }
}

.o-access-point--two .o-access-point__item-journey::before,
.o-access-point--two .o-access-point__item-journey::after {
  position: absolute;
  content: "";
}

.o-access-point--two .o-access-point__item-journey::before {
  top: 0;
  left: 3rem;
  width: 0.2rem;
  height: calc(100% - 0.6rem);
  background: #1a1a1a;
}

.o-access-point--two .o-access-point__item-journey::after {
  bottom: -0.5rem;
  left: 2.5rem;
  border: 0.6rem solid transparent;
  border-top-color: #1a1a1a;
  transform: scale(1, 1.5);
}

@media (min-width: 577px) {
  .o-access-point--two .o-access-point__item-journey {
    width: 42.5rem;
  }
}

@media (min-width: 1024px) {
  .o-access-point--two .o-access-point__item-journey {
    width: 60rem;
  }
}

@media all and (min-width: 1200px) {
  .o-access-point--two .o-access-point__item-journey {
    width: 66rem;
  }
}

@media (min-width: 1281px) {
  .o-access-point--two .o-access-point__item-journey {
    width: 74rem;
  }
}

@media (min-width: 577px) {
  .o-access-point--two .o-access-point__item-journey .o-access-point--time dt {
    flex-direction: column;
    padding-right: 1.5rem;
  }

  .o-access-point--two .o-access-point__item-journey .o-access-point--time dt:empty {
    margin-top: 3rem;
  }

  .o-access-point--two .o-access-point__item-journey .o-access-point--time dt::after {
    display: block;
    width: 100%;
    height: 1.2rem;
    content: "";
    background: url("/images/front/access-arrow02.svg") no-repeat center center/100%;
  }
}

.o-access-point__list {
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
  align-items: center;
  margin-bottom: 2rem;
}

@media (min-width: 577px) {
  .o-access-point__list {
    flex-direction: row;
    margin-bottom: 2.8rem;
  }
}

.o-access-point__item {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  min-height: 6rem;
  padding: 0 1rem;
  font-size: 1.6rem;
  font-weight: 600;
  color: #008071;
  border: 0.2rem solid #008071;
}

@media (min-width: 577px) {
  .o-access-point__item {
    width: 15.5rem;
    margin-bottom: 3rem;
  }
}

@media (min-width: 1024px) {
  .o-access-point__item {
    width: 18rem;
  }
}

@media (min-width: 1281px) {
  .o-access-point__item {
    width: 20rem;
  }
}

.o-access-point__item:first-child,
.o-access-point__item:last-child {
  background-color: #e6f5f5;
}

.o-access-point__item-journey {
  position: relative;
  width: 100%;
  padding-left: 5rem;
}

.o-access-point__item-journey::before,
.o-access-point__item-journey::after {
  position: absolute;
  content: "";
}

.o-access-point__item-journey::before {
  top: 0;
  left: 3rem;
  width: 0.2rem;
  height: calc(100% - 0.6rem);
  background: #1a1a1a;
}

.o-access-point__item-journey::after {
  bottom: -0.5rem;
  left: 2.5rem;
  border: 0.6rem solid transparent;
  border-top-color: #1a1a1a;
  transform: scale(1, 1.5);
}

@media (min-width: 577px) {
  .o-access-point__item-journey {
    width: 13.5rem;
    padding: 0;
    margin-bottom: 3rem;
    text-align: center;
  }

  .o-access-point__item-journey.static {
    background-position: center calc(50% - 0.5rem);
  }

  .o-access-point__item-journey::before,
  .o-access-point__item-journey::after {
    display: none;
  }
}

@media (min-width: 1024px) {
  .o-access-point__item-journey {
    width: 21rem;
  }
}

@media all and (min-width: 1200px) {
  .o-access-point__item-journey {
    width: 24rem;
  }
}

@media (min-width: 1281px) {
  .o-access-point__item-journey {
    width: 27rem;
  }
}

@media (min-width: 577px) {
  .o-access-point__item-journey .o-access-point--time dt {
    flex-direction: column;
    padding-right: 1.5rem;
  }

  .o-access-point__item-journey .o-access-point--time dt:empty {
    margin-top: 3rem;
  }

  .o-access-point__item-journey .o-access-point--time dt::after {
    display: block;
    width: 100%;
    height: 1.2rem;
    content: "";
    background: url("/images/front/access-arrow01.svg") no-repeat left center/100%;
  }
}

.o-access-point--start {
  position: relative;
  padding-left: 6rem;
}

.o-access-point--start br {
  display: none;
}

@media (min-width: 577px) {
  .o-access-point--start br {
    display: block;
  }
}

.o-access-point--start::before {
  position: absolute;
  top: -0.2rem;
  left: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 6rem;
  height: 100%;
  min-height: 6rem;
  content: "";
  background-color: #000;
}

.o-access-point--time {
  display: flex;
  align-items: center;
  padding: 2rem 0;
}

@media (min-width: 577px) {
  .o-access-point--time {
    display: block;
    min-height: 6rem;
    padding: 0;
    text-align: center;
  }
}

.o-access-point--time dt {
  display: flex;
  align-items: center;
  justify-content: center;
  margin-right: 1rem;
  font-size: 1.2rem;
}

@media (min-width: 577px) {
  .o-access-point--time dt {
    min-height: 3rem;
    margin-right: 0;
    font-size: 1.4rem;
  }
}

.o-access-point--time dd {
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.2rem;
}

@media (min-width: 577px) {
  .o-access-point--time dd {
    min-height: 3rem;
    padding: 0 1rem;
    font-size: 1.4rem;
  }
}

.o-access-route__box {
  position: relative;
  width: calc(100% - 4rem);
  padding: 2rem 2.4rem;
  background: #fff;
  border: 0.1rem solid #008071;
  border-radius: 0.6rem;
}

@media (min-width: 769px) {
  .o-access-route__box {
    width: 100%;
    padding: 4rem 4.8rem;
  }
}

.o-access-route__box-title {
  display: block;
  margin-bottom: 1.6rem;
  font-weight: 600;
  color: #008071;
  text-align: center;
}

.o-access-route__list {
  display: flex;
  padding: 1.5rem 0;
}

.o-access-route__list-anchor {
  color: #000;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  width: 100%;
}

.o-access-route__list-anchor:hover {
  color: #000;
}

body:not(.ja) .o-access-route__list-anchor {
  flex-direction: column;
}

@media (min-width: 577px) {
  body:not(.ja) .o-access-route__list-anchor {
    flex-direction: row;
  }
}

.o-access-route__list-box {
  width: 100%;
  background: #f2f2f2;
}

.o-access-route__title {
  position: relative;
  display: flex;
  padding-left: 4rem;
  margin-right: 1rem;
  font-weight: 600;
  color: #4d4d4d;
}

body:not(.ja) .o-access-route__title {
  margin-bottom: 1rem;
}

@media (min-width: 577px) {
  body:not(.ja) .o-access-route__title {
    margin-bottom: 0;
  }
}

.o-access-route__title::before {
  position: absolute;
  top: 50%;
  left: 0;
  display: block;
  width: 2.4rem;
  height: 2.4rem;
  content: "";
  background: url("/images/front/icon/icon-location.svg") no-repeat center center;
  transform: translateY(-50%);
}

.o-access-route__time-required {
  font-weight: 600;
  color: #008071;
}

.o-access-route__vehicle-list {
  position: relative;
  display: flex;
  align-items: center;
  margin-top: 1rem;
}

.o-access-route__heading .o-access-route__vehicle-list {
  margin: 0 2rem 0 0;
}

@media (min-width: 577px) {
  .o-access-route__heading .o-access-route__vehicle-list {
    margin: 1rem 3.5rem 0 0;
  }
}

.o-access-route__vehicle-list::before {
  display: block;
  width: 1.6rem;
  height: 1.6rem;
  margin: 0 3.5rem;
  content: "";
  background: url("/images/front/icon/icon-arrow-green.svg") no-repeat center center;
  transform: rotate(90deg);
}

.o-access-route__heading .o-access-route__vehicle-list::before {
  display: none;
}

@media (min-width: 1024px) {
  .o-access-route__vehicle-list {
    margin-top: 0;
  }
}

.o-access-route__vehicle-list li {
  margin-right: 1rem;
}

.o-access-route__vehicle-list li:last-child {
  margin-right: 0;
}

.o-access-route__vehicle-list li img {
  width: 3.6rem;
  height: 3.6rem;
}

.o-access-route__heading {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  height: auto;
  margin: 0 0 2rem 0;
}

@media (min-width: 577px) {
  .o-access-route__heading {
    flex-direction: row;
    align-items: center;
    min-height: 6rem;
    margin: 0 0 4rem 0;
  }
}

.o-access-route__heading-name {
  display: flex;
  align-items: center;
  min-height: 2.8rem;
  margin-right: 3rem;
  font-weight: 600;
  color: #4d4d4d;
}

.o-access-route__heading-name::before {
  display: block;
  flex-shrink: 0;
  width: 3.2rem;
  height: 3.2rem;
  margin-right: 1.5rem;
  content: "";
  background: url("/images/front/icon/icon-location.svg") no-repeat center center;
}

@media (min-width: 577px) {
  .o-access-route__heading-name {
    min-height: initial;
    font-size: 1.8rem;
  }
}

.o-access-route__heading-time-required {
  font-weight: 600;
  color: #008071;
}

.o-access-route__link-box .o-links__list {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
}

@media (min-width: 1024px) {
  .o-access-route__link-box .o-links__list {
    width: 100%;
  }
}

.o-access-route__link-box .o-links__item {
  width: auto;
  padding: 0 0 2rem 0;
  margin-right: 3rem;
}

.o-access-route__link-box .o-links__anchor {
  display: flex;
  align-items: center;
  color: #008071;
  text-decoration: none;
}

.o-access-route__link-list .o-free-html {
  margin-bottom: 0;
}

.o-access-area-map {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  padding: 0 1.5rem;
  margin-bottom: 6rem;
}

@media (min-width: 577px) {
  .o-access-area-map {
    padding: 0;
    margin-bottom: 12rem;
  }
}

.o-access-area-map > div {
  /* stylelint-disable */
  width: calc((100% / 1) - (((1 - 1) * 0rem) / 1));
  margin: 0 0rem 4rem 0;
  /* stylelint-enable */
}

.o-access-area-map > div:nth-of-type(1n) {
  margin-right: 0;
}

@media (min-width: 577px) {
  .o-access-area-map > div {
    width: calc((100% / 2) - (((2 - 1) * 3.2rem) / 2));
    margin: 0 3.2rem 0rem 0;
  }

  .o-access-area-map > div:nth-of-type(1n) {
    margin-right: 3.2rem;
  }

  .o-access-area-map > div:nth-of-type(2n) {
    margin-right: 0;
  }
}

body:not(.ja) .o-access-area-map > div.is-movement {
  margin-right: 0 !important;
}

.o-access-area-map > div > img {
  width: 100%;
}

.o-access-area-map__title {
  display: flex;
  align-items: center;
  font-weight: 600;
}

.o-access-area-map__title img {
  width: 2.4rem;
  height: 2.4rem;
}

.o-access--ship-info__title {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  max-width: 46rem;
  height: 5rem;
  margin: 0 auto 5rem auto;
  font-size: 1.8rem;
  font-weight: 600;
  color: #fff;
  background: #4c73b4;
}

@media (min-width: 1024px) {
  .o-access--ship-info__title {
    font-size: 2.1rem;
  }
}

.o-access--ship-info__list {
  display: flex;
  flex-wrap: wrap;
  width: 100%;
  max-width: 86rem;
  margin: 0 auto;
}

.o-access--ship-info__item {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  width: 100%;
  margin: 0 0 2rem 0;
}

@media (min-width: 577px) {
  .o-access--ship-info__item {
    width: calc(50% - 5rem);
    margin: 0 10rem 5rem 0;
  }

  .o-access--ship-info__item:nth-of-type(2n) {
    margin-right: 0;
  }
}

.o-access--ship-info-name {
  margin-bottom: 1.5rem;
  border-bottom: 0.2rem solid #4c73b4;
}

.o-access--ship-info-name::after {
  display: block;
  clear: both;
  content: "";
}

.o-access--ship-info-name h4 {
  float: left;
  font-size: 2rem;
  font-weight: 600;
  color: #4c73b4;
}

@media (min-width: 1024px) {
  .o-access--ship-info-name h4 {
    font-size: 2.2rem;
  }
}

.o-access--ship-info-name p {
  display: flex;
  align-items: center;
  float: right;
  font-size: 1.6rem;
}

@media (min-width: 1024px) {
  .o-access--ship-info-name p {
    font-size: 1.8rem;
  }
}

.o-access--ship-info-name p img {
  width: 1.6rem;
  height: auto;
  margin-right: 0.3rem;
}

.o-access--ship-info-departure dl {
  display: flex;
  align-items: center;
  font-size: 1.6rem;
}

.o-access--ship-info-departure dl dt {
  min-width: 6rem;
  font-weight: normal;
}

.o-access--ship-info-departure dl dd {
  width: 100%;
}

.o-access--ship-info__btn {
  color: #4c73b4;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0.2rem 0.5rem;
  font-size: 1.2rem;
  background: #fff;
  border: 0.1rem solid #4c73b4;
  border-radius: 0.3rem;
}

.o-access--ship-info__btn:hover {
  color: #4c73b4;
}

.o-access--ship-info__btn .fa {
  margin-left: 0.3rem;
}

.o-access__link-list {
  display: flex;
  flex-wrap: wrap;
  max-width: 84.2rem;
  margin: 0 auto;
}

.o-access__link-item {
  width: 100%;
  margin: 0 0 1.6rem 0;
}

@media (min-width: 577px) {
  .o-access__link-item {
    width: calc(50% - 1.6rem);
    margin: 3.2rem 3.2rem 0 0;
  }

  .o-access__link-item:nth-child(-n+2) {
    margin-top: 0;
  }

  .o-access__link-item:nth-of-type(2n) {
    margin-right: 0;
  }
}

.o-access__link-btn {
  color: #008071;
  position: relative;
  width: 100% !important;
  max-width: initial !important;
  padding: 0 3rem !important;
  color: #008071 !important;
  background-color: #fff !important;
  border: 0.1rem solid #008071;
}

.o-access__link-btn:hover {
  color: #008071;
}

.o-access__link-btn::after {
  position: absolute;
  top: 50%;
  right: 2rem;
  display: block;
  width: 1.1rem;
  height: 1.1rem;
  content: "";
  background: url("/images/front/icon/icon-link.svg") no-repeat center center/contain;
  transform: translateY(-50%);
}

.o-access__link-btn .fa {
  margin-left: 1rem;
  font-size: 3rem;
  color: #fff;
}

.o-access__link-btn--orange {
  max-width: 57rem;
  margin: 0 auto;
  background: #e19705;
  box-shadow: 0.5rem 0.5rem 0 -0.2rem #f3d497;
}

.o-access-sea-route__box {
  display: flex;
  flex-direction: column;
}

@media (min-width: 577px) {
  .o-access-sea-route__box {
    flex-direction: row;
  }
}

.o-access-sea-route__box--inner {
  width: 100%;
  background: #fff;
  border: 0.2rem solid #4c73b4;
}

@media (min-width: 577px) {
  .o-access-sea-route__box--inner {
    width: 50%;
  }
}

@media (min-width: 577px) {
  .o-access-sea-route__box--inner + .o-access-sea-route__box--inner {
    border-left: none;
  }
}

.o-access-sea-route__box--inner + .o-access-sea-route__box--inner .o-access-sea-route__title {
  position: relative;
}

@media (min-width: 577px) {
  .o-access-sea-route__box--inner + .o-access-sea-route__box--inner .o-access-sea-route__title::before {
    position: absolute;
    top: 0;
    left: -0.2rem;
    display: block;
    width: 0.2rem;
    height: 100%;
    content: "";
    background: #fff;
  }
}

.o-access-sea-route__box--inner dl {
  padding-bottom: 1.5rem;
  margin-bottom: 1.5rem;
  border-bottom: 0.1rem dashed #808080;
}

.o-access-sea-route__box--inner dl:last-child {
  border-bottom: none;
}

.o-access-sea-route__box--inner dt {
  margin-bottom: 0.5rem;
  font-size: 1.4rem;
}

@media (min-width: 1024px) {
  .o-access-sea-route__box--inner dt {
    font-size: 1.6rem;
  }
}

.o-access-sea-route__title {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 5.8rem;
  font-size: 1.8rem;
  color: #fff;
  background: #4c73b4;
}

@media (min-width: 1024px) {
  .o-access-sea-route__title {
    font-size: 2.1rem;
  }
}

.o-access-sea-route__list {
  display: flex;
  flex-wrap: wrap;
}

.o-access-sea-route__item {
  width: 33.3%;
}

@media (min-width: 577px) {
  .o-access-sea-route__item {
    width: 25%;
  }
}

.o-access-sea-route__item .o-form__checkbox-label {
  font-size: 1.4rem;
  white-space: normal;
}

@media (min-width: 577px) {
  .o-access-sea-route__item .o-form__checkbox-label {
    font-size: 1.6rem;
  }
}

.o-access-select-point {
  width: 100%;
  padding: 3rem 0 0.6rem 0;
  background-color: #e6f5f5;
}

@media (min-width: 577px) {
  .o-access-select-point {
    padding: 4rem 0 1.6rem 0;
  }
}

.o-access-select-point__title {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  max-width: 28.5rem;
  height: 6.5rem;
  margin: 0 auto;
  background: #fff;
  border: 0.2rem solid #235d9b;
}

.o-access-select-point__title::before {
  position: absolute;
  bottom: -3.5rem;
  width: 0;
  height: 0;
  content: "";
  border: 1.5rem solid transparent;
  border-top: 2rem solid #235d9b;
}

.o-access-select-point__title::after {
  position: absolute;
  bottom: -3rem;
  left: 50%;
  width: 0;
  height: 0;
  content: "";
  border: 1.3rem solid transparent;
  border-top: 1.8rem solid #fff;
  transform: translateX(-50%);
}

.o-access-select-point__list {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
}

.o-access-select-point__list-title {
  position: relative;
  display: inline-flex;
  align-items: center;
  font-weight: 600;
  color: #008071;
  text-align: center;
}

.o-access-select-point__list-title::before,
.o-access-select-point__list-title::after {
  display: block;
  width: 7rem;
  height: 0.1rem;
  content: "";
  background-color: #008071;
}

.o-access-select-point__list-title::before {
  margin-right: 3rem;
}

.o-access-select-point__list-title::after {
  margin-left: 3rem;
}

.o-access-select-point__list-heading {
  padding: 0 1.5rem;
  font-weight: 600;
  color: #008071;
  text-align: center;
}

@media (min-width: 577px) {
  .o-access-select-point__list-heading {
    padding: 0;
  }
}

.o-access-select-point__item {
  width: calc((100% / 2) - (((2 - 1) * 1.2rem) / 2));
  margin: 0 1.2rem 1.2rem 0;
}

.o-access-select-point__item:nth-of-type(2n) {
  margin-right: 0;
}

@media (min-width: 577px) {
  .o-access-select-point__item {
    width: calc((100% / 4) - (((4 - 1) * 2.4rem) / 4));
    margin: 0 2.4rem 2.4rem 0;
  }

  .o-access-select-point__item:nth-of-type(2n) {
    margin-right: 2.4rem;
  }

  .o-access-select-point__item:nth-of-type(4n) {
    margin-right: 0;
  }
}

.o-access-select-point__checkbox {
  display: none;
}

.o-access-select-point__checkbox:checked + .o-access-select-point__label {
  font-weight: 600;
  color: #fff;
  background-color: #008071;
  border-color: #008071;
}

.o-access-select-point__checkbox[disabled] + .o-access-select-point__label {
  color: #ccc;
  background: #b8b8b8;
  border-color: #b8b8b8;
}

.o-access-select-point__label {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  padding: 1rem 2rem;
  color: #008071;
  text-align: center;
  cursor: pointer;
  background-color: #fff;
  border: 0.1rem solid #008071;
  border-radius: 10rem;
}

.o-access--movie__list {
  display: flex;
  flex-wrap: wrap;
}

.o-access--movie__item {
  width: calc((100% / 2) - (((2 - 1) * 2.5rem) / 2));
  margin: 0 2.5rem 2rem 0;
}

.o-access--movie__item:nth-of-type(2n) {
  margin-right: 0;
}

@media (min-width: 577px) {
  .o-access--movie__item {
    width: calc((100% / 3) - (((3 - 1) * 5rem) / 3));
    margin: 0 5rem 4rem 0;
  }

  .o-access--movie__item:nth-of-type(2n) {
    margin-right: 5rem;
  }

  .o-access--movie__item:nth-of-type(3n) {
    margin-right: 0;
  }
}

.o-access--movie__title {
  color: #008071;
  text-align: center;
}

.o-access__vehicle-wrapper {
  position: relative;
}

.o-access__vehicle-wrapper a {
  display: block;
  padding-bottom: 2.8rem;
  margin-bottom: 2.8rem;
  border-bottom: 0.1rem solid #e1e1e1;
}

.o-access__vehicle-wrapper [aria-expanded=false]::after,
.o-access__vehicle-wrapper [aria-expanded=true]::after {
  position: absolute;
  top: -0.3rem;
  right: 1.5rem;
  /* stylelint-disable */
  font-family: FontAwesome;
  /* stylelint-enable */
  font-size: 2.2rem;
  color: #008071;
  content: "";
}

.o-access__vehicle-wrapper [aria-expanded=false]::after {
  content: "\F107";
}

.o-access__vehicle-wrapper [aria-expanded=true] {
  margin-bottom: 0;
}

.o-access__vehicle-wrapper [aria-expanded=true]::after {
  content: "\F106";
}

.o-access__vehicle-list {
  display: flex;
  align-items: center;
  width: 100%;
  max-height: 4.8rem;
  margin: 0 0 1rem 0;
  background: #fff;
  border: 0.1rem solid #008071;
  border-radius: 0.4rem;
}

.o-access__vehicle-list:last-child {
  margin: 0;
}

.o-access__vehicle-list dt {
  display: flex;
  align-items: flex-start;
  justify-content: center;
  padding: 1.5rem;
}

.o-access__vehicle-list dt img {
  width: 3.2rem;
  height: 3.2rem;
}

.o-access__vehicle-list dd {
  padding: 1.5rem;
  color: #008071;
}

.o-access__vehicle-list dd:not(.is-button) {
  width: calc(100% - 10rem);
}

.o-access__vehicle-list dd.is-button {
  flex-shrink: 0;
}

.o-access__vehicle-list--company {
  padding: 2.8rem 3.5rem 0 3.5rem;
  margin: 0 0 2.8rem 0;
  background-color: #f3fafa;
  border-bottom: 0.1rem solid #e1e1e1;
}

.o-access__vehicle-list--company.is-document {
  margin: 0;
}

.o-access__vehicle-list--company.is-document:last-child {
  margin: 0 0 2.8rem 0;
}

.o-access__vehicle-list--company.is-document li {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: space-between;
  color: #4d4d4d;
}

@media (min-width: 577px) {
  .o-access__vehicle-list--company.is-document li {
    flex-direction: row;
  }
}

.o-access__vehicle-list--company li {
  width: 100%;
  padding: 0 0 2.8rem 0;
}

.o-access__vehicle-list--company li img {
  width: 1.1rem;
  height: 1.1rem;
}

.o-access__vehicle-anchor {
  color: #008071;
  display: flex;
  align-items: center;
  text-decoration: underline;
}

.o-access__vehicle-anchor:hover {
  color: #008071;
}

.o-access__vehicle-button {
  position: absolute;
  top: 50%;
  right: 2rem;
  display: block;
  transform: translateY(-50%);
}

.o-access__vehicle-button::after {
  display: block;
  width: 1.5rem;
  height: 1.5rem;
  content: "";
  background: url("/images/front/detail/plus-icon.svg") no-repeat center center;
}

.o-access__flights-table {
  width: 100%;
  border: 0.1rem solid #008071;
  border-right: none;
  border-bottom: none;
}

.o-access__flights-table thead {
  background-color: #008071;
}

.o-access__flights-table thead th {
  padding: 1.5rem;
  font-size: 1.4rem;
  font-weight: normal;
  color: #fff;
  text-align: center;
  vertical-align: middle;
  border-right: 0.1rem solid #82b5af;
}

.o-access__flights-table thead th:last-child {
  border-right-color: #008071;
}

@media (min-width: 577px) {
  .o-access__flights-table thead th {
    font-size: 1.6rem;
  }
}

.o-access__flights-table tbody th {
  padding: 1.5rem;
  font-size: 1.6rem;
  font-weight: 600;
  color: #008071;
  text-align: center;
  vertical-align: middle;
  border-right: 0.1rem solid #008071;
}

@media (min-width: 577px) {
  .o-access__flights-table tbody th {
    font-size: 1.8rem;
  }
}

.o-access__flights-table tr {
  border-bottom: 0.1rem solid #008071;
}

.o-access__flights-table td {
  padding: 1.5rem;
  font-size: 1.6rem;
  color: #008071;
  text-align: left;
  vertical-align: middle;
  border-right: 0.1rem solid #008071;
}

@media (min-width: 577px) {
  .o-access__flights-table td {
    font-size: 1.8rem;
  }
}

.o-access__flights-table td:last-child {
  color: #000;
}

.o-access__flights-table td a {
  color: #008071;
  text-decoration: underline;
}

.o-access__airport-info-list {
  display: flex;
  flex-wrap: wrap;
  width: 100%;
  max-width: 95.6rem;
  padding: 0 1.5rem;
  margin: 0 auto;
}

@media (min-width: 1024px) {
  .o-access__airport-info-list {
    padding: 0;
  }
}

.o-access__airport-info-list li {
  /* stylelint-disable */
  width: calc((100% / 3) - (((3 - 1) * 2rem) / 3));
  margin: 0 2rem 2rem 0;
  /* stylelint-enable */
}

.o-access__airport-info-list li:nth-of-type(3n) {
  margin-right: 0;
}

@media (min-width: 577px) {
  .o-access__airport-info-list li {
    width: calc((100% / 5) - (((5 - 1) * 6rem) / 5));
    margin: 0 6rem 0rem 0;
  }

  .o-access__airport-info-list li:nth-of-type(3n) {
    margin-right: 6rem;
  }

  .o-access__airport-info-list li:nth-of-type(5n) {
    margin-right: 0;
  }
}

.o-access__airport-info-list li a {
  color: #be2d28;
}

.o-access__airport-info-list li a img {
  width: 100%;
}

.custom-control-input:disabled ~ .custom-control-label {
  color: #d8dee4;
}

/* stylelint-disable */

_:-ms-lang(x)::-ms-backdrop,
.o-access__heading-box {
  justify-content: flex-start;
}

_:-ms-lang(x)::-ms-backdrop,
.o-access-point__item {
  height: 6rem;
}

_:-ms-lang(x)::-ms-backdrop,
.o-access__map-select-box--tab img {
  width: 100%;
}

/* stylelint-enable */

.o-area-guide {
  position: relative;
  padding: 0 1.5rem 7rem 1.5rem;
  background-color: #e4f7f6;
}

@media (min-width: 577px) {
  .o-area-guide {
    padding-bottom: 14rem;
  }
}

.o-area-guide::after {
  position: absolute;
  left: 0;
  z-index: 10;
  display: block;
  width: 100%;
  height: 7rem;
  content: "";
  background: linear-gradient(to bottom, rgba(255, 255, 255, 0) 0%, white 100%);
}

@media (min-width: 577px) {
  .o-area-guide::after {
    height: 14rem;
  }
}

.o-area-guide img {
  width: 100%;
}

.o-area-guide--area-base {
  position: relative;
  z-index: 1;
}

.o-area-guide--area-info {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 3;
}

.o-area-guide--area-color {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2;
  display: none;
}

.o-area-guide--area-color.active {
  display: block;
}

.o-audio {
  display: flex;
  flex-wrap: wrap;
  border: #008071 0.2rem solid;
}

.o-audio__list {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}

.o-audio__title {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  padding: 2rem;
  color: #fff;
  background: #008071;
}

.o-audio__title::before {
  /* stylelint-disable-next-line */
  font-family: FontAwesome;
  font-weight: normal;
  content: "\F028";
  margin-right: 0.5rem;
}

@media (min-width: 577px) {
  .o-audio__title {
    justify-content: flex-start;
    width: auto;
  }
}

.o-audio__description {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  padding: 1rem;
}

@media (min-width: 577px) {
  .o-audio__description {
    width: auto;
  }
}

.o-audio__description > audio {
  height: 3.8rem;
}

.o-badge__wrapper {
  display: flex;
  align-items: center;
}

.o-badge__icon {
  position: relative;
  display: inline-block;
  padding: 0.4rem 1.5rem 0.4rem 1.3rem;
  margin-left: 1rem;
  font-size: 2rem;
  color: #fff;
  background-color: #868c98;
}

@media (min-width: 577px) {
  .o-badge__icon {
    padding: 0.7rem 1.5rem 0.7rem 1.3rem;
    font-size: 2.2rem;
  }
}

.o-badge__icon::after {
  position: absolute;
  top: 0;
  right: 0.3rem;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0.5rem 0.6rem 0.4rem 0.6rem;
  font-size: 1.1rem;
  color: #fff;
  content: attr(data-badge-count);
  background: #f33;
  border-radius: 10rem;
}

@media (min-width: 577px) {
  .o-badge__icon::after {
    top: 0.2rem;
  }
}

/* == footer-banner == */

.o-banner-set {
  padding: 60px 0;
  text-align: center;
  background-color: var(--white);
}

.o-banner-set h4 {
  font-size: 20px;
  color: var(--dark);
  font-family: var(--font-family-bold);
  font-weight: bold;
  margin: 1.33em 0;
}

.o-banner-set .o-banner-set__list {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  gap: 40px 40px;
  margin: 0;
  padding: 0;
  justify-content: center;
}

.o-banner-set .o-banner-set__list a {
  display: block;
  width: 240px;
  height: 80px;
}

.o-banner-set .o-banner-set__list img {
  width: 100%;
  height: 80px;
  -o-object-fit: cover;
     object-fit: cover;
}

@media (max-width: 576px) {
  .o-banner-set .o-banner-set__list {
    gap: 1rem;
  }

  .o-banner-set .o-banner-set__list li {
    width: calc(50% - 1rem);
  }

  .o-banner-set .o-banner-set__list a {
    width: 100%;
    height: auto;
  }
}

/* == 下層コンテンツ == */

/* == 下層コンテンツ パンくず == */

.o-breadcrumb {
  padding: 16px 86px;
}

.o-breadcrumb .o-breadcrumb__list {
  margin: 0;
  padding: 0;
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  align-items: center;
  width: 100%;
  gap: 15px;
}

.o-breadcrumb .o-breadcrumb__list,
.o-breadcrumb .o-breadcrumb__list a {
  color: var(--line-blue);
  font-size: 14px;
  text-decoration: none;
}

.o-breadcrumb .o-breadcrumb__list li.o-breadcrumb__item {
  display: flex;
  gap: 15px;
}

.o-breadcrumb .o-breadcrumb__list li.o-breadcrumb__item + li::before {
  content: "\FF1E";
  display: block;
}

.o-breadcrumb__item::after {
  display: none;
}

@media (max-width: 768px) {
  .o-breadcrumb .o-breadcrumb__list {
    justify-content: flex-start;
    gap: 0 15px;
  }

  .o-breadcrumb {
    padding: 16px;
  }
}

.o-main-feature .o-button {
  color: #008071;
  background-color: #fff;
  border: 0.1rem solid #5d1d4f;
}

@media (min-width: 577px) {
  .o-main-feature .o-button {
    display: none;
  }
}

.o-documents__box .o-button {
  color: #008071;
  background-color: #fff;
  border: 0.1rem solid #008071;
}

.o-model-course-spot__button-item .o-button {
  color: #008071;
  background-color: #fff;
  border: 0.1rem solid #008071;
}

.o-detail-feature__item .o-button {
  color: #008071;
  background-color: transparent;
  border: 0.1rem solid #008071;
}

@media (min-width: 577px) {
  .o-detail-feature__item .o-button {
    width: 100%;
    margin: 0 auto;
  }
}

@media (min-width: 1024px) {
  .o-detail-feature__item .o-button {
    width: 26rem;
    margin: 0 auto;
  }
}

.o-detail-feature--column .o-button {
  color: #008071;
  background-color: transparent;
  border: 0.1rem solid #008071;
}

@media (min-width: 577px) {
  .o-detail-feature--column .o-button {
    width: 100%;
    max-width: initial;
    margin: 0 auto;
  }
}

@media (min-width: 1024px) {
  .o-detail-feature--column .o-button {
    margin: 0 auto;
  }
}

.o-switching-button__item .o-button {
  width: 100%;
}

.o-switching-button__item .o-button:not(.is-current) {
  color: #008071;
  background-color: #fff;
  border: 0.1rem solid #008071;
}

@media (min-width: 577px) {
  .o-switching-button__item .o-button {
    max-width: 31rem;
  }
}

.is-documents .o-button {
  padding-right: 4rem;
}

body:not(.ja) .is-documents .o-button {
  padding-right: 2rem;
}

.is-documents .o-button::after {
  position: absolute;
  top: 50%;
  right: 1rem;
  display: block;
  width: 1.6rem;
  height: 1.6rem;
  content: "";
  background: url("/images/front/icon/icon-arrow-green.svg") no-repeat center center;
  transform: translateY(-50%) rotate(90deg);
}

body:not(.ja) .is-documents .o-button::after {
  display: none;
}

.o-pamphlet__button-item .o-button {
  min-height: 4rem;
}

@media (min-width: 1200px) {
  .o-pamphlet__button-item .o-button {
    padding: 0.5rem 1rem;
  }
}

.o-button--arrow-right::after {
  position: absolute;
  top: 50%;
  right: 2rem;
  display: block;
  width: 1.4rem;
  height: 1.1rem;
  content: "";
  background: url("/images/front/icon/icon-arrow-white.svg") no-repeat center center;
  transform: translateY(-50%);
}

@media (min-width: 577px) {
  .o-main-about .o-button--arrow-right::after {
    background: url("/images/front/icon/icon-arrow-black.svg") no-repeat center center;
  }
}

.o-main-feature .o-button--arrow-right::after,
.o-detail-feature--column .o-button--arrow-right::after,
.o-detail-feature__item .o-button--arrow-right::after,
.o-model-course-spot__button-item .o-button--arrow-right::after,
.o-documents__box .o-button--arrow-right::after {
  right: 1rem;
  background: url("/images/front/icon/icon-arrow-green.svg") no-repeat center center;
}

@media (min-width: 577px) {
  .o-main-feature .o-button--arrow-right::after,
  .o-detail-feature--column .o-button--arrow-right::after,
  .o-detail-feature__item .o-button--arrow-right::after,
  .o-model-course-spot__button-item .o-button--arrow-right::after,
  .o-documents__box .o-button--arrow-right::after {
    right: 2rem;
  }
}

.o-button--arrow-right.angle-down::after {
  transform: rotate(90deg) translateX(-50%);
}

.o-button--w300 {
  width: 100%;
  min-height: 4rem;
}

@media (min-width: 577px) {
  .o-button--w300 {
    max-width: 30rem;
  }
}

.o-button--document-dl {
  color: #1a1a1a;
  background-color: #fff;
  border-color: transparent;
}

.o-button--document-dl:hover {
  color: #1a1a1a;
}

.o-button--document-dl::after {
  position: absolute;
  top: 50%;
  right: 2rem;
  width: 1.5rem;
  height: 2.3rem;
  content: "";
  background: url("/images/front/detail/document-dl-icon.svg") no-repeat center center;
  transform: translateY(-50%);
}

.o-button--document-dl-pdf::after {
  position: absolute;
  top: 50%;
  right: 1rem;
  display: block;
  width: 1.6rem;
  height: 1.49rem;
  content: "";
  background: url("/images/front/common/down-load-icon.svg") no-repeat center center/100%;
  transform: translateY(-50%);
}

.o-button--document-dl-word::after {
  position: absolute;
  top: 50%;
  right: 1rem;
  display: block;
  width: 1.6rem;
  height: 1.49rem;
  content: "";
  background: url("/images/front/common/down-load-icon.svg") no-repeat center center/100%;
  transform: translateY(-50%);
}

.o-button--document-dl-excel::after {
  position: absolute;
  top: 50%;
  right: 1rem;
  display: block;
  width: 1.6rem;
  height: 1.49rem;
  content: "";
  background: url("/images/front/common/down-load-icon.svg") no-repeat center center/100%;
  transform: translateY(-50%);
}

.o-button--document-dl-zip::after {
  position: absolute;
  top: 50%;
  right: 1rem;
  display: block;
  width: 1.6rem;
  height: 1.49rem;
  content: "";
  background: url("/images/front/common/down-load-icon.svg") no-repeat center center/100%;
  transform: translateY(-50%);
}

.o-button--document-dl-powerpoint::after {
  position: absolute;
  top: 50%;
  right: 1rem;
  display: block;
  width: 1.6rem;
  height: 1.49rem;
  content: "";
  background: url("/images/front/common/down-load-icon.svg") no-repeat center center/100%;
  transform: translateY(-50%);
}

.o-button--document-dl-other::after {
  position: absolute;
  top: 50%;
  right: 1rem;
  display: block;
  width: 1.6rem;
  height: 1.49rem;
  content: "";
  background: url("/images/front/icon/icon-download.svg") no-repeat center center/100%;
  transform: translateY(-50%);
}

.o-button-reset {
  color: #008071;
  justify-content: center;
  width: 100%;
  max-width: 100%;
  height: 4.8rem;
  min-height: initial;
  padding: initial;
  font-size: 1.4rem;
  font-weight: normal;
  background-color: #fff;
  border: 0.1rem solid #008071;
  border-radius: 0.6rem;
}

.o-button-reset:hover {
  color: #008071;
}

.o-button-reset--w180 {
  width: 100%;
  height: 4rem !important;
}

@media (min-width: 577px) {
  .o-button-reset--w180 {
    min-width: 18rem;
  }
}

.o-button-sort {
  background-color: #fff;
  border: 1px solid #C7C7C7;
  border-radius: 3px;
  display: flex;
  height: 32px;
  align-items: center;
  justify-content: center;
  min-width: 100px;
  color: var(--dark);
}

@media (max-width: 768px) {
  .o-button-sort .o-button-sort {
    min-width: 80px;
    gap: 12px;
  }
}

.o-button-sort svg {
  margin: 0 auto 0 10px;
}

.o-button-sort span {
  margin: 0 auto;
}

.o-button-sort.u-active--bg-sort-button svg .icon-sort-tile,
.o-button-sort.u-active--bg-sort-button svg .icon-area-list {
  fill: var(--white);
}

.o-button--favorite {
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 10.4rem;
  height: 3rem;
  font-size: 1.4rem;
  background-color: #c29535;
}

.o-button--favorite:hover {
  color: #fff;
}

.o-button--favorite .fa {
  color: #fff;
}

.o-button--favorite-add {
  width: 17.5rem;
  color: #000;
  background-color: #e3eef4;
}

.o-button--favorite-add .fa {
  color: #000;
}

.o-button--favorite-add:hover {
  color: #000;
}

.o-button--favorite-share {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  max-width: 30rem;
  height: 6rem;
  color: #fff;
  background: #008071;
}

.o-button--favorite-share::after {
  position: absolute;
  top: 50%;
  right: 2rem;
  display: block;
  width: 1.5rem;
  height: 1.5rem;
  font-size: 3rem;
  content: "";
  transform: translateY(-50%);
}

.o-button--want-to-go {
  color: #008071;
  position: relative;
  display: flex;
  flex-shrink: 0;
  align-items: center;
  justify-content: center;
  width: 3.2rem;
  height: 3.2rem;
  font-size: 1.4rem;
  background-color: #fff;
  border: 0.1rem solid #008071;
  border-radius: 10rem;
}

.o-button--want-to-go:hover {
  color: #008071;
}

.o-digest--list .o-button--want-to-go {
  margin: 0 auto 0.5rem auto;
}

.is-favorite-list .o-digest--list .o-button--want-to-go {
  width: 100%;
  max-width: 30rem;
  height: 3.5rem;
  border: 0.1rem solid #008071;
  border-radius: 0;
}

.is-favorite-list .o-digest--list .o-button--want-to-go .fa {
  color: #008071;
}

.o-digest--tile .o-button--want-to-go {
  position: absolute;
  top: 1rem;
  right: 1rem;
  z-index: 1;
  width: 2.4rem;
  height: 2.4rem;
  border: none;
}

@media (min-width: 1200px) {
  .o-digest--tile .o-button--want-to-go {
    margin: 0;
  }
}

.o-heading .o-button--want-to-go {
  padding: 0;
  margin-right: 0.8rem;
}

body:not(.ja) .o-heading .o-button--want-to-go {
  margin: 0 auto 0.5rem auto;
}

@media (min-width: 577px) {
  .o-heading .o-button--want-to-go {
    min-height: 2.7rem;
    margin: 0 auto 0.5rem auto;
  }
}

.o-button--want-to-go__star-box {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: auto;
  height: 2.4rem;
  padding: 0 1rem;
  color: #4d4d4d;
  background-color: #fff;
}

.o-button--want-to-go__star-box::before {
  position: absolute;
  top: 50%;
  left: -1.2rem;
  display: block;
  width: 0;
  height: 0;
  content: "";
  border: 0.6rem solid transparent;
  border-right: 0.8rem solid #fff;
  transform: translateY(-50%);
}

.o-button--want-to-go__star-box .fa {
  font-size: 1rem;
  color: #fff;
}

.o-button--want-to-go-add {
  color: #fff;
  background-color: #008071;
  border: 0.1rem solid #008071;
}

.o-digest--list .o-button--want-to-go-add {
  margin: 0 auto 0.5rem auto;
}

.is-favorite-list .o-digest--list .o-button--want-to-go-add:hover {
  color: #fff;
}

.is-favorite-list .o-digest--list .o-button--want-to-go-add .fa {
  color: #fff;
}

.o-button--want-to-go-add:hover .fa {
  color: #fff;
}

.o-digest--tile .o-button--want-to-go-add {
  border: none;
}

.is-favorite-list .o-digest--tile .o-button--want-to-go-add:hover {
  color: #fff;
}

.is-favorite-list .o-digest--tile .o-button--want-to-go-add .fa {
  color: #fff;
}

.o-button--want-to-go-caption {
  white-space: nowrap;
}

.o-button--want-to-go-add .o-button--want-to-go-caption {
  color: #008071;
}

.o-digest--tile .o-button--want-to-go-caption {
  display: none;
}

body:not(.ja) .o-button--want-to-go-caption {
  text-align: center;
}

.o-button-detail {
  color: #fff;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 5rem;
  font-size: 1.6rem;
  font-weight: 600;
}

.o-button-detail:hover {
  color: #fff;
}

@media (min-width: 1024px) {
  .o-button-detail {
    width: 32rem;
  }
}

.o-button-detail--want {
  background-color: #c29535;
}

.o-button-detail--want::before {
  position: absolute;
  top: 50%;
  left: 1.2rem;
  display: block;
  width: 2.1rem;
  height: 2.4rem;
  content: "";
  background: url("/images/front/detail/favorite-icon.svg") no-repeat center center;
  transform: translateY(-50%);
}

.o-button-detail--photo-tour {
  width: calc(100% - 4rem);
  height: 3.2rem;
  min-height: initial;
  font-weight: normal;
  background-color: #008071;
  border-radius: 0.4rem;
}

@media (min-width: 577px) {
  .o-button-detail--photo-tour {
    max-width: 20.7rem;
    padding: 0 1rem 0 3rem !important;
  }
}

.o-button-detail--photo-tour::before {
  position: absolute;
  top: 50%;
  left: 1rem;
  display: block;
  width: 1.4rem;
  height: 1.2rem;
  margin-right: 0.5rem;
  content: "";
  background: url("/images/front/icon/icon-photo-tour.svg") no-repeat center center;
  transform: translateY(-50%);
}

.o-button--reserve {
  color: #fff;
  position: sticky;
  bottom: 0;
  left: 0;
  z-index: 999;
  display: flex;
  align-items: center;
  justify-content: center;
  width: calc(100%);
  height: 6rem;
  margin-right: auto;
  margin-left: auto;
  font-weight: 600;
  background-color: #008071;
  border-color: #008071;
  border-radius: 0;
}

.o-button--reserve:hover {
  color: #fff;
}

@media (min-width: 577px) {
  .o-button--reserve {
    position: fixed;
    width: 5.6rem;
    height: 22.6rem;
    margin-right: initial;
    margin-left: initial;
    border-radius: 0 0.8rem 0.8rem 0;
    -ms-writing-mode: tb-rl;
        writing-mode: vertical-rl;
  }
}

.o-button--reserve img {
  width: 1.9rem;
  margin: 0 1rem 0 0;
}

@media (min-width: 577px) {
  .o-button--reserve img {
    margin: 0 0 1rem 0;
  }
}

.o-button--map-display {
  color: #008071;
  width: 100%;
  background-color: transparent;
  border: 0.1rem solid #008071;
}

.o-button--map-display:hover {
  color: #008071;
}

.o-button--map-display > span {
  position: relative;
  display: block;
  width: 100%;
  text-align: center;
}

.o-button--map-display > span::after {
  position: absolute;
  top: 50%;
  right: 0;
  display: block;
  width: 1.5rem;
  height: 1.5rem;
  font-size: 2rem;
  transform: translateY(-50%);
}

.o-button--map-display .is-open::after {
  content: "";
  background: url("/images/front/icon/icon-minus.svg") no-repeat center center;
}

.o-button--map-display .is-close::after {
  content: "";
  background: url("/images/front/icon/icon-plus.svg") no-repeat center center;
}

.is-blog-detail .o-button--map-display {
  max-width: 38rem;
}

.is-blog-detail .o-button--map-display::after {
  position: absolute;
  top: 50%;
  right: 2rem;
  display: block;
  width: 1.5rem;
  height: 1.5rem;
  content: "";
  background: url("/images/front/detail/plus-icon.svg") no-repeat center center;
  transform: translateY(-50%);
}

.is-blog-detail .o-button--map-display[aria-expanded=true] {
  color: #fff;
  background-color: #008071;
}

.is-blog-detail .o-button--map-display[aria-expanded=true]::after {
  background: url("/images/front/detail/minus-icon-white.svg") no-repeat center center;
}

.is-model-course .o-button--map-display {
  max-width: 38rem;
  background: transparent;
  border-color: #008071;
  border-width: 0.1rem;
}

.is-model-course .o-button--map-display[aria-expanded=true] {
  color: #fff;
  background-color: #008071;
}

.is-model-course .o-button--map-display[aria-expanded=true]::after {
  background: url("/images/front/icon/icon-minus-white.svg") no-repeat center center;
}

.o-button--search {
  color: #fff;
  position: relative;
  width: 100%;
  max-width: 100%;
  height: 4.8rem;
  min-height: initial;
  padding: initial;
  font-weight: normal;
  background: #008071;
  border-radius: 0.6rem;
}

.o-button--search:hover {
  color: #fff;
}

.o-button--search::before {
  position: absolute;
  top: 50%;
  left: 2.5rem;
  /* stylelint-disable */
  font-family: FontAwesome;
  /* stylelint-enable */
  font-size: 2rem;
  font-weight: normal;
  content: "\F002";
  transform: translateY(-50%);
}

body.vi .o-button--search::before {
  left: 2rem;
}

@media (min-width: 577px) {
  body.vi .o-button--search::before {
    left: 1.5em;
  }
}

.is-tabikura .o-button--search {
  position: relative;
}

.is-tabikura .o-button--search::before {
  display: none;
}

.is-tabikura .o-button--search::after {
  /* stylelint-disable */
  position: absolute;
  top: 50%;
  right: 1.5rem;
  font-family: FontAwesome;
  font-size: 2rem;
  font-weight: noraml;
  content: "\F002";
  transform: translateY(-50%);
  /* stylelint-enable */
}

body.vi .o-button--search {
  font-size: 1.35rem;
}

@media (min-width: 577px) {
  body.vi .o-button--search {
    font-size: 1.5rem;
  }
}

.o-button--info-display {
  color: #008071;
  background-color: #fff;
  border-color: #008071;
  border-style: solid;
  border-width: 0.1rem;
}

.o-button--info-display:hover {
  color: #008071;
}

.o-button--info-display::after {
  position: absolute;
  top: 50%;
  right: 2rem;
  display: block;
  width: 1.5rem;
  height: 1.5rem;
  content: "";
  background: url("/images/front/icon/icon-plus.svg") no-repeat center center;
  transform: translateY(-50%);
}

.o-button--info-display[aria-expanded=true] {
  color: #fff;
  background-color: #008071;
}

.o-button--info-display[aria-expanded=true]::after {
  background: url("/images/front/icon/icon-minus-white.svg") no-repeat center center;
}

.o-button--pamphlet {
  color: #008071;
  justify-content: center;
  width: 100%;
  min-height: initial;
  max-height: 4rem;
  padding-right: 2rem;
  padding-left: 1rem;
  font-size: 1.4rem;
  background-color: #fff;
  border: 0.1rem solid #008071;
  border-radius: 0.4rem;
}

.o-button--pamphlet:hover {
  color: #008071;
}

@media (min-width: 1281px) {
  .o-button--pamphlet {
    padding-right: 1rem;
    padding-left: 1rem;
  }
}

.o-button--pamphlet::after {
  position: absolute;
  top: 50%;
  right: 1rem;
  display: block;
  width: 1.6rem;
  height: 1.6rem;
  content: "";
  background: url("/images/front/icon/icon-download.svg") no-repeat center center/100%;
  transform: translateY(-50%);
}

.o-button--pamphlet-send {
  color: #fff;
  position: relative;
  width: 100%;
  max-width: 30.6rem;
  background: #008071;
  border: none;
  border-radius: 0.4rem;
}

.o-button--pamphlet-send:hover {
  color: #fff;
}

.o-button--pamphlet-send::after {
  position: absolute;
  top: 50%;
  right: 3rem;
  display: block;
  width: 1.6rem;
  height: 1.6rem;
  content: "";
  background: url("/images/front/icon/icon-download-white.svg") no-repeat center center/100%;
  transform: translateY(-50%);
}

.o-button--pamphlet.disabled {
  color: #868686;
  cursor: not-allowed;
  background-color: #d4d4d4;
  border-color: #ddd;
  opacity: 0.65;
}

.o-button--pamphlet.disabled:hover {
  color: #868686;
}

.o-button--pamphlet.o-button--document-dl::after {
  right: 1rem;
}

.o-button--pamphlet-digital-book {
  max-height: initial;
  padding: 1rem 2rem 1rem 1rem;
}

.o-button--pamphlet-digital-book::after {
  background: url("/images/front/icon/icon-digital-book.svg") no-repeat center center/100%;
}

.o-button-set__list {
  display: flex;
  flex-wrap: wrap;
}

.o-button-set__item {
  margin: 0 1.6rem 1.6rem 0;
}

.o-button-set__item .o-button {
  width: 100%;
  max-width: initial;
  height: 3.2rem;
  min-height: initial;
  padding-right: 4rem;
}

.o-button-set__item .o-button--arrow-right::after {
  right: 1rem;
  width: 1.2rem;
  height: 1.2rem;
  transform: translateY(-50%) rotate(90deg);
}

.o-button-set__item-w20p {
  width: calc(50% - 0.5rem);
  margin: 0 1rem 1rem 0;
}

.o-button-set__item-w20p:nth-of-type(2n) {
  margin-right: 0;
}

.o-button-set__item-w20p .o-button {
  width: 100%;
}

@media (min-width: 577px) {
  .o-button-set__item-w20p {
    width: calc(20% - (4rem / 5));
  }

  .o-button-set__item-w20p:nth-of-type(2n) {
    margin-right: 1rem;
  }

  .o-button-set__item-w20p:nth-of-type(5n),
  .o-button-set__item-w20p:nth-of-type(10n) {
    margin-right: 0;
  }
}

.o-button--access {
  color: #fff;
  width: calc(100% - 3rem);
  font-size: 1.3rem;
  background: #ef686c;
  border: none;
}

.o-button--access:hover {
  color: #fff;
}

@media (min-width: 577px) {
  .o-button--access {
    width: 45rem;
    font-size: 1.4rem;
  }
}

.o-button--access::after {
  color: #fff;
}

.o-button--conditions {
  color: #fff;
  width: initial;
  min-height: 3.2rem;
  padding: 0 1.5rem;
  font-size: 1.4rem;
  font-weight: normal;
  color: #008071;
  background: transparent;
  border: 0.1rem solid #008071;
}

.o-button--conditions:hover {
  color: #fff;
}

.o-button--conditions .fa {
  color: #008071;
}

.o-button--information {
  padding: 0 2rem;
}

.o-button--information > img {
  width: 1.2rem;
  height: 1.4rem;
}

.o-button--information-prev > img {
  margin-right: 2rem;
}

.o-button--information-next > img {
  margin-left: 2rem;
}

.o-button--page-top {
  position: fixed;
  right: 2rem;
  bottom: 3rem;
  z-index: 10;
  text-align: center;
}

.o-button--page-top a {
  text-decoration: none;
  opacity: 0.8;
}

.o-button--page-top a:hover {
  opacity: 1 !important;
}

.o-button--page-top .fa {
  font-size: 5rem;
  color: #008071;
}

@media (min-width: 577px) {
  .o-button--absolute {
    position: absolute;
    bottom: -4.7rem;
    left: 50%;
    width: 100%;
    transform: translateX(-50%);
  }
}

.o-main-about__info .o-button {
  display: none;
}

@media (min-width: 577px) {
  .o-main-about__info .o-button {
    color: #1a1a1a;
    display: flex;
    max-width: 26rem;
    margin-left: 0;
    background-color: #fff;
  }

  .o-main-about__info .o-button:hover {
    color: #1a1a1a;
  }
}

.o-main-about__box + div .o-button {
  display: flex;
  margin-top: 4rem;
}

@media (min-width: 577px) {
  .o-main-about__box + div .o-button {
    display: none;
  }
}

.o-button--link {
  color: #008071;
  max-width: 44rem;
  min-height: 4.8rem;
  padding-right: 4.5rem;
  font-weight: normal;
  background-color: #fff;
  border: 0.1rem solid #008071;
  border-radius: 0.6rem;
}

.o-button--link:hover {
  color: #008071;
}

.o-button--link::after {
  position: absolute;
  top: 50%;
  right: 2rem;
  display: block;
  width: 1.1rem;
  height: 1.1rem;
  content: "";
  background: url("/images/front/icon/icon-link.svg") no-repeat center center;
  transform: translateY(-50%);
}

.o-button--movie {
  color: #008071;
  min-height: 4rem;
  background-color: #fff;
  border: 0.1rem solid #008071;
}

.o-button--movie:hover {
  color: #008071;
}

.o-button--movie.o-button--arrow-right::after {
  background: url("/images/front/icon/icon-arrow-green.svg") no-repeat center center;
}

/* == 行きたいリスト == */

.favorite-btn {
  margin-top: 2.5rem;
}

.favorite-btn .btn {
  width: 320px;
  height: 56px;
  margin: 0 auto;
  border-radius: 50px;
  font-size: 16px;
}

.favorite-btn .btn.btn-black::after {
  display: none;
}

/* stylelint-disable */

@media screen and (-webkit-min-device-pixel-ratio: 0) {
  _::-webkit-full-page-media,
  _:future,
  :root .o-digest--tile .o-button--want-to-go {
    height: 2.8rem;
  }
}

@media screen and (-webkit-min-device-pixel-ratio: 0) and (min-width: 577px) {
  _::-webkit-full-page-media,
  _:future,
  :root .o-digest--tile .o-button--want-to-go {
    height: 2.4rem;
  }
}

/* stylelint-enable */

.o-calendar {
  width: 27.5rem;
  height: 20.5rem;
  margin-right: auto;
  margin-left: auto;
  background-color: #fff;
}

@media (min-width: 1024px) {
  .o-calendar {
    width: 27.2rem;
  }
}

@media (min-width: 1200px) {
  .o-calendar {
    width: 30rem;
    height: 18rem;
  }
}

@media (min-width: 1281px) {
  .o-calendar {
    width: 33.2rem;
    height: 20.5rem;
  }
}

.o-calendar__thead {
  font-weight: normal;
  color: #fff;
  background-color: #008071;
  border: 0.1rem solid #008071;
}

.o-calendar__thead tr {
  min-height: 2.2rem;
}

.o-calendar__thead th {
  font-size: 1.4rem;
  text-align: center;
  vertical-align: middle;
}

.o-calendar__thead th:not(.o-calendar__caption) {
  width: calc(100% / 7);
  font-weight: normal;
}

.o-calendar__caption {
  position: relative;
  padding: 1rem;
  font-weight: 600;
  text-align: center;
}

.o-calendar__caption--year {
  position: absolute;
  bottom: 0.8rem;
  white-space: nowrap;
}

.o-calendar__tbody {
  border-left: 0.1rem solid #a6a6a6;
}

.o-calendar__tbody td {
  font-size: 1.4rem;
  text-align: center;
  vertical-align: middle;
  border-right: 0.1rem solid #a6a6a6;
  border-bottom: 0.1rem solid #a6a6a6;
}

.o-calendar__tbody td input {
  display: none;
}

.o-calendar--past {
  color: #a6a6a6;
}

.o-calendar--active {
  background-color: #008071;
}

.o-calendar--none {
  background-color: #f8f8f8;
}

.o-calendar.convention-color .o-calendar__thead {
  background-color: #008796;
  border: 0.1rem solid #008796;
}

.o-calendar.convention-color .o-calender--past {
  color: #a6a6a6;
}

.o-calendar.convention-color .o-calendar--active {
  background-color: #c7e5e8;
}

.o-calendar.convention-color .o-calender--none {
  background-color: #f8f8f8;
}

.o-category-change {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}

.o-category-change__title {
  font-size: 1.1rem;
}

.o-category-change__title:empty {
  display: none;
}

@media (min-width: 1024px) {
  .o-category-change__title {
    font-size: 1.3rem;
  }
}

.o-category-change__list {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  height: 3rem;
  margin: 0 auto;
  border: none;
}

@media (min-width: 577px) {
  .o-category-change__list {
    height: 5rem;
  }
}

@media (min-width: 1281px) {
  .o-category-change__list {
    width: 114rem;
  }
}

.o-category-change__item {
  display: flex;
  align-items: center;
  justify-content: center;
  float: none;
  width: calc(20% - (4rem / 5));
  height: 100%;
  margin: 0 1rem 0 0;
}

.o-category-change__item:last-child {
  margin-right: 0;
}

.o-category-change__item a {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  padding: 0;
  margin: 0;
  font-size: 1.2rem;
  font-weight: 600;
  line-height: initial;
  background-color: #fff;
  border: 0.2rem solid #262626;
  border-radius: 0;
}

@media (min-width: 577px) {
  .o-category-change__item a {
    font-size: 1.4rem;
  }
}

@media screen and (min-width: 1025px) {
  .o-category-change__item a {
    font-size: 1.6rem;
    transition: ease-in-out 0.3s;
  }
}

.o-category-change__item a.active {
  color: #fff;
  background-color: #b4a453;
  border: 0.2rem solid #b4a453;
}

.o-category-change__item a.active::after {
  position: absolute;
  bottom: -22px;
  left: 50%;
  z-index: 100;
  width: 0;
  height: 0;
  content: "";
  border: 10px solid transparent;
  border-top: 10px solid #b4a453;
  transform: translateX(-50%);
}

.o-category-change__item a.active.convention-color {
  background-color: #e19705;
  border-color: #e19705;
}

.o-category-change__item a.active.convention-color::after {
  border-top: 10px solid #e19705;
}

.o-category-change__item a:hover {
  color: #fff;
  text-decoration: none;
  background-color: #b4a453;
  border: 0.2rem solid #b4a453;
}

.o-category-change__item a.convention-color:hover {
  background-color: #e19705;
  border: 0.2rem solid #e19705;
}

/* stylelint-disable */

_:-ms-lang(x)::-ms-backdrop,
.o-category-change__item {
  width: calc(20% - 1rem);
}

/* stylelint-enable */

.o-conditions-search {
  position: relative;
  display: flex;
  flex-direction: column;
}

@media (min-width: 577px) {
  .o-conditions-search {
    flex-direction: row;
    flex-wrap: wrap;
  }
}

@media (min-width: 1024px) {
  .o-conditions-search {
    justify-content: start;
    width: calc(100% - 6rem);
    margin-right: auto;
    margin-left: auto;
  }
}

@media (min-width: 1200px) {
  .o-conditions-search {
    width: 100%;
  }
}

@media (min-width: 1281px) {
  .o-conditions-search {
    flex-wrap: nowrap;
    justify-content: space-between;
  }
}

.o-conditions-search__button {
  color: #008071;
  position: relative;
  flex: none !important;
  width: 100%;
  height: 5rem;
  margin-right: auto;
  margin-left: auto;
  overflow: hidden;
  font-size: 1.4rem;
  font-weight: 600;
  text-overflow: ellipsis;
  white-space: nowrap;
  border: solid 0.1rem #008071;
  border-radius: 0.4rem;
}

.o-conditions-search__button:hover {
  color: #008071;
}

.o-conditions-search__button::after {
  /* stylelint-disable-next-line */
  font-family: FontAwesome;
  font-weight: normal;
  content: "\F107";
  position: absolute;
  top: 50%;
  right: 1.5rem;
  font-size: 2rem;
  color: #008071;
  border: none;
  transform: translateY(-50%);
}

.o-conditions-search__button:focus {
  box-shadow: none !important;
}

.o-conditions-search__button[aria-expanded=true] {
  color: #fff;
  background-color: #008071;
}

.o-conditions-search__button[aria-expanded=true]:hover {
  color: #fff;
}

.o-conditions-search__button[aria-expanded=true]::after {
  color: #fff;
  content: "\F106";
}

@media (min-width: 577px) {
  .o-conditions-search__button.special__contents {
    width: calc(100% - 1rem);
    margin-left: 1.5rem;
  }

  .o-conditions-search__button.special__contents + .o-conditions-search-category {
    left: 1.5rem !important;
  }
}

@media (min-width: 1024px) {
  .o-conditions-search__button.special__contents + .o-conditions-search-category {
    left: 0 !important;
  }
}

@media (min-width: 1024px) {
  .o-conditions-search__button.special__contents {
    width: 43.5rem;
    margin-left: 0;
  }
}

@media (min-width: 1281px) {
  .o-conditions-search__button.special__contents {
    width: 64.5rem;
  }
}

@media (min-width: 1024px) {
  .o-conditions-search__button.reserve__contents {
    width: 35.3rem;
  }

  .o-conditions-search__button.reserve__contents + .o-conditions-search-category {
    left: 0 !important;
  }
}

@media (min-width: 577px) {
  .o-conditions-search__button.access__contents {
    width: 33rem;
    margin-right: 0.8rem;
  }
}

@media (min-width: 1024px) {
  .o-conditions-search__button.access__contents {
    width: 45.6rem;
  }
}

@media (min-width: 1281px) {
  .o-conditions-search__button.access__contents {
    width: 53.6rem;
  }
}

.o-conditions-search__button-list {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}

@media (min-width: 577px) {
  .o-conditions-search__button-list {
    flex-direction: row-reverse;
  }
}

.o-conditions-search__button-list li {
  width: 100%;
}

@media (min-width: 577px) {
  .o-conditions-search__button-list li {
    width: 30rem;
  }

  body.vi .o-conditions-search__button-list li {
    width: 35rem;
  }
}

.o-conditions-search__button-list li:first-child {
  margin: 0 0 1.5rem 0;
}

@media (min-width: 577px) {
  .o-conditions-search__button-list li:first-child {
    margin: 0 0 0 2.4rem;
  }
}

.o-conditions-search-keyword {
  font-family: "\6E38\660E\671D", "Yu Mincho", YuMincho, "Hiragino Mincho ProN", "HGS\660E\671D  E", "\30E1\30A4\30EA\30AA", Meiryo, serif;
  width: calc(100%);
  height: 5rem;
  font-size: 1.4rem;
  text-overflow: ellipsis;
  white-space: nowrap;
  border: solid 0.1rem #4d4d4d;
  border-radius: 0.4rem;
}

@media (min-width: 577px) {
  .o-conditions-search-keyword {
    flex: 1;
    margin-right: 1.5rem;
    margin-left: initial;
  }
}

@media (min-width: 1024px) {
  .o-conditions-search-keyword {
    margin-left: initial;
  }
}

.o-conditions-search-exec {
  display: flex;
  flex-shrink: 0;
  align-items: center;
  justify-content: center;
  width: initial;
  height: 5rem;
  margin-right: auto;
  margin-left: auto;
  background-color: #008071;
}

@media (min-width: 577px) {
  .o-conditions-search-exec {
    width: 5rem;
    margin-right: initial;
    margin-left: initial;
    border-radius: 0.4rem;
  }
}

.o-conditions-search-exec .fa {
  font-size: 2rem;
  color: #fff;
}

.o-conditions-search-exec--title {
  display: block;
  font-size: 1.6rem;
  color: #fff;
}

@media (min-width: 577px) {
  .o-conditions-search-exec--title {
    display: none;
  }
}

.o-conditions-search-drop {
  position: relative;
  top: 6.3rem !important;
  width: calc(100vw - 3rem);
  padding-top: 0;
  padding-bottom: 0;
  color: inherit;
  border: solid 0.1rem #008071;
  border-radius: 0.4rem;
  transform: none !important;
}

@media (min-width: 577px) {
  .o-conditions-search-drop {
    left: 1.5rem !important;
    width: calc(100% - 3rem);
  }
}

@media (min-width: 1024px) {
  .o-conditions-search-drop {
    left: 0 !important;
    width: 100%;
  }
}

@media (min-width: 1200px) {
  .o-conditions-search-drop {
    top: 8rem !important;
  }
}

.o-conditions-search-drop .o-form__checkbox-label {
  white-space: normal;
}

@media (min-width: 577px) {
  .o-conditions-search-drop .o-button-text-base--w420 {
    width: 34rem;
  }
}

.o-conditions-search-drop .o-button--search::after {
  right: initial;
  left: 1.5rem;
  color: #fff;
}

.o-conditions-search-drop--inner-list {
  display: flex;
  flex-wrap: wrap;
  padding-left: 0.7rem;
}

@media (min-width: 1024px) {
  .is-area .o-conditions-search-drop--inner-list {
    flex-direction: column;
  }
}

@media (min-width: 577px) {
  .o-conditions-search-drop--inner-list.search-distance .o-conditions-search-drop--inner-item {
    width: auto;
  }
}

.o-conditions-search-drop--inner-list.search-category {
  display: flex;
  flex-wrap: wrap;
}

@media (min-width: 577px) {
  .o-conditions-search-drop--inner-list.search-category .o-conditions-search-drop--inner-item {
    width: 25%;
  }
}

.o-conditions-search-drop--inner-item {
  width: 100%;
  margin-bottom: 1rem;
}

.is-area .o-conditions-search-drop--inner-item {
  margin-bottom: 2rem;
}

@media (min-width: 577px) {
  .o-conditions-search-drop--inner-item {
    margin-right: 5rem;
  }
}

@media (min-width: 769px) {
  .o-conditions-search-drop--inner-item {
    width: 25%;
  }
}

.o-conditions-search-drop--inner.is-area {
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
  padding: 3rem;
}

body.en .o-conditions-search-drop--inner.is-area,
body.vi .o-conditions-search-drop--inner.is-area {
  padding: 2rem;
}

@media (min-width: 577px) {
  body.en .o-conditions-search-drop--inner.is-area,
  body.vi .o-conditions-search-drop--inner.is-area {
    padding: 5.6rem;
  }
}

@media (min-width: 577px) {
  .o-conditions-search-drop--inner.is-area {
    flex-direction: row;
    padding: 5.6rem;
  }
}

.o-conditions-search-drop--inner.is-area p {
  color: #4d4d4d;
}

.o-conditions-search-drop--inner-left {
  width: 100%;
  margin-bottom: 2rem;
}

@media (min-width: 1024px) {
  .o-conditions-search-drop--inner-left {
    width: 37%;
    margin-bottom: 0;
  }
}

.o-conditions-search-drop.search-condition-area .o-conditions-search-drop--inner-item {
  width: auto;
  margin-right: 2rem;
}

.o-conditions-search-drop--area {
  position: relative;
  width: 100%;
}

@media (min-width: 1024px) {
  .o-conditions-search-drop--area {
    width: 63%;
  }
}

.o-conditions-search__area-map {
  width: 100%;
}

.o-conditions-search__area-map--color {
  position: absolute;
  left: 0;
  z-index: 1;
  width: 100%;
  pointer-events: none;
}

@media (min-width: 1024px) {
  .o-conditions-search__area-map--color {
    width: 50vw;
  }
}

@media (min-width: 1200px) {
  .o-conditions-search__area-map--color {
    width: 100%;
  }
}

.o-conditions-search__area-map--color:not(.active) {
  display: none;
}

.o-conditions-search-category,
.o-conditions-search-location,
.o-conditions-search-taxonomy {
  padding: 3rem;
}

@media (min-width: 577px) {
  .o-conditions-search-category,
  .o-conditions-search-location,
  .o-conditions-search-taxonomy {
    padding: 4rem 5.6rem 5.6rem 5.6rem;
  }
}

body.en .o-conditions-search-category,
body.vi .o-conditions-search-category,
body.en .o-conditions-search-location,
body.vi .o-conditions-search-location,
body.en .o-conditions-search-taxonomy,
body.vi .o-conditions-search-taxonomy {
  padding: 2rem;
}

@media (min-width: 577px) {
  body.en .o-conditions-search-category,
  body.vi .o-conditions-search-category,
  body.en .o-conditions-search-location,
  body.vi .o-conditions-search-location,
  body.en .o-conditions-search-taxonomy,
  body.vi .o-conditions-search-taxonomy {
    padding: 4rem 5.6rem 5.6rem 5.6rem;
  }
}

.o-conditions-search-date {
  overflow: hidden;
}

.o-conditions-search__close-btn {
  position: absolute;
  top: 0.1rem;
  right: 1rem;
  z-index: 100;
  font-size: 2.5rem;
  color: #008071 !important;
  cursor: pointer;
}

@media (min-width: 577px) {
  .o-conditions-search > div {
    flex: 1;
  }
}

@media (min-width: 1024px) {
  .o-conditions-search-area {
    left: 0 !important;
  }
}

.o-conditions-search__current-list {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  padding: 1.5rem 2rem 0.5rem 3.2rem;
  margin-bottom: 5rem !important;
  background-color: #e6f5f5;
}

.o-conditions-search__current-list dt {
  margin-right: 2rem;
  font-size: 1.4rem;
  color: #008071;
}

.o-conditions-search__current-list dd:last-child .o-button--conditions {
  border: none;
}

.o-conditions-search__current-list dd:last-child .o-button--conditions.is-others {
  border: 0.1rem solid #008071;
}

.o-conditions-search__current-list dd:last-child .ml30 {
  margin: 0 0 0 1rem !important;
}

.o-conditions-search__current-list a {
  color: #008071;
}

.o-conditions-search__current-list a:hover {
  color: #008071;
}

.o-conditions-search__link {
  display: block;
  margin-top: 2rem;
  font-size: 1.6rem;
  color: #4b4948;
  text-align: right;
  text-decoration: underline;
}

.o-conditions-search > .show {
  position: relative;
}

@media (min-width: 577px) {
  .o-conditions-search > .show {
    position: static;
  }
}

.custom-radio .custom-control-input:checked ~ .custom-control-label::after {
  left: -1.9rem;
  width: 1rem;
  height: 1rem;
  background: #148fae;
  border: 0.1rem solid #fff;
  border-radius: 100%;
}

.o-consent__box {
  display: flex;
  align-items: center;
  justify-content: center;
}

.o-consent__box .o-form__checkbox {
  width: calc(100% - 4rem);
}

@media (min-width: 577px) {
  .o-consent__box .o-form__checkbox {
    width: auto;
  }
}

.o-consent__box .o-form__checkbox-label {
  color: #000;
  white-space: normal;
}

.o-consent__box .o-form__checkbox-label::before {
  left: -3.2rem;
  width: 1.7rem;
  height: 1.7rem;
}

.o-consent__box .o-form__checkbox-label::after {
  left: -2.9rem;
}

.o-consent__box .custom-checkbox .custom-control-input:checked ~ .custom-control-label::after {
  background-size: 100%;
}

.o-contact__wrapper {
  width: 100%;
  max-width: 966px;
  margin: 80px auto 120px;
}

.o-contact__header-text {
  line-height: 1.2;
  margin-bottom: 80px;
}

.o-contact__header-text a {
  color: var(--line-blue);
}

.o-contact__header-ttl {
  border-bottom: 2px solid var(--dark);
  padding: 0 36px 16px;
  font-size: 24px;
  line-height: 1.2;
  box-sizing: border-box;
  font-family: var(--font-family-bold);
  font-weight: bold;
}

.o-contact__header-ttl + .o-contact__header-text {
  padding: 34px 36px 31px;
  line-height: 1.7;
}

.o-contact__footer {
  text-align: center;
}

.o-contact__footer-ttl {
  margin: 0 0 38px;
  font-size: 18px;
}

.o-contact__footer-txt {
  font-size: 14px;
  line-height: 1.2;
  margin-bottom: 57px;
}

.o-contact__footer .o-form__checkbox {
  margin-bottom: 50px;
  gap: 14px;
}

.o-contact__footer .btn-black {
  width: 100%;
  max-width: 300px;
}

.o-contact__footer .btn-black {
  width: 320px;
  height: 56px;
  margin: 0 auto;
  border-radius: 50px;
  font-size: 16px;
  letter-spacing: 0.6rem;
  padding-left: calc(6px + 0.6rem);
}

.o-contact__footer .btn-black[disabled] {
  cursor: default;
}

.o-contact__footer .btn-black::after {
  display: none;
}

.o-contact__footer.confirm-btn {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 1rem;
}

.o-contact__footer.confirm-btn .btn-white {
  height: 56px;
  border-radius: 50px;
}

.o-contact__footer.confirm-btn .btn-black {
  margin: 0;
}

.o-contact__footer.confirm-btn .btn-white::after,
.o-contact__footer.complete-btn .btn-black::after {
  display: none;
}

.o-contact__footer.complete-btn {
  margin-bottom: 200px;
}

.o-contact__footer.complete-btn .btn-black {
  letter-spacing: 0.4rem;
}

@media (max-width: 965px) {
  .o-contact__wrapper {
    margin: 2rem 0 4rem;
    padding: 0 1rem;
  }

  .o-contact__wrapper.complete {
    display: flex;
    flex-direction: column;
  }

  .o-contact__header-ttl {
    padding: 2rem 1rem 1rem;
  }

  .o-contact__header-text {
    margin-bottom: 2rem;
  }

  .o-contact__header-ttl + .o-contact__header-text {
    padding: 1rem;
  }

  .o-detail-contents__table.contact-table {
    margin-bottom: 2rem;
  }

  .o-contact__footer .o-contact__footer-ttl {
    margin: 0 0 1rem;
  }

  .o-contact__footer .o-contact__footer-txt {
    margin-bottom: 2rem;
    text-align: left;
  }

  .o-contact__footer .o-form__checkbox {
    margin-bottom: 2rem;
  }
}

@media (max-width: 576px) {
  .o-detail-contents__table.contact-table td {
    border-width: 0px;
  }

  .o-detail-contents__table.contact-table th,
  .o-detail-contents__table.contact-table td {
    width: 100% !important;
    border: none !important;
  }

  .o-detail-contents__table.contact-table .o-form__select.o-form-control--w191,
  .o-detail-contents__table.contact-table .o-form__text.o-form-control--w191,
  .o-detail-contents__table.contact-table .o-form__text.o-form-control--w261 {
    width: 100%;
  }

  .o-contact__footer .btn-black {
    width: 100%;
    max-width: 300px;
  }

  .o-contact__footer.confirm-btn {
    flex-direction: column-reverse;
  }

  .o-contact__footer.confirm-btn .btn-white {
    width: 180px;
  }

  .o-contact__footer.complete-btn {
    margin-bottom: 160px;
  }
}

.is-spot-detail .o-detail-contents {
  width: 100%;
  max-width: 968px;
  margin: 0 auto;
}

.o-detail-contents .o-free-html {
  margin: 78px 0 66px;
}

.o-detail-contents .o-free-html p {
  font-size: 16px;
  line-height: 2.4;
}

.o-detail-contents .o-free-html p:first-child {
  margin-top: 0;
}

.o-detail-contents .o-free-html p:last-child {
  margin-bottom: 0;
}

.is-spot-detail .o-detail-contents__tag-box {
  width: 100%;
  max-width: 968px;
  margin: 0 auto;
}

.is-spot-detail .o-detail-contents__tag-box .o-detail-contents__tag-box__inner {
  display: flex;
  flex-wrap: wrap;
  gap: 23px 16px;
}

.is-spot-detail .o-detail-contents__tag-box .o-button--category-tag {
  color: var(--dark);
  display: flex;
  align-items: center;
  justify-content: center;
  border: 1px solid var(--dark);
  padding: 10px 15px;
  box-sizing: border-box;
  border-radius: 5px;
  text-decoration: none;
  font-size: 14px;
  line-height: 1.2;
  gap: 29px;
}

.is-spot-detail .o-detail-contents__tag-box .o-button--category-tag::after {
  content: "";
  display: block;
  width: 7px;
  height: 12px;
  background: url(/images/front/icon/icon-arrow-right.svg) no-repeat 0 0;
  background-size: cover;
}

.is-spot-detail .o-detail-contents__youtube-box {
  margin: 80px auto 121px;
  max-width: 720px;
}

.is-spot-detail .o-detail-contents__youtube-inner {
  width: 100%;
  margin: 0 auto;
  position: relative;
  padding-top: 56.25%;
}

.is-spot-detail .o-detail-contents__youtube-inner iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.o-detail-contents--topics {
  width: 100%;
  background: var(--search-blue);
}

.o-detail-contents--topics__wrapper {
  width: 100%;
  max-width: 1040px;
  margin: 0 auto;
  padding: 76px 0 82px;
}

.o-detail-contents--topics__slider-box + .o-detail-contents--topics__slider-box {
  margin-top: 65px;
}

.o-detail-contents--topics.blue h2.o-heading--detail-topics {
  width: 100%;
  max-width: 1040px;
  margin: 0 auto;
  border-bottom: 2px solid var(--dark);
  padding: 0 36px 16px;
  font-size: 24px;
  line-height: 1.2;
  box-sizing: border-box;
  margin: 0.83em 0;
}

.o-detail-contents--topics.blue h2.o-heading--detail-topics::after,
.o-detail-contents--topics.blue h2.o-heading--detail-topics::before {
  display: none;
}

.o-detail-contents--topics.blue .o-heading--detail-topics__text {
  width: 100%;
  max-width: 1040px;
  margin: 0 auto;
  line-height: 1.7;
  padding: 34px 36px 31px;
  box-sizing: border-box;
}

.o-detail-contents--topics.blue .slick-content {
  margin-top: 16px;
}

.o-detail-contents--topics.blue .slick-content .slick-content-caption {
  margin: 0;
}

.o-detail-contents--topics.blue .slick-content .slick-content-caption + .slick-content-caption {
  margin-top: 17px;
}

.o-detail-contents--topics.blue .seasonal-attractions-slick.detail-topics.slick-slider {
  max-width: 1032px;
  margin: 0 auto 54px;
}

.o-detail-contents--basic-info {
  width: 100%;
  max-width: 900px;
  margin: 79px auto 0;
}

.o-detail-contents--basic-info h2.is-basic-info {
  text-align: center;
  font-size: 24px;
  font-weight: normal;
  line-height: 1.2;
  padding: 0 0 24px;
  border-bottom: 2px solid var(--dark);
  margin: 0 0 28px;
}

.o-detail-contents__table {
  table-layout: fixed;
}

.o-detail-contents__table td,
.o-detail-contents__table a {
  line-height: 1.7;
}

.o-detail-contents__table a {
  color: var(--icon-blue);
}

.o-detail-contents__table tr {
  display: block;
}

.o-detail-contents__table tr + tr {
  border-top: 1px solid var(--light-gray);
}

.o-detail-contents__table th {
  display: block;
  padding: 22px 2rem;
  text-align: left;
}

.o-detail-contents__table td {
  display: block;
  padding: 0 2rem 22px;
}

.o-detail-contents__table.contact-table {
  border: 2px solid var(--table-gray);
  width: 100%;
  margin-bottom: 80px;
}

.o-detail-contents__table.contact-table th {
  width: 280px;
  font-size: 16px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 10px;
}

.o-detail-contents__table.contact-table th .u-required-label {
  font-size: 12px;
  color: var(--white);
  background-color: var(--dark);
  display: inline-flex;
  padding: 8px 12px;
  min-width: 48px;
}

.o-detail-contents__table.contact-table td {
  width: calc(100% - 280px);
  border-left: 1px solid var(--table-gray);
}

.o-detail-contents__table.contact-table .o-form__select {
  position: relative;
}

.o-detail-contents__table.contact-table .o-form__select::after {
  content: "";
  position: absolute;
  right: 20px;
  top: 16px;
  display: block;
  width: 14px;
  height: 14px;
  background: url(/images/front/icon/icon-arrow-bottom.svg) no-repeat 0 0;
  pointer-events: none;
}

.o-detail-contents__table.contact-table .o-form__text-area textarea {
  width: 100%;
  min-height: 236px;
  border: 1px solid var(--gray);
  font-size: 16px;
  color: var(--dark);
  font-family: var(--font-family);
  padding: 6px 20px;
}

.o-detail-contents__table.contact-table .o-form-control--address {
  display: flex;
  flex-direction: column;
  gap: 24px;
}

.o-detail-contents__table.contact-table .o-form__select.o-form-control--w191,
.o-detail-contents__table.contact-table .o-form__text.o-form-control--w191 {
  width: 191px;
}

.o-detail-contents__table.contact-table .o-form__select select,
.o-detail-contents__table.contact-table .o-form__text input,
.o-detail-contents__table.contact-table .o-form__mail input {
  border-radius: 0px;
  height: 40px;
  max-width: 100%;
  width: 100%;
  text-align: left;
  font-size: 14px;
}

.o-detail-contents__table.contact-table .o-form__text input,
.o-detail-contents__table.contact-table .o-form__mail input {
  border-color: var(--gray);
}

.o-detail-contents__table.contact-table .o-form__text.o-form-control--w261 {
  width: 261px;
}

.o-detail-contents__table.contact-table .o-detail-contents__description {
  font-size: 14px;
  margin: 0 0 15px;
}

.o-detail-contents__table.contact-table .invalid-feedback {
  display: none;
  width: 100%;
  margin-top: 0.25rem;
  font-size: 80%;
  color: #e3342f;
}

.o-detail-contents__table.contact-table .form-control.is-invalid ~ .invalid-feedback {
  display: block;
}

.o-detail-contents__table.contact-table .form-control.is-invalid {
  border-color: #e3342f;
  background-image: none;
}

.o-detail-contents__table.contact-table select.form-control.is-invalid {
  background: none;
}

.o-detail-contents--facility {
  width: 100%;
  max-width: 900px;
  margin: 24px auto 79px;
}

.o-detail-contents--facility .o-detail-contents--facility__list {
  margin: 0;
  padding: 0;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  gap: 16px;
}

.o-detail-contents--facility .o-detail-contents--facility__item img {
  width: 72px;
  -o-object-fit: contain;
     object-fit: contain;
}

.o-detail-contents--map {
  width: 100%;
  max-width: 1100px;
  margin: 0 auto;
}

.o-detail-contents--map .map-list__google-map {
  width: 100%;
  position: relative;
  padding-top: 56.25%;
}

.o-detail-contents--map .map-list__google-map iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.o-detail-contents--others {
  width: 100%;
  background: #ededed;
  margin: 64px auto;
}

.o-detail-contents--others__inner {
  padding: 1rem;
  max-width: 900px;
  margin: 0 auto;
}

.o-detail-contents-footer-topics {
  width: 100%;
  max-width: 1120px;
  margin: 0 auto;
}

.o-detail-course__box .course__section__area {
  width: 100%;
  max-width: 1200px;
  margin: 9px auto 81px;
  background: url(/images/front/contents/course-line.svg) repeat-y left 0;
  background-position-x: 25px;
}

.o-detail-course__box .course__section__area .ttl-start {
  font-size: 0;
  background-color: var(--white);
  padding-bottom: 17px;
}

.o-detail-course__box .course__section__area .ttl-start::after {
  content: "";
  display: block;
  background: url(/images/front/contents/ttl-course-start.svg) no-repeat 0 0;
  width: 155px;
  height: 63px;
}

.o-detail-course__box .course__section__area .ttl-goal {
  font-size: 0;
  background-color: var(--white);
  padding-top: 17px;
}

.o-detail-course__box .course__section__area .ttl-goal::after {
  content: "";
  display: block;
  background: url(/images/front/contents/ttl-course-goal.svg) no-repeat 0 0;
  width: 141px;
  height: 50px;
}

.o-detail-course__box .course__section__inner {
  padding-left: 83px;
}

.o-detail-course__box .course__section__inner .course__section__ttl {
  display: flex;
  gap: 29px;
  font-size: 28px;
  line-height: 1.2;
  align-items: center;
  margin: 22px 0 15px -83px;
}

.o-detail-course__box .course__section__inner .o-course__info-box {
  display: flex;
  gap: 65px;
}

.o-detail-course__box .course__section__inner .o-course__info-box .o-course__info--left {
  width: 100%;
  max-width: 516px;
}

.o-detail-course__box .course__section__inner .o-course__info-box .o-course__info--left .o-course__image {
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  aspect-ratio: 516/344;
}

.o-detail-course__box .course__section__inner .o-course__info-box .o-course__info--right {
  width: 100%;
}

.o-detail-course__box .course__section__ttl_number {
  background: url(/images/front/icon/icon-course-number.svg) no-repeat 0 0;
  width: 50px;
  height: 56px;
  color: var(--white);
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 22px;
  padding-top: 6px;
  margin-right: 4px;
  background-size: contain;
}

.o-detail-course__box .course__section__ttl_tag {
  border: 1px solid var(--line-blue);
  color: var(--line-blue);
  font-size: 14px;
  line-height: 1.2;
  padding: 0 13px;
  height: 32px;
  display: flex;
  justify-content: center;
  align-items: center;
  min-width: 70px;
}

.o-detail-course__box .course__section__description {
  border-top: 2px solid var(--dark);
  padding: 34px 0 41px;
  font-size: 18px;
  line-height: 1.2;
  font-family: var(--font-family-bold);
  font-weight: bold;
}

.o-detail-course__box .o-course__info--right .o-course__info--description {
  line-height: 2;
  margin-bottom: 42px;
}

.o-detail-course__box .o-course__info--right .o-course__info--btn {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 24px;
}

.o-detail-course__box .o-course__info--right .o-course__info--btn .btn {
  height: 40px;
  border-radius: 20px;
}

.o-detail-course__box .o-course__info--right .o-course__info--btn a.btn.btn-white::after,
.o-detail-course__box .o-course__info--right .o-course__info--btn a.btn.btn-black::after {
  top: 15px;
}

.o-detail-course__box .o-course__info--right .o-course__info--btn a.btn.btn-black.active::before {
  content: "-";
}

.o-detail-course__box .o-course__info--right .o-course__info--btn a.btn.btn-black::before {
  content: "+";
  display: block;
  color: var(--white);
  font-size: 14px;
  font-weight: bold;
  position: absolute;
  top: calc(50% - 11px);
  left: 20px;
}

.o-detail-course__box .o-course__info--right .o-course__info--btn a.btn.btn-black::after {
  display: none;
}

.o-detail-course__box .o-course__info--table {
  display: none;
  padding-top: 33px;
}

.o-detail-course__box .o-course__info--table table {
  width: 100%;
  font-size: 14px;
  line-height: 1.2;
}

.o-detail-course__box .o-course__info--table table tr {
  display: block;
  padding: 23px 0;
}

.o-detail-course__box .o-course__info--table table tr + tr {
  border-top: 1px solid var(--light-gray);
}

.o-detail-course__box .o-course__info--table table th {
  color: var(--line-blue);
  width: 8rem;
  text-align: left;
}

.o-detail-course__box .ttl-course-distance {
  display: flex;
  align-items: center;
  gap: 16px;
  margin: 25px 0;
  padding-left: 53px;
}

.o-detail-course__box .ttl-course-distance::before {
  content: "";
  display: block;
  background: url(/images/front/icon/icon-course-distance.svg) no-repeat 0 0;
  width: 17px;
  height: 79px;
}

.o-detail-course__box .map-btn {
  margin: 0 auto;
  width: 364px;
  height: 48px;
  border-radius: 30px;
}

.o-detail-course__box .map-btn::after {
  display: none;
}

.o-detail-course__box .map-btn.active {
  font-size: 0;
}

.o-detail-course__box .map-btn.active::before {
  content: "-";
}

.o-detail-course__box .map-btn::before {
  content: "+";
  display: block;
  color: var(--white);
  font-size: 14px;
  font-weight: bold;
  position: absolute;
  top: calc(50% - 11px);
  left: 20px;
}

.o-detail-course__box .map-list {
  width: 100%;
  max-width: 1136px;
  margin: 0 auto;
}

.o-detail-course__box .map-list .map-list__wrapper {
  padding: 81px 0 !important;
}

.o-detail-course__box a.btn.btn-black.map-btn::after {
  display: none;
}

.o-detail-course__box a.btn.btn-black.map-btn.active::after {
  content: "\30B3\30FC\30B9\30DE\30C3\30D7\3092\9589\3058\308B";
  display: block;
  font-size: 14px;
  background: none;
  position: relative;
  width: auto;
  height: auto;
  top: auto;
  left: auto;
}

.o-detail-course__box_inner.section-map .map-list__text-list_wrap_inner .course__section__ttl_number {
  background: url(/images/front/icon/icon-course-number.svg) no-repeat 0 0;
  min-width: 32px;
  width: 35px;
  height: 35px;
  color: var(--white);
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 14px;
  padding-top: 5px;
  margin-right: 4px;
  background-size: contain;
}

.o-detail-course__box .main-content-sns-list {
  margin: 48px 0 120px;
}

.is-spot-detail .main-content-sns {
  margin: 80px auto;
}

.is-spot-detail .main-content-sns .main-content-sns-list {
  margin-bottom: 50px;
}

.is-spot-detail .btn-reserve {
  height: 60px;
  width: 180px;
  text-decoration: none;
  border: none;
  border-radius: 0 35px 35px 0;
  margin: 0 auto 30px;
  position: fixed;
  bottom: 30px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 18px;
  line-height: 1.2;
  font-family: var(--font-family-bold);
  font-weight: bold;
  letter-spacing: 1px;
  flex-direction: row-reverse;
  gap: 15px;
  padding: 0 4px 0 0;
  z-index: 9;
}

.is-spot-detail a.btn.btn-black.btn-reserve::after {
  position: relative;
  width: 8px;
  height: 8px;
  top: auto;
  left: auto;
}

.seasonal-attractions-slick.detail-topics.slick-slider {
  max-width: 1032px;
  margin: 0 auto 54px;
}

.seasonal-attractions-slick.detail-topics.slick-slider .slick-track {
  margin: 0;
}

.seasonal-attractions-slick.detail-topics.slick-slider .slick-prev,
.seasonal-attractions-slick.detail-topics.slick-slider .slick-next {
  width: 14px;
  height: 26px;
  opacity: 1;
  z-index: 1;
  top: 80px;
}

.seasonal-attractions-slick.detail-topics.slick-slider .slick-prev {
  left: -32px !important;
}

.seasonal-attractions-slick.detail-topics.slick-slider .slick-prev::before {
  background: url(/images/front/icon/icon-arrow-left3.svg) no-repeat 0 0;
}

.seasonal-attractions-slick.detail-topics.slick-slider .slick-next {
  right: -32px !important;
}

.seasonal-attractions-slick.detail-topics.slick-slider .slick-next::before {
  background: url(/images/front/icon/icon-arrow-right3.svg) no-repeat 0 0;
}

.seasonal-attractions-slick.detail-topics.slick-slider .slick-inner {
  margin: 0;
  height: auto;
}

.seasonal-attractions-slick.detail-topics.slick-slider .slick-slide img {
  width: 100%;
  height: auto;
  max-height: none;
  -o-object-fit: cover;
     object-fit: cover;
  aspect-ratio: 3/2;
}

.seasonal-attractions-slick.detail-topics.slick-slider .slick-content-caption {
  color: var(--dark);
  font-size: 14px;
  line-height: 2;
}

@media (max-width: 1120px) {
  .seasonal-attractions-slick.detail-topics.slick-slider .slick-prev {
    left: -20px !important;
  }

  .seasonal-attractions-slick.detail-topics.slick-slider .slick-next {
    right: -20px !important;
  }

  .seasonal-attractions-slick.detail-topics.slick-slider .slick-prev,
  .seasonal-attractions-slick.detail-topics.slick-slider .slick-next {
    top: 70px;
  }
}

@media (max-width: 1199px) {
  .o-detail-course__box .course__section__area {
    padding: 0 2rem;
    background-position-x: calc(2rem + 25px);
  }

  .o-detail-course__box .course__section__ttl_number {
    min-width: 50px;
  }

  .o-detail-course__box .course__section__inner .o-course__info-box .o-course__info--left,
  .o-detail-course__box .course__section__inner .o-course__info-box .o-course__info--right {
    width: 50%;
  }

  .o-detail-course__box .course__section__inner .o-course__info-box {
    gap: 2rem;
  }

  .o-detail-course__box .course__section__description {
    padding: 2rem 0;
  }

  .o-detail-course__box .map-list .map-list__wrapper {
    padding: 2rem 1rem;
  }

  .o-detail-course__box_inner.section-map .map-list__text-list_wrap_inner .course__section__ttl_number {
    max-width: 50px;
    min-width: 50px;
    justify-content: left;
    padding-left: 10px;
  }
}

@media (max-width: 1100px) {
  .o-detail-contents--topics.blue .seasonal-attractions-slick.detail-topics.slick-slider {
    max-width: 100%;
    padding: 0 2rem;
  }

  .o-detail-contents--topics.blue .seasonal-attractions-slick.detail-topics.slick-slider .slick-prev {
    left: 10px !important;
  }

  .o-detail-contents--topics.blue .seasonal-attractions-slick.detail-topics.slick-slider .slick-next {
    right: 10px !important;
  }
}

@media (max-width: 1023px) {
  .o-detail-course__box .main-content-sns-list {
    margin: 2rem 0 4rem;
  }
}

@media (max-width: 967px) {
  .is-spot-detail .o-detail-contents .o-free-html,
  .is-spot-detail .o-detail-contents__tag-box .o-detail-contents__tag-box__inner {
    padding: 0 2rem;
  }

  .is-spot-detail .btn-reserve {
    height: 50px;
    width: 160px;
    border-radius: 0 25px 25px 0;
    font-size: 14px;
    gap: 14px;
  }

  .is-spot-detail .o-detail-contents__youtube-box {
    margin: 1rem auto 3rem;
    padding: 0 1rem;
  }
}

@media (max-width: 899px) {
  .o-detail-contents--others {
    margin: 1.5rem 0 3rem;
  }

  .is-spot-detail .main-content-sns {
    margin: 2.5rem auto;
  }

  .o-detail-contents--facility .o-detail-contents--facility__list {
    padding: 0 2rem;
  }
}

@media (max-width: 768px) {
  .o-detail-course__box .course__section__area {
    background: none;
  }

  .o-detail-course__box .course__section__inner {
    padding: 0 1rem;
  }

  .o-detail-course__box .course__section__ttl_number {
    font-size: 18px;
    background-size: 80%;
    background-position-y: center;
    padding: 6px 6px 0 0;
  }

  .o-detail-course__box .course__section__inner .course__section__ttl {
    flex-wrap: wrap;
    padding-left: 83px;
    gap: 1rem;
    font-size: 20px;
  }

  .o-detail-course__box .course__section__description {
    padding: 1.5rem 0;
    font-size: 16px;
  }

  .o-detail-course__box .course__section__inner .o-course__info-box {
    flex-direction: column;
    gap: 1.5rem;
  }

  .o-detail-course__box .course__section__inner .o-course__info-box .o-course__info--left,
  .o-detail-course__box .course__section__inner .o-course__info-box .o-course__info--right {
    width: 100%;
  }

  .o-detail-course__box .course__section__inner .o-course__info-box .o-course__info--left {
    margin: 0 auto;
  }

  .o-detail-course__box .ttl-course-distance {
    padding-left: 1rem;
  }

  .o-detail-feature .o-detail-feature-image h1 {
    font-size: 1.2rem !important;
  }
}

@media (max-width: 660px) {
  .seasonal-attractions-slick.detail-topics.slick-slider .slick-prev,
  .seasonal-attractions-slick.detail-topics.slick-slider .slick-next {
    top: calc(50% - 30px);
  }

  .o-detail-contents--topics.blue .seasonal-attractions-slick.detail-topics.slick-slider .slick-prev,
  .o-detail-contents--topics.blue .seasonal-attractions-slick.detail-topics.slick-slider .slick-next {
    top: calc(50% - 55px);
  }

  .seasonal-attractions-slick.detail-topics .slick-slide a {
    display: block;
    width: 100%;
    position: relative;
  }

  .seasonal-attractions-slick.detail-topics.slick-slider .slick-track,
  .seasonal-attractions-slick.detail-topics.slick-slider .slick-list {
    height: auto;
  }
}

@media (min-width: 577px) {
  .o-detail-contents__table tr {
    display: flex;
  }

  .o-detail-contents__table th {
    display: table-cell;
    width: 15rem;
    white-space: normal;
    vertical-align: middle;
  }

  .o-detail-contents__table td {
    display: table-cell;
    width: calc(100% - 15rem);
    text-align: left;
    padding: 22px 2rem;
  }
}

@media (max-width: 576px) {
  .o-detail-contents--topics__wrapper {
    padding: 76px 0 1rem;
  }

  .o-detail-course__box .course__section__area {
    padding: 0 1rem;
  }

  .o-detail-course__box .o-course__info--right .o-course__info--btn .btn {
    font-size: 12px;
  }

  .o-detail-course__box .o-course__info--right .o-course__info--btn a.btn.btn-white::after,
  .o-detail-course__box .o-course__info--right .o-course__info--btn a.btn.btn-black::before {
    left: 13px;
  }

  .o-detail-course__box .o-course__info--table table th {
    width: 6rem;
  }

  .o-detail-course__box_inner.section-map {
    padding: 0 2rem;
  }

  .o-detail-course__box .map-btn {
    width: 100%;
    max-width: 364px;
  }
}

@media (max-width: 320px) {
  .seasonal-attractions-slick.detail-topics.slick-slider .slick-prev,
  .seasonal-attractions-slick.detail-topics.slick-slider .slick-next {
    top: calc(50% - 45px);
  }
}

.o-detail-feature {
  width: 100%;
  max-width: 1040px;
  margin: 0 auto;
}

.o-detail-feature .o-detail-feature-image {
  width: 100%;
  position: relative;
}

.o-detail-feature .o-detail-feature-image img {
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  aspect-ratio: 1040/520;
}

.o-detail-feature .o-detail-feature-image img + h1 {
  max-width: 80%;
  position: absolute;
  left: 0;
  bottom: 28px;
}

.o-detail-feature .o-detail-feature-image h1 {
  background-color: var(--white);
  color: var(--dark);
  font-size: 28px;
  line-height: 1.2;
  padding: 15px 1rem;
}

.o-detail-feature .o-detail-contents__description {
  font-size: 18px;
  line-height: 2;
  font-weight: normal;
  padding: 0 36px;
  margin: 47px 0 65px;
}

.o-detail-feature__box .o-detail-feature__ttl {
  width: 100%;
  border-bottom: 2px solid var(--dark);
  padding: 30px 0;
  position: relative;
  font-size: 24px;
  margin-bottom: 49px;
}

.o-detail-feature__box .o-detail-feature__ttl::after {
  content: "";
  display: block;
  width: 40%;
  height: 4px;
  background-color: var(--white);
  position: absolute;
  right: 0;
  bottom: -3px;
}

.o-detail-feature__box .o-detail-feature__ttl span {
  display: block;
  width: 968px;
  margin: 0 auto;
}

.o-detail-feature__box .o-free-html {
  line-height: 2;
  width: 100%;
  max-width: 968px;
  margin: 0 auto;
}

.o-detail-feature__box .o-free-html p {
  margin: 1em 0;
}

.o-detail-feature__box .o-free-html .u-image-thumbnail--detail {
  margin: 1rem 0;
  text-align: center;
}

.o-detail-feature__box .o-free-html .u-image-thumbnail--detail img {
  width: 100%;
  height: auto;
  max-width: 790px;
  -o-object-fit: contain;
     object-fit: contain;
  aspect-ratio: 3/2;
}

.o-detail-feature__box .o-free-html.btnarea {
  margin: 55px auto 80px;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 16px;
  flex-wrap: wrap;
}

.o-detail-feature__box .o-detail-feature__column_box {
  margin: 120px auto 160px;
  width: 100%;
  max-width: 1040px;
  background: var(--column-blue);
  display: flex;
  gap: 64px;
  padding: 64px;
  position: relative;
}

.o-detail-feature__box .o-detail-feature__column_box::after {
  content: "";
  display: block;
  width: 171px;
  height: 49px;
  background: url(/images/front/contents/ttl-column.svg) no-repeat 0 0;
  position: absolute;
  top: -20px;
  left: calc(50% - 85px);
}

.o-detail-feature__box .o-detail-feature__column_box img {
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  aspect-ratio: 420/280;
  max-width: 420px;
  max-height: 280px;
}

.o-detail-feature__box .o-detail-feature__column_box .o-detail-feature__column_box_inner {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-start;
}

.o-detail-feature__box .o-detail-feature__column_box .o-detail-feature__column_box_inner .column-ttl {
  font-size: 18px;
  line-height: 1.2;
  -webkit-margin-before: 1em;
          margin-block-start: 1em;
  -webkit-margin-after: 1em;
          margin-block-end: 1em;
}

.o-detail-feature__box .o-detail-feature__column_box .o-detail-feature__column_box_inner .column-txt {
  line-height: 2;
  margin-bottom: 32px;
}

.o-detail-feature__box .o-detail-contents__youtube-box {
  margin: 50px auto 101px;
  max-width: 790px;
}

.o-detail-feature__box .o-detail-contents__youtube-inner {
  width: 100%;
  margin: 0 auto;
  position: relative;
  padding-top: 56.25%;
}

.o-detail-feature__box .o-detail-contents__youtube-inner iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.o-detail-feature__box .o-detail-contents--others {
  margin: 50px 0 80px;
}

.o-detail-feature__box .o-detail-contents-footer-topics__wrapper {
  padding-top: 0;
}

.o-detail-feature__box .o-feature__info-box {
  width: 100%;
  max-width: 1036px;
  margin: 64px auto;
  display: flex;
  flex-wrap: wrap;
  gap: 64px 32px;
}

.o-detail-feature__box .o-feature__info-box.item-2only {
  justify-content: center;
}

.o-detail-feature__box .o-feature__info-box .o-feature__anchor {
  max-width: 324px;
  display: block;
}

.o-detail-feature__box .o-feature__info-box .o-feature__image-thumbnail .o-feature__image {
  width: 100%;
  aspect-ratio: 324/224;
  -o-object-fit: cover;
     object-fit: cover;
}

.o-detail-feature__box .o-feature__info-box .o-feature__info--right .o-feature__title {
  line-height: 1.7;
  margin: 24px 0 22px;
}

.o-detail-feature__box .o-feature__info-box .o-feature__info--right .o-feature__description {
  line-height: 2;
  font-size: 14px;
}

.o-detail-feature__box .o-feature__info-box .o-feature__info--right a.btn {
  margin: 32px auto 0;
}

.o-detail-feature__box .map-btn {
  margin: 1rem auto 0;
}

.o-detail-feature__box .map-btn::before {
  content: "+";
  display: block;
  color: var(--white);
  font-size: 14px;
  font-weight: bold;
  position: absolute;
  top: calc(50% - 11px);
  left: 20px;
}

.o-detail-feature__box .map-btn.active {
  font-size: 0;
}

.o-detail-feature__box .map-btn.active::before {
  content: "-";
}

.o-detail-feature__box .map-list {
  width: 100%;
  max-width: 1136px;
  margin: 0 auto;
}

.o-detail-feature__box .map-list .map-list__wrapper {
  padding: 81px 0 !important;
}

.o-detail-feature__box a.btn.btn-black.map-btn::after {
  display: none;
}

.o-detail-feature__box a.btn.btn-black.map-btn.active::after {
  content: "\5730\56F3\3092\9589\3058\308B";
  display: block;
  font-size: 14px;
  background: none;
  position: relative;
  width: auto;
  height: auto;
  top: auto;
  left: auto;
}

@media (max-width: 1199px) {
  .o-detail-feature__box .map-list .map-list__wrapper {
    padding: 2rem 1rem;
  }
}

@media (max-width: 1039px) {
  .o-detail-feature .o-detail-feature-image {
    padding: 0 4rem;
  }

  .o-detail-feature .o-detail-feature-image h1 {
    left: 4rem;
  }

  .o-detail-feature .o-detail-contents__description {
    padding: 0 5rem;
    margin: 2rem 0 3rem;
  }

  .o-detail-feature__box .o-detail-feature__column_box {
    margin: 3rem auto 4rem;
  }
}

@media (max-width: 1035px) {
  .o-detail-feature__box .o-feature__info-box {
    padding: 0 2rem;
    justify-content: center;
    margin: 2rem auto 4rem;
  }
}

@media (max-width: 967px) {
  .o-detail-feature__box .o-detail-feature__ttl {
    padding: 1.2rem 0;
    margin-bottom: 1.5rem;
  }

  .o-detail-feature__box .o-detail-feature__ttl span {
    width: 100%;
    padding: 0 1rem;
  }

  .o-detail-feature__box .o-detail-feature__ttl::after {
    display: none;
  }

  .o-detail-feature__box .o-free-html {
    padding: 0 1.5rem;
  }

  .o-detail-feature__box .o-free-html.btnarea {
    margin: 2rem 0 3rem;
  }

  .o-detail-feature__box .o-detail-feature__column_box {
    padding: 2.5rem;
    flex-direction: column;
    gap: 1rem;
  }

  .o-detail-feature__box .o-detail-feature__column_box img {
    margin: 0 auto;
    max-width: none;
    max-height: none;
  }

  .o-detail-feature__box .o-detail-contents__youtube-box {
    margin: 1rem auto 3rem;
    padding: 0 1rem;
  }

  .o-detail-feature__box .o-detail-contents--others {
    margin: 1.5rem 0 3rem;
  }
}

@media (max-width: 576px) {
  .o-detail-feature .o-detail-feature-image {
    padding: 0 1rem;
  }

  .o-detail-feature .o-detail-feature-image h1 {
    padding: 0 1rem;
  }

  .o-detail-feature .o-detail-feature-image img + h1 {
    position: relative;
    left: auto;
    bottom: auto;
    max-width: 100%;
  }

  .o-detail-feature .o-detail-contents__description {
    padding: 0 2rem;
  }

  .o-detail-feature__box .o-detail-feature__ttl {
    font-size: 1.2rem;
  }

  .o-detail-feature__box .o-detail-feature__column_box {
    margin: 2rem auto 3rem;
  }

  .o-detail-feature__box .o-detail-feature__column_box img {
    width: 100%;
  }

  .o-detail-feature__box .o-feature__info-box .o-feature__image-thumbnail .o-feature__image {
    width: 100%;
    aspect-ratio: 324/224;
    -o-object-fit: cover;
    object-fit: cover;
  }
}

.o-detail-feature-slider {
  position: relative;
}

@media (min-width: 1024px) {
  .o-detail-feature-slider {
    overflow: initial;
  }
}

.o-detail-feature-slider__list {
  z-index: 2;
}

@media (min-width: 577px) {
  .is-spot-detail .o-detail-feature-slider__list {
    margin: 0 auto;
  }
}

@media (min-width: 1024px) {
  .is-spot-detail .o-detail-feature-slider__list {
    width: 79rem;
  }
}

.o-detail-feature-slider__list.js-detail-feature-slider .slick-dots {
  bottom: -3rem;
}

.o-detail-feature-slider__list.js-detail-feature-slider .slick-dots li {
  width: 5rem;
}

.o-detail-feature-slider__list.js-detail-feature-slider .slick-dots li.slick-active button::before {
  background-color: #5d1d4f;
}

.o-detail-feature-slider__list.js-detail-feature-slider .slick-dots li button::before {
  display: block;
  width: 5rem;
  height: 0.6rem;
  content: "";
  background-color: #b8b8b8;
  opacity: 1;
}

@media (min-width: 577px) {
  .o-detail-feature-slider__list.js-detail-feature-slider .slick-dots {
    display: none !important;
  }
}

.o-detail-feature-slider__list.thumbnail-slider {
  width: calc(100% - 8rem);
  margin: 0 auto 1.5rem auto;
}

@media (min-width: 577px) {
  .o-detail-feature-slider__list.thumbnail-slider {
    display: flex;
    justify-content: center;
    width: 31rem;
    margin: 0 auto;
  }

  .is-features-detail .o-detail-feature-slider__list.thumbnail-slider {
    width: 40rem;
  }
}

.o-detail-feature-slider__list.thumbnail-slider .o-detail-feature-slider__item {
  width: 6.4rem !important;
  padding: 0 1rem 0 0;
}

.is-features-detail .o-detail-feature-slider__list.thumbnail-slider .o-detail-feature-slider__item {
  width: 10.4rem !important;
  padding: 0 2.4rem 0 0;
}

.o-detail-feature-slider__list.thumbnail-slider .o-detail-feature-slider__item img {
  border-radius: 100%;
}

.o-detail-feature-slider__list.thumbnail-slider .slick-list {
  padding-right: 0 !important;
  padding-left: 0 !important;
}

.o-detail-feature-slider__list.thumbnail-slider .slick-next {
  top: 50%;
  display: inline-block !important;
}

@media (min-width: 1281px) {
  .o-detail-feature-slider__list.thumbnail-slider .slick-next {
    right: -2.5rem;
  }

  .is-features-detail .o-detail-feature-slider__list.thumbnail-slider .slick-next {
    right: -9rem;
  }
}

.o-detail-feature-slider__list.thumbnail-slider .slick-prev {
  top: 50%;
  display: inline-block !important;
}

@media (min-width: 1281px) {
  .o-detail-feature-slider__list.thumbnail-slider .slick-prev {
    left: -2.5rem;
  }

  .is-features-detail .o-detail-feature-slider__list.thumbnail-slider .slick-prev {
    left: -9rem;
  }
}

.o-detail-feature-slider__list.thumbnail-slider.js-thumbnail .slick-next,
.o-detail-feature-slider__list.thumbnail-slider.js-thumbnail .slick-prev {
  display: inline-block !important;
  width: 1.6rem;
  height: 1.6rem;
}

.o-detail-feature-slider__list.thumbnail-slider.js-thumbnail .slick-next::before,
.o-detail-feature-slider__list.thumbnail-slider.js-thumbnail .slick-prev::before {
  display: block;
  width: 1.6rem;
  height: 1.6rem;
  content: "";
}

.o-detail-feature-slider__list.thumbnail-slider.js-thumbnail .slick-next {
  right: -3.1rem;
}

.o-detail-feature-slider__list.thumbnail-slider.js-thumbnail .slick-next::before {
  background: url("/images/front/slider/button-arrow-next.svg") no-repeat center center;
}

.o-detail-feature-slider__list.thumbnail-slider.js-thumbnail .slick-prev {
  left: -3.1rem;
}

.o-detail-feature-slider__list.thumbnail-slider.js-thumbnail .slick-prev::before {
  background: url("/images/front/slider/button-arrow-prev.svg") no-repeat center center;
}

.o-detail-feature-slider__anchor {
  position: relative;
  width: 100%;
  cursor: pointer;
  /* stylelint-disable */
  /* stylelint-enable */
}

.o-detail-feature-slider__anchor[href*="void(0)"] {
  cursor: default;
}

@media (min-width: 577px) {
  .o-detail-feature-slider__anchor {
    height: 100%;
  }
}

.o-detail-feature-slider__anchor:hover {
  opacity: 1;
}

.o-detail-feature-slider__anchor .o-detail-contents__description {
  font-size: 1.6rem;
}

.o-detail-feature-slider__image {
  position: absolute;
  top: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

@media (min-width: 577px) {
  .o-detail-feature-slider__image {
    position: relative;
  }
}

.o-detail-feature-slider__caption {
  position: relative;
  z-index: 10;
  width: 100%;
  line-height: 1.5;
  text-align: left;
}

.o-detail-feature-slider__sub-box {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  width: 100%;
  max-width: 79rem;
  margin: 0 auto;
}

@media (min-width: 577px) {
  .o-detail-feature-slider__sub-box {
    flex-direction: row;
  }
}

.o-detail-feature-slider .slick-list,
.o-detail-feature-slider .slick-track,
.o-detail-feature-slider .slick-slide {
  height: 100%;
}

.o-detail-feature-slider .slick-slide > div {
  height: 100%;
}

.o-detail-feature-slider .slick-prev::before,
.o-detail-feature-slider .slick-next::before {
  display: block;
  width: 4.8rem;
  height: 4.8rem;
  content: "";
}

@media (min-width: 577px) {
  .o-detail-feature-slider .slick-prev::before,
  .o-detail-feature-slider .slick-next::before {
    width: 3rem;
    height: 4rem;
    filter: drop-shadow(0 0 0.6rem #000);
  }
}

.o-detail-feature-slider .slick-prev,
.o-detail-feature-slider .slick-next {
  top: initial;
  bottom: -8rem;
  z-index: 99;
  width: 4.8rem;
  height: 4.8rem;
}

@media (min-width: 577px) {
  .o-detail-feature-slider .slick-prev,
  .o-detail-feature-slider .slick-next {
    top: 50%;
    bottom: initial;
    width: 3rem;
    height: 4rem;
  }
}

.o-detail-feature-slider .slick-prev {
  left: 2rem;
}

.o-detail-feature-slider .slick-prev::before {
  background: url("/images/front/slider/spot-slider-prev.svg") no-repeat;
  background-size: auto 100%;
}

@media (min-width: 577px) {
  .o-detail-feature-slider .slick-prev::before {
    background: url("/images/front/slider/main-slider-prev.svg") no-repeat;
  }
}

@media (min-width: 577px) {
  .o-detail-feature-slider .slick-prev {
    left: 6rem;
  }
}

.o-detail-feature-slider .slick-next {
  right: 2rem;
}

.o-detail-feature-slider .slick-next::before {
  background: url("/images/front/slider/spot-slider-next.svg") no-repeat;
  background-size: auto 100%;
}

@media (min-width: 577px) {
  .o-detail-feature-slider .slick-next::before {
    background: url("/images/front/slider/main-slider-next.svg") no-repeat;
  }
}

@media (min-width: 577px) {
  .o-detail-feature-slider .slick-next {
    right: 6rem;
  }
}

/* stylelint-disable */

_:-ms-lang(x)::-ms-backdrop,
.o-detail-feature-slider__list.js-detail-slider .o-detail-feature-slider__anchor {
  overflow: hidden;
  background: #f5f5f5;
}

_:-ms-lang(x)::-ms-backdrop,
.o-detail-feature-slider__list.js-detail-slider .o-detail-feature-slider__image {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 100%;
  transform: translate(-50%, -50%);
}

_:-ms-lang(x)::-ms-backdrop,
.feature-slider.o-detail-feature-slider__list .o-detail-feature-slider__anchor {
  overflow: hidden;
  background: #f5f5f5;
}

_:-ms-lang(x)::-ms-backdrop,
.feature-slider.o-detail-feature-slider__list .o-detail-feature-slider__image {
  top: 50%;
  left: 50%;
  width: auto;
  transform: translate(-50%, -50%);
}

_:-ms-lang(x)::-ms-backdrop,
.o-detail-feature-slider .slick-slider > div {
  overflow: hidden;
}

/* stylelint-enable */

/* == 下層コンテンツ スポット詳細 slick各種 == */

.o-detail-slider {
  width: 100%;
  min-height: 569px;
  background: var(--footer-blue);
  position: relative;
  padding-top: 424px;
  box-sizing: border-box;
}

.o-detail-slider::before {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  background: url(/images/front/back-image-f01.png) no-repeat center 60%;
  opacity: 0.15;
  top: 0;
}

.o-detail-slider .header_guide_detail {
  margin: 0;
  padding: 0;
  position: absolute;
  top: -64px;
  z-index: 1;
  width: 100%;
  height: 440px;
}

.o-detail-slider .header_guide_detail.slick-slider .slick-list {
  height: 440px;
}

.o-detail-slider .header_guide_detail.slick-slider .slick-list.draggable img {
  -o-object-fit: cover;
     object-fit: cover;
  max-height: 440px;
  width: 100%;
  aspect-ratio: 660/440;
}

.o-detail-slider .header_guide_detail.slick-slider.variable-width .o-detail-slider__item {
  margin: 0 38px;
  width: auto !important;
}

.o-detail-slider .header_guide_detail.slick-slider.variable-width .u-image-thumbnail--detail {
  position: relative;
  display: inline-flex;
  flex-direction: column;
}

.o-detail-slider .header_guide_detail.slick-slider.variable-width .u-image-thumbnail--detail .slick-content {
  max-width: 660px;
}

.o-detail-slider .header_guide_detail.slick-slider.variable-width .u-image-thumbnail--detail .o-detail-slider__caption {
  position: absolute;
  bottom: 0;
  background: linear-gradient(180deg, transparent 0, rgba(0, 0, 0, 0.75));
  width: 100%;
  margin: 0;
  color: var(--white);
  min-height: 4rem;
  font-size: 16px;
  line-height: 1.5;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  padding: 0.5rem 1rem;
}

.o-detail-slider .header_guide_detail.slick-slider .slick-prev {
  left: calc(50% - 375px) !important;
}

.o-detail-slider .header_guide_detail.slick-slider .slick-next {
  right: calc(50% - 375px) !important;
}

.o-detail-slider .o-detail-slider__sub-box {
  max-width: 412px;
  height: 40px;
  margin: 0 auto 48px;
}

.o-detail-slider .o-detail-slider__sub-box .slick-slider {
  margin: 0;
  padding: 0 50px;
}

.o-detail-slider .o-detail-slider__sub-box .slick-slider .slick-slide img {
  width: 100%;
  -o-object-fit: contain;
     object-fit: contain;
  max-height: 40px;
  aspect-ratio: 60/40;
}

.o-detail-slider .o-detail-slider__sub-box .slick-prev {
  left: 0;
}

.o-detail-slider .o-detail-slider__sub-box .slick-prev:before {
  content: "";
  width: 14px;
  height: 26px;
  background: url(/images/front/icon/icon-arrow-left2.svg) no-repeat 0 0;
  display: block;
}

.o-detail-slider .o-detail-slider__sub-box .slick-next {
  right: 0;
}

.o-detail-slider .o-detail-slider__sub-box .slick-next:before {
  content: "";
  width: 14px;
  height: 26px;
  background: url(/images/front/icon/icon-arrow-right2.svg) no-repeat 0 0;
  display: block;
}

.o-detail-slider .main-content-btnarea {
  display: flex;
  justify-content: center;
}

.o-detail-slider.feature_slider {
  background: none;
  padding: 0;
  min-height: auto;
}

.o-detail-slider.feature_slider::before {
  display: none;
}

.o-detail-slider.feature_slider .header_guide_detail {
  top: 0;
  height: 520px;
  position: relative;
}

.o-detail-slider.feature_slider .header_guide_detail .slick-slide {
  margin: 0 2.5rem;
}

.o-detail-slider.feature_slider .header_guide_detail .slick-slide .o-detail-slider__item {
  margin: 0;
}

.o-detail-slider.feature_slider .header_guide_detail.slick-slider .slick-prev:before {
  background: url(/images/front/icon/icon-arrow-left3.svg) no-repeat 0 0;
}

.o-detail-slider.feature_slider .header_guide_detail.slick-slider .slick-next:before {
  background: url(/images/front/icon/icon-arrow-right3.svg) no-repeat center right;
}

.o-detail-slider.feature_slider .header_guide_detail.slick-slider .slick-next,
.o-detail-slider.feature_slider .header_guide_detail.slick-slider .slick-prev {
  top: calc(50% - 48px);
}

.o-detail-slider.feature_slider .header_guide_detail.slick-slider .slick-list {
  height: 500px;
  text-align: center;
}

.o-detail-slider.feature_slider .header_guide_detail .slick-content-caption {
  display: -webkit-box;
  -webkit-line-clamp: 2;
  overflow: hidden;
  text-align: center;
  margin: 1em 0;
}

.header_guide_detail.slick-slider .slick-prev {
  left: calc(50% - 375px) !important;
}

.header_guide_detail.slick-slider .slick-prev:before {
  content: "";
  width: 20px;
  height: 26px;
  background: url(/images/front/icon/icon-arrow-left2.svg) no-repeat 0 0;
  display: block;
}

.header_guide_detail.slick-slider .slick-next:before {
  content: "";
  width: 20px;
  height: 26px;
  background: url(/images/front/icon/icon-arrow-right2.svg) no-repeat center right;
  display: block;
}

.header_guide_detail.slick-slider .slick-next,
.header_guide_detail.slick-slider .slick-prev {
  top: calc(50% - 0px);
  z-index: 1;
}

@media (max-width: 780px) {
  .spot_detail .o-detail-slider {
    padding-top: 0;
    min-height: auto;
    padding-bottom: 1rem;
  }

  .o-detail-slider .header_guide_detail {
    position: relative;
    top: -2rem;
    height: auto;
  }

  .o-detail-slider .header_guide_detail.slick-slider .slick-list {
    height: auto;
  }

  .o-detail-slider.feature_slider .header_guide_detail.slick-slider .slick-list,
  .o-detail-slider.feature_slider .header_guide_detail {
    height: auto;
  }

  .o-detail-slider .header_guide_detail.slick-slider .slick-prev {
    left: 10px !important;
  }

  .o-detail-slider .header_guide_detail.slick-slider .slick-next {
    right: 10px !important;
  }

  .o-detail-slider .header_guide_detail.slick-slider .slick-list.draggable img {
    height: auto;
    margin: 0 auto;
  }

  .o-detail-slider.feature_slider .header_guide_detail.slick-slider .slick-next,
  .o-detail-slider.feature_slider .header_guide_detail.slick-slider .slick-prev {
    top: calc(50% - 40px);
  }

  .o-detail-slider .o-detail-slider__sub-box {
    width: 100%;
    margin: 0 auto 2rem;
  }
}

@media (max-width: 500px) {
  .o-detail-slider .o-detail-slider__sub-box .slick-slider .slick-prev {
    left: 20px !important;
  }

  .o-detail-slider .o-detail-slider__sub-box .slick-slider .slick-next {
    right: 20px !important;
  }
}

@media (min-width: 577px) {
  .o-digest--tile {
    width: calc(100% - 6rem);
    margin: 0 auto;
  }
}

@media (min-width: 1281px) {
  .o-digest--tile {
    width: 100%;
  }
}

.o-digest--tile__list {
  display: flex;
  flex-wrap: wrap;
  width: 100%;
  margin: 0 auto;
}

@media (min-width: 1024px) {
  .o-digest--tile__list {
    width: 100%;
  }
}

.o-digest--tile__item {
  width: calc((100% / 2) - (((2 - 1) * 1rem) / 2));
  margin: 0 1rem 4rem 0;
}

.o-digest--tile__item:nth-of-type(2n) {
  margin-right: 0;
}

@media (min-width: 577px) {
  .o-digest--tile__item {
    width: calc((100% / 4) - (((4 - 1) * 3.2rem) / 4));
    margin: 0 3.2rem 8rem 0;
  }

  .o-digest--tile__item:nth-of-type(2n) {
    margin-right: 3.2rem;
  }

  .o-digest--tile__item:nth-of-type(4n) {
    margin-right: 0;
  }
}

.o-digest--tile__anchor {
  display: block;
  width: 100%;
  height: 100%;
}

.o-digest--tile__image-box {
  position: relative;
  margin-bottom: 2rem;
}

.o-digest--tile__image-box > div {
  position: relative;
}

.o-digest--tile__image {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border-radius: 1rem;
  -o-object-fit: cover;
     object-fit: cover;
}

.o-digest--tile__image-thumbnail {
  position: relative;
  padding-top: 100%;
}

.o-digest--tile__title {
  width: 100%;
  font-weight: 600;
  color: #4b4948;
  text-align: left;
}

.o-digest--tile__description {
  min-height: 4.4rem;
  margin: 2rem 0 1.4rem 0;
  font-size: 1.3rem;
  line-height: 1.8;
  color: #4b4948;
}

.o-digest--tile__description .u-line-clamp2 {
  display: -webkit-box;
  width: 100%;
  /* autoprefixer: off */
  -webkit-box-orient: vertical;
  /* autoprefixer: on */
  -webkit-line-clamp: 2;
  overflow: hidden;
}

.o-digest--tile__description:empty {
  display: none;
}

body:not(.ja) .o-digest--tile__description {
  min-height: 3.7rem;
}

.o-digest--tile--favorite {
  position: absolute;
  top: 1rem;
  right: 1rem;
  z-index: 10;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 2.4rem;
  height: 2.4rem;
  background-color: #fff;
  border-radius: 10rem;
}

.o-digest--tile--favorite .fa {
  font-size: 1.3rem;
  color: #008071;
}

.o-digest--tile--favorite.is-active {
  background-color: #008071;
}

.o-digest--tile--favorite.is-active .fa {
  font-size: 1.2rem;
  color: #fff;
}

@media (min-width: 577px) {
  .o-digest--list {
    width: calc(100% - 6rem);
    margin: 0 auto;
  }
}

@media (min-width: 1281px) {
  .o-digest--list {
    width: 100%;
  }
}

.o-digest--list__list {
  width: 100%;
  margin-right: auto;
  margin-left: auto;
}

@media (min-width: 1024px) {
  .o-digest--list__list {
    width: 100%;
  }
}

.o-digest--list__item {
  display: flex;
  flex-direction: column;
  width: 100%;
  border-bottom: 0.1rem solid #a6a6a6;
}

@media (min-width: 577px) {
  .o-digest--list__item {
    flex-direction: row;
  }
}

.o-digest--list__anchor {
  display: block;
  width: 100%;
}

@media (min-width: 577px) {
  .o-digest--list__anchor {
    width: 30%;
  }
}

@media (min-width: 1281px) {
  .o-digest--list__anchor {
    width: 34.2rem;
    height: 22.8rem;
  }
}

.o-digest--list__image {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border-radius: 1rem;
  -o-object-fit: cover;
     object-fit: cover;
}

.o-digest--list__image-thumbnail {
  position: relative;
  padding-top: 66.6%;
}

.o-digest--list__info-box {
  width: 100%;
}

@media (min-width: 577px) {
  .o-digest--list__info-box {
    width: 70%;
  }
}

.o-digest--list__title {
  display: inline-block;
  padding: 0 0 1rem 0;
  font-weight: 600;
}

@media (min-width: 577px) {
  .o-digest--list__title {
    border-bottom: 0.1rem solid #b8b8b8;
  }
}

.o-digest--list__title a {
  color: #4b4948;
}

.o-digest--list__title a:hover {
  color: #4b4948;
}

.o-digest--list__date {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  font-weight: 600;
  color: #4b4948;
}

@media (min-width: 577px) {
  .o-digest--list__date {
    flex-direction: row;
    align-items: center;
  }
}

.o-digest--list__date dt {
  display: flex;
  align-items: center;
  justify-content: center;
  min-width: 8rem;
  height: 2.5rem;
  padding: 0 1rem;
  font-size: 1.4rem;
  border: 0.1rem solid #6c707a;
}

.o-digest--list__date dd {
  width: 100%;
  font-size: 1.4rem;
  font-weight: 600;
  color: #4b4948;
}

.o-digest--list__date dd audio {
  width: 100%;
}

.o-digest--list-location {
  padding-top: 1.4rem;
}

.o-digest--list-location .fa {
  margin-right: 0.8rem;
  font-size: 2rem;
  color: #008071;
}

.o-digest--list-location__label {
  color: #4b4948;
}

.o-digest--tile .o-digest--list-location {
  margin-top: 2rem;
  border-top: 0.1rem solid #e1e1e1;
}

.o-digest--list__sub-title {
  color: #4b4948;
}

.o-digest--list__description {
  line-height: 1.8;
  color: #4b4948;
}

.o-digest--list-favorite__box > div {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  height: 5rem;
  margin-left: 5rem;
}

.is-spot-detail .o-digest--list-favorite__box > div {
  height: 5rem;
  margin: 0;
}

@media (min-width: 577px) {
  .is-spot-detail .o-digest--list-favorite__box > div {
    align-items: center;
    height: 7rem;
    margin-left: 1rem;
  }
}

body:not(.ja) .is-spot-detail .o-digest--list-favorite__box > div {
  align-items: center;
  float: right;
  min-width: initial;
}

@media (min-width: 577px) {
  body:not(.ja) .is-spot-detail .o-digest--list-favorite__box > div {
    min-width: 13rem;
  }
}

body:not(.ja) .o-digest--list-favorite__box > div {
  min-width: 10rem;
}

.o-digest--jalan {
  padding: 0 2rem;
}

@media (min-width: 577px) {
  .o-digest--jalan {
    width: calc(100% - 4rem);
  }
}

@media (min-width: 1200px) {
  .o-digest--jalan {
    width: 100%;
    padding: 0;
  }
}

.o-digest--jalan__box {
  padding: 2rem;
  margin: 0 auto 4rem auto;
  border: 0.1rem solid #b8b8b8;
}

@media (min-width: 577px) {
  .o-digest--jalan__box {
    padding: 3.2rem;
    margin: 0 auto 8rem auto;
  }
}

.o-digest--jalan__heading {
  margin-bottom: 1rem;
  font-weight: 600;
  color: #1a1a1a;
}

.o-digest--jalan__heading-box {
  margin-bottom: 3.2rem;
}

.o-digest--jalan__heading__list {
  display: flex;
  margin-bottom: 3.2rem;
}

.o-digest--jalan__heading__list li {
  margin-right: 1rem;
}

.o-digest--jalan__heading__list li:last-child {
  margin-right: 0;
}

.o-digest--jalan__heading__list li .fa-star {
  color: #e8a500;
}

.o-digest--jalan__heading__list li .fa-comment {
  color: #ccc;
}

.o-digest--jalan__heading__tag-list {
  display: flex;
}

.o-digest--jalan__heading__tag-list li {
  padding: 0.5rem 1rem;
  margin-right: 1rem;
  border: 0.1rem solid #b8b8b8;
  border-radius: 0.6rem;
}

.o-digest--jalan__heading__tag-list li:last-child {
  margin-right: 0;
}

.o-digest--jalan__item {
  display: flex;
  padding: 1.5rem;
  margin-bottom: 1.5rem;
  background-color: #e6f5f5;
  border-radius: 0.8rem;
}

.o-digest--jalan__image {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.o-digest--jalan__image-thumbnail {
  width: 40%;
}

@media (min-width: 577px) {
  .o-digest--jalan__image-thumbnail {
    width: 20%;
  }
}

.o-digest--jalan__image-thumbnail > div {
  position: relative;
  padding-top: 66.3%;
  margin-right: 1.5rem;
}

.o-digest--jalan__info-box {
  width: calc(60% - 1.5rem);
}

@media (min-width: 577px) {
  .o-digest--jalan__info-box {
    width: calc(80% - 1.5rem);
  }
}

.o-digest--jalan__title {
  margin-bottom: 1rem;
}

.o-digest--jalan__title a {
  /* stylelint-disable */
  display: -webkit-box;
  width: 100%;
  overflow: hidden;
  color: #45a4ca;
  text-decoration: underline;
  /* autoprefixer: off */
  -webkit-box-orient: vertical;
  /* autoprefixer: on */
  -webkit-line-clamp: 4;
  /* stylelint-enable */
}

@media (min-width: 577px) {
  .o-digest--jalan__title a {
    -webkit-line-clamp: 1;
  }
}

.o-digest--hotpepper__item {
  padding-bottom: 2rem;
  margin-bottom: 3rem;
  border-bottom: 0.1rem solid #b8b8b8;
}

.o-digest--hotpepper__anchor {
  display: flex;
  flex-direction: column;
}

@media (min-width: 577px) {
  .o-digest--hotpepper__anchor {
    flex-direction: row;
  }
}

.o-digest--hotpepper__image {
  width: 100%;
  margin-bottom: 1.5rem;
  text-align: center;
}

@media (min-width: 577px) {
  .o-digest--hotpepper__image {
    width: 20%;
    margin: 0 2rem 0 0;
    text-align: left;
  }
}

.o-digest--hotpepper__info {
  width: 100%;
}

@media (min-width: 577px) {
  .o-digest--hotpepper__info {
    width: calc(80% - 2rem);
  }
}

.o-digest--hotpepper__title {
  margin-bottom: 2rem;
  font-weight: 600;
  color: #333;
}

.o-digest--hotpepper__description {
  margin-bottom: 1rem;
  color: #333;
}

.o-digest--hotpepper__description .fa {
  margin-right: 1rem;
  color: #999;
}

.o-digest--hotpepper__cate-list {
  display: flex;
  margin-top: 2rem;
}

.o-digest--hotpepper__cate-list li {
  padding: 0.5rem 1rem;
  margin: 0 1rem 0 0;
  font-weight: 600;
}

.o-digest--hotpepper__cate-list li:last-child {
  margin-right: 0;
}

.o-digest--hotpepper__cate-list li::after {
  display: none;
}

@media (min-width: 1024px) {
  .o-digest--map {
    width: calc(100% - 6rem);
    margin: 0 auto;
  }
}

@media (min-width: 1281px) {
  .o-digest--map {
    width: 100%;
  }
}

.o-digest--theme__list {
  display: flex;
  flex-wrap: wrap;
  width: 100%;
}

.o-digest--theme__item {
  width: calc(50% - (1rem / 2));
  margin: 0 1rem 3rem 0;
}

.o-digest--theme__item:nth-of-type(2n) {
  margin-right: 0;
}

@media (min-width: 1024px) {
  .o-digest--theme__item {
    width: calc(25% - (5.65rem / 5));
    margin-right: 1.5rem;
  }

  .o-digest--theme__item:nth-of-type(2n) {
    margin-right: 1.5rem;
  }

  .o-digest--theme__item:nth-of-type(3n) {
    margin-right: 1.5rem;
  }

  .o-digest--theme__item:nth-of-type(4n) {
    margin-right: 0;
  }
}

.o-digest--theme__anchor {
  display: block;
  width: 100%;
  height: 100%;
}

.o-digest--theme__thumbnail {
  position: relative;
  width: 100%;
  padding-top: 66.6%;
}

.o-digest--theme__image {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.o-digest--theme__title {
  font-size: 1.6rem;
  font-weight: 600;
  text-align: center;
}

@media (min-width: 1024px) {
  .o-digest--theme__title {
    font-size: 2rem;
  }
}

.o-digest__search-box {
  margin-right: auto;
  margin-left: auto;
  background-color: #fff;
}

@media (min-width: 577px) {
  .o-digest__search-box {
    position: relative;
    margin-top: -4.8rem;
  }
}

@media (min-width: 1200px) {
  .o-digest__search-box {
    max-width: 110rem;
  }
}

@media (min-width: 1281px) {
  .o-digest__search-box {
    max-width: 126rem;
  }
}

/* stylelint-disable */

_:-ms-lang(x)::-ms-backdrop,
.o-digest--tile__image-thumbnail {
  overflow: hidden;
}

_:-ms-lang(x)::-ms-backdrop,
.o-digest--tile__image {
  top: 50%;
  left: 50%;
  width: auto;
  height: 100%;
  transform: translate(-50%, -50%);
}

_:-ms-lang(x)::-ms-backdrop,
.o-digest--list__image-thumbnail {
  overflow: hidden;
}

_:-ms-lang(x)::-ms-backdrop,
.o-digest--list__image {
  top: 50%;
  left: 50%;
  width: auto;
  height: 100%;
  transform: translate(-50%, -50%);
}

_:-ms-lang(x)::-ms-backdrop,
.o-digest--tile__title {
  min-height: auto;
  padding-top: 1rem;
}

_:-ms-lang(x)::-ms-backdrop,
.o-digest--theme__thumbnail {
  overflow: hidden;
  background: #f5f5f5;
}

_:-ms-lang(x)::-ms-backdrop,
.o-digest--theme__image {
  top: 50%;
  left: 50%;
  width: auto;
  transform: translate(-50%, -50%);
}

/* stylelint-enable */

/* == 下層コンテンツ header-visual slick == */

.o-digest-slider__wrapper {
  position: relative;
  max-height: 420px;
}

.o-digest-slider__wrapper + .o-detail-contents__description {
  max-width: 1200px;
  margin: 0 auto;
  width: 100%;
  padding: 3rem 1rem 0;
  font-size: 18px;
  line-height: 1.6;
}

.o-digest-slider__wrapper .o-digest-slider-ttl {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translateY(-50%) translateX(-50%);
  -webkit-transform: translateY(-50%) translateX(-50%);
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
  height: auto;
  display: inline-block;
  z-index: 1;
  color: var(--white);
  font-size: 40px;
  font-weight: 600;
  letter-spacing: 0.7rem;
  margin: 0;
}

.o-digest-slider__wrapper .o-digest-slider-ttl.img-ttl-spot-w,
.o-digest-slider__wrapper .o-digest-slider-ttl.img-ttl-activity-event-w,
.o-digest-slider__wrapper .o-digest-slider-ttl.img-ttl-gourmet-w,
.o-digest-slider__wrapper .o-digest-slider-ttl.img-ttl-stay-w,
.o-digest-slider__wrapper .o-digest-slider-ttl.img-ttl-access-w,
.o-digest-slider__wrapper .o-digest-slider-ttl.img-ttl-service-w,
.o-digest-slider__wrapper .o-digest-slider-ttl.img-ttl-meet-w,
.o-digest-slider__wrapper .o-digest-slider-ttl.img-ttl-theme-w,
.o-digest-slider__wrapper .o-digest-slider-ttl.img-ttl-favorite-w,
.o-digest-slider__wrapper .o-digest-slider-ttl.img-ttl-feature-w,
.o-digest-slider__wrapper .o-digest-slider-ttl.img-ttl-course-w {
  flex-direction: column;
  gap: 22px;
  text-shadow: 0 0 10px rgba(0, 0, 0, 0.4);
}

.o-digest-slider__wrapper .o-digest-slider-ttl.img-ttl-spot-w::after,
.o-digest-slider__wrapper .o-digest-slider-ttl.img-ttl-activity-event-w::after,
.o-digest-slider__wrapper .o-digest-slider-ttl.img-ttl-gourmet-w::after,
.o-digest-slider__wrapper .o-digest-slider-ttl.img-ttl-stay-w::after,
.o-digest-slider__wrapper .o-digest-slider-ttl.img-ttl-access-w::after,
.o-digest-slider__wrapper .o-digest-slider-ttl.img-ttl-service-w::after,
.o-digest-slider__wrapper .o-digest-slider-ttl.img-ttl-meet-w::after,
.o-digest-slider__wrapper .o-digest-slider-ttl.img-ttl-theme-w::after,
.o-digest-slider__wrapper .o-digest-slider-ttl.img-ttl-favorite-w::after,
.o-digest-slider__wrapper .o-digest-slider-ttl.img-ttl-feature-w::after,
.o-digest-slider__wrapper .o-digest-slider-ttl.img-ttl-course-w::after {
  content: "";
  display: block;
  filter: drop-shadow(2px 2px 6px rgba(0, 0, 0, 0.6));
}

.o-digest-slider__wrapper .o-digest-slider-ttl.img-ttl-spot-w::after {
  width: auto;
  height: 46px;
  background: url(/images/front/contents/ttl-spot-w.svg) no-repeat center top;
  background-size: contain;
}

.o-digest-slider__wrapper .o-digest-slider-ttl.img-ttl-activity-event-w::after {
  width: auto;
  height: 58px;
  background: url(/images/front/contents/ttl-activity-event-w.svg) no-repeat center top;
  background-size: contain;
}

.o-digest-slider__wrapper .o-digest-slider-ttl.img-ttl-gourmet-w::after {
  width: auto;
  height: 46px;
  background: url(/images/front/contents/ttl-gourmet-w.svg) no-repeat center top;
  background-size: contain;
}

.o-digest-slider__wrapper .o-digest-slider-ttl.img-ttl-stay-w::after {
  width: auto;
  height: 46px;
  background: url(/images/front/contents/ttl-stay-w.svg) no-repeat center top;
  background-size: contain;
}

.o-digest-slider__wrapper .o-digest-slider-ttl.img-ttl-access-w::after {
  width: auto;
  height: 43px;
  background: url(/images/front/contents/ttl-access-w.svg) no-repeat center top;
  background-size: contain;
}

.o-digest-slider__wrapper .o-digest-slider-ttl.img-ttl-service-w::after {
  width: auto;
  height: 49px;
  background: url(/images/front/contents/ttl-service-w.svg) no-repeat center top;
  background-size: contain;
}

.o-digest-slider__wrapper .o-digest-slider-ttl.img-ttl-meet-w::after {
  width: auto;
  height: 43px;
  background: url(/images/front/contents/ttl-meet-w.svg) no-repeat center top;
  background-size: contain;
}

.o-digest-slider__wrapper .o-digest-slider-ttl.img-ttl-theme-w::after {
  width: auto;
  height: 43px;
  background: url(/images/front/contents/ttl-theme-w.svg) no-repeat center top;
  background-size: contain;
}

.o-digest-slider__wrapper .o-digest-slider-ttl.img-ttl-favorite-w::after {
  width: auto;
  height: 48px;
  background: url(/images/front/contents/ttl-favorite-w.svg) no-repeat center top;
  background-size: contain;
}

.o-digest-slider__wrapper .o-digest-slider-ttl.img-ttl-feature-w::after {
  width: auto;
  height: 49px;
  background: url(/images/front/contents/ttl-feature-w.svg) no-repeat center top;
  background-size: contain;
}

.o-digest-slider__wrapper .o-digest-slider-ttl.img-ttl-course-w::after {
  width: auto;
  height: 43px;
  background: url(/images/front/contents/ttl-course-w.svg) no-repeat center top;
  background-size: contain;
}

.o-digest-slider__wrapper .slick-slide img {
  max-height: 420px;
}

.o-digest-slider__wrapper .slick-content {
  position: absolute;
  bottom: 24px;
  right: 81px;
  z-index: 2;
}

.o-digest-slider__wrapper .slick-content-copy {
  color: var(--white);
  font-size: 14px;
  margin: 0;
}

.o-digest-slider__wrapper .slick-dots {
  bottom: 24px;
  z-index: 2;
}

.o-digest-slider__wrapper.no-img-ttl {
  background: var(--footer-blue);
  width: 100%;
  height: 176px;
}

.o-digest-slider__wrapper.no-img-ttl::before {
  content: "";
  position: absolute;
  width: 100%;
  height: 176px;
  background: url(/images/front/back-image-f01.png) no-repeat center 17%;
  opacity: 0.2;
}

.o-digest-slider__wrapper.no-img-ttl .o-digest-slider-ttl {
  margin: 0;
  position: relative;
  color: var(--white);
  display: flex;
  justify-content: center;
  align-items: center;
  height: 100%;
}

@media (max-width: 1024px) {
  .o-digest-slider__wrapper,
  .o-digest-slider__wrapper .slick-slide img {
    max-height: 300px;
  }
}

@media (max-width: 520px) {
  .o-digest-slider__wrapper,
  .o-digest-slider__wrapper .slick-slide img {
    max-height: 420px;
  }

  .o-digest-slider__wrapper .o-digest-slider-ttl {
    font-size: 26px;
  }
}

.o-documents__main-title {
  position: relative;
  font-weight: 600;
  color: #fff;
}

.o-documents__main-title-box {
  display: flex;
  align-items: center;
  width: 100%;
  height: 5.6rem;
  padding-left: 2.2rem;
  background-color: #008071;
}

.o-documents__sub-title {
  position: relative;
  display: flex;
  align-items: center;
  height: 100%;
  font-weight: 600;
  color: #008071;
}

.o-documents__sub-title-box {
  display: flex;
  align-items: center;
  width: 100%;
  padding-left: 1.5rem;
  border-left: 0.1rem solid #008071;
}

.o-documents__info-box {
  display: flex;
  flex-direction: column;
  padding: 1.6rem 0;
  border-top: 0.1rem solid #e1e1e1;
}

.o-documents__info-box:last-child {
  border-bottom: 0.1rem solid #e1e1e1;
}

@media (min-width: 577px) {
  .o-documents__info-box {
    flex-direction: row;
    justify-content: space-between;
    padding: 3rem 0;
  }
}

.o-documents__info-left {
  width: 100%;
}

@media (min-width: 1024px) {
  .o-documents__info-left {
    width: calc(100% - 25rem);
  }
}

.o-documents__info-right {
  width: 100%;
  margin: 2rem auto;
}

@media (min-width: 577px) {
  .o-documents__info-right {
    width: 70%;
    margin: 0 0 0 5rem;
  }
}

@media (min-width: 1024px) {
  .o-documents__info-right {
    width: 25rem;
  }
}

.o-documents__info-right .o-button {
  width: 100%;
  max-width: initial;
  height: 4rem;
  min-height: initial;
  padding-right: 0;
  padding-left: 0;
  border-width: 0.1rem !important;
}

.o-documents-name {
  font-weight: 600;
  color: #4d4d4d;
}

.o-documents__description {
  line-height: 1.7;
  color: #333;
}

.o-documents-anchor__button {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 1.5rem;
  border: 0.1rem solid #000;
}

.o-documents-dl-button {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  padding-top: 1rem;
  padding-bottom: 1rem;
  border: 0.1rem solid #6c707a;
  border-radius: 0.6rem;
}

.o-documents__button-box {
  background: linear-gradient(to right, #f2e8e6 0%, #dbf2f1 100%);
  padding: 2rem 2rem 0.4rem 2rem;
}

@media (min-width: 577px) {
  .o-documents__button-box {
    padding: 3.2rem 4rem 1.6rem 4rem;
  }
}

@media (min-width: 1024px) {
  .o-drawer-nav {
    position: static;
    filter: none;
  }
}

.o-drawer-nav__box {
  position: fixed;
  top: 0;
  right: -0.5rem;
  z-index: 100;
  width: 100vw;
  height: 100vh;
  height: calc(var(--vh, 1vh) * 100);
  overflow-y: auto;
  background: #fff;
  transition: transform 250ms ease-in-out;
  transform: translateX(100vw);
}

@media (min-width: 577px) {
  .o-drawer-nav__box {
    width: 37.5rem;
    height: 100vh;
    height: calc(var(--vh, 1vh) * 100);
    border-left: 0.1rem solid #e6e6e6;
    transform: translateX(37.5rem);
  }
}

.o-drawer-nav__box > img {
  display: block;
  width: 19.8rem;
  margin: 1.6rem auto 3.2rem 2rem;
}

.o-drawer-nav__list {
  display: flex;
  flex-wrap: wrap;
  padding: 1.6rem;
  background: #fff;
}

.o-drawer-nav__list.is-dynamic {
  background: #008071;
}

.o-drawer-nav__list.is-dynamic .o-drawer-nav__item {
  width: 100%;
  margin: 0;
}

.o-drawer-nav__list.is-dynamic .o-drawer-nav__anchor {
  color: #fff;
}

.o-drawer-nav__list.is-dynamic .o-drawer-nav__anchor:hover {
  color: #fff;
}

.o-drawer-nav__list.is-other-menu {
  display: flex;
  flex-wrap: wrap;
  background: #fff;
}

.o-drawer-nav--footer .o-drawer-nav__list {
  background: transparent;
}

.o-drawer-nav__item {
  width: calc((100% / 2) - (((2 - 1) * 1.6rem) / 2));
  margin: 0 1.6rem 0 0;
  position: relative;
  display: flex;
  align-items: center;
}

.o-drawer-nav__item:nth-of-type(2n) {
  margin-right: 0;
}

@media (min-width: 577px) {
  .o-drawer-nav__item {
    width: calc((100% / 2) - (((2 - 1) * 1.6rem) / 2));
    margin: 0 1.6rem 0 0;
  }

  .o-drawer-nav__item:nth-of-type(2n) {
    margin-right: 1.6rem;
  }

  .o-drawer-nav__item:nth-of-type(2n) {
    margin-right: 0;
  }
}

.o-drawer-nav__anchor {
  color: #008071;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  width: 100%;
  padding: 1.4rem 0 1.4rem 2.4rem;
  font-weight: 600;
  text-align: left;
}

.o-drawer-nav__anchor:hover {
  color: #008071;
}

.is-other-menu .o-drawer-nav__anchor {
  color: #1a1a1a;
  font-weight: normal;
}

.is-other-menu .o-drawer-nav__anchor:hover {
  color: #1a1a1a;
}

.o-drawer-nav--footer .o-drawer-nav__anchor {
  color: #1a1a1a;
  padding-left: 1.4rem;
  font-weight: normal;
}

.o-drawer-nav--footer .o-drawer-nav__anchor:hover {
  color: #1a1a1a;
}

body.ko .o-drawer-nav__anchor {
  white-space: nowrap;
}

.o-drawer-nav__title {
  position: relative;
  display: flex;
  align-items: center;
  height: 6.4rem;
  padding: 2rem 0 2rem 2.4rem;
  color: #fff;
  border-bottom: 0.1rem solid #dbdbdb;
  /* stylelint-disable */
  /* stylelint-enable */
}

.o-drawer-nav__title::after {
  position: absolute;
  top: 50%;
  right: 1rem;
  display: block;
  width: 1.4rem;
  height: 1.4rem;
  content: "";
  transform: translateY(-50%) rotate(-90deg);
}

.o-drawer-nav__title[aria-expanded=false]::after {
  transform: translateY(-50%) rotate(90deg);
}

.o-drawer-nav__title img {
  width: 1.6rem;
}

.o-drawer-nav--language {
  padding: 0 1.6rem;
  color: #fff;
  background-color: #008071;
}

.o-drawer-nav--language-box {
  display: flex;
  flex-wrap: wrap;
}

.o-drawer-nav--language-box .dropdown-item {
  width: calc((100% / 2) - (((2 - 1) * 1.7rem) / 2));
  margin: 0 1.7rem 0 0;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  width: 100%;
  padding: 2rem 0 2rem 2.4rem;
  color: #fff;
  text-align: left;
  border-bottom: 0.1rem solid #dbdbdb;
}

.o-drawer-nav--language-box .dropdown-item:nth-of-type(2n) {
  margin-right: 0;
}

@media (min-width: 577px) {
  .o-drawer-nav--language-box .dropdown-item {
    width: calc((100% / 2) - (((2 - 1) * 1.7rem) / 2));
    margin: 0 1.7rem 0 0;
  }

  .o-drawer-nav--language-box .dropdown-item:nth-of-type(2n) {
    margin-right: 1.7rem;
  }

  .o-drawer-nav--language-box .dropdown-item:nth-of-type(2n) {
    margin-right: 0;
  }
}

.o-drawer-nav--language-box .dropdown-item:nth-of-type(2n) {
  margin-right: 0;
}

.o-drawer-nav--language-box .dropdown-item:nth-last-of-type(1) {
  border-bottom: none;
}

.o-drawer-nav--language-box .dropdown-item:hover {
  background-color: transparent;
}

.o-drawer-nav__toggle {
  position: absolute;
  top: 3rem;
  left: 50%;
  z-index: 101;
  width: 3rem;
  height: auto;
  cursor: pointer;
  transition: all 0.3s;
  transform: translateX(-50%);
}

@media (min-width: 577px) {
  .o-drawer-nav__toggle {
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
  }
}

.o-drawer-nav__toggle::after {
  display: block;
  margin-top: 0.3rem;
  font-size: 0.7rem;
  font-weight: 600;
  text-align: center;
  content: "";
}

.o-drawer-nav__toggle--spinner {
  position: absolute;
  width: 100%;
  height: 0.2rem;
  background-color: #008071;
  transition: all 0.3s;
}

.type-lower .o-drawer-nav__toggle--spinner {
  background-color: #008071;
}

.o-drawer-nav__toggle .horizontal {
  position: relative;
  margin-top: 0.4rem;
  transition: all 0.3s;
}

.o-drawer-nav__toggle .diagonal.part-1 {
  position: relative;
  transition: all 0.3s;
}

.o-drawer-nav__toggle .diagonal.part-2 {
  position: relative;
  margin-top: 0.4rem;
  transition: all 0.3s;
}

.o-drawer-nav__footer {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 2rem 0;
  margin-bottom: 2rem;
  text-align: center;
  background: #6c707a;
}

.o-drawer-nav__footer img {
  width: 100%;
  max-width: 13rem;
}

.o-drawer-nav__footer small {
  color: #fff;
}

.o-drawer-nav.type-spn {
  position: absolute;
  top: 0;
  right: 0;
  z-index: 100;
  display: block;
  width: 7.4rem;
  height: 7.4rem;
  background-color: #fff;
}

@media (min-width: 769px) {
  .o-drawer-nav.type-spn {
    display: none;
  }
}

.o-drawer-nav.type-spn.type-lower {
  display: block;
}

@media (min-width: 767px) and (max-width: 1023px) {
  .o-drawer-nav.type-spn.type-lower {
    position: absolute;
    top: 0;
    right: 0;
  }
}

@media (min-width: 769px) {
  .o-drawer-nav.type-spn.type-lower {
    display: none;
  }
}

.o-drawer-nav__section-title {
  position: relative;
  width: calc(100% - 4rem);
  padding: 0 0 1.6rem 0;
  margin: 0 auto;
  font-weight: 600;
  text-align: left;
  border-bottom: 0.1rem solid #b8b8b8;
}

.o-drawer-nav__section-title::before {
  position: absolute;
  bottom: -0.1rem;
  z-index: 2;
  display: block;
  width: 4rem;
  height: 0.1rem;
  content: "";
  background-color: #5d1d4f;
}

.o-drawer-nav--footer {
  position: relative;
  background: #ebebeb url("/images/front/common-background-pattern-gray.svg") repeat left top;
  background-size: 20rem 20.8rem;
}

.o-drawer-nav--footer::before {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 0;
  content: "";
  background: linear-gradient(to bottom, #f0f3f3 0%, rgba(240, 243, 243, 0) 100%);
}

.open-drawer-menu {
  display: none;
  transition: all 0.3s;
}

.open-drawer-menu:checked ~ .o-drawer-nav {
  position: fixed;
  top: 0;
  right: 0;
  z-index: 1000;
  display: block;
  width: 6rem;
  height: 6rem;
}

.open-drawer-menu:checked ~ .o-drawer-nav #sidebarMenu {
  right: 0;
  transform: translateX(0);
}

.open-drawer-menu:checked ~ .o-drawer-nav .o-drawer-nav__toggle {
  top: 1.6rem;
  right: 2rem;
}

.open-drawer-menu:checked ~ .o-drawer-nav .o-drawer-nav__toggle .o-drawer-nav__toggle--spinner {
  background: #008071;
}

.open-drawer-menu:checked ~ .o-drawer-nav .o-drawer-nav__toggle > .horizontal {
  opacity: 0;
  transition: all 0.3s;
}

.open-drawer-menu:checked ~ .o-drawer-nav .o-drawer-nav__toggle > .diagonal.part-1 {
  margin-top: 2.4rem;
  transition: all 0.3s;
  transform: rotate(135deg);
}

.open-drawer-menu:checked ~ .o-drawer-nav .o-drawer-nav__toggle > .diagonal.part-2 {
  margin-top: -0.7rem;
  transition: all 0.3s;
  transform: rotate(-135deg);
}

.o-emergency__box + .l-header .o-drawer-nav__box {
  top: 16.4rem;
}

@media (min-width: 1024px) {
  .o-emergency__box + .l-header .o-drawer-nav__box {
    top: 14.3rem;
  }
}

.o-emergency__box {
  position: relative;
  z-index: 10;
  width: 100%;
  background-color: #cc4c40;
}

@media (min-width: 1024px) {
  .o-emergency__box {
    z-index: 11;
    min-width: 40rem;
    border-bottom: none;
  }
}

.o-emergency__box + .l-header__wrapper {
  top: initial;
}

.o-emergency__anchor {
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 2rem 3rem;
  font-size: 1.6rem;
  font-weight: 600;
}

.o-emergency__anchor:hover {
  color: #fff;
}

.o-emergency__anchor img {
  width: 2.4rem;
  height: 2.4rem;
  margin-right: 2rem;
}

.o-favorite {
  margin-bottom: 6rem;
  overflow: hidden;
}

.o-favorite__title {
  position: relative;
  display: flex;
  align-items: cneter;
  justify-content: center;
}

.o-favorite__title-box {
  padding: 4rem 0 5rem 0;
}

@media (min-width: 577px) {
  .o-favorite__title-box {
    padding: 6rem 0 3.5rem 0;
  }
}

.o-favorite__image {
  width: 100%;
  max-width: 70.8rem;
}

.o-favorite__image--bg1 {
  position: absolute;
  top: 12vw;
  left: 1rem;
  width: 9.7rem;
}

@media (min-width: 577px) {
  .o-favorite__image--bg1 {
    position: static;
    width: auto;
  }
}

.o-favorite__image--title1 {
  max-width: 27rem;
}

@media (min-width: 577px) {
  .o-favorite__image--title1 {
    position: static;
    width: 100%;
    max-width: 54rem;
    margin: 4rem 1.5rem 0 1.5rem;
  }
}

.o-favorite__image--title2 {
  position: absolute;
  top: 12vw;
  right: 17%;
  max-width: 7.5rem;
}

@media (min-width: 577px) {
  .o-favorite__image--title2 {
    position: static;
    width: 100%;
    max-width: 10rem;
    margin-right: 1rem;
  }
}

@media (min-width: 769px) {
  .o-favorite__image--title2 {
    max-width: 15rem;
  }
}

.o-favorite__image--bg2 {
  position: absolute;
  top: 1rem;
  right: -2rem;
  width: 7.2rem;
}

@media (min-width: 577px) {
  .o-favorite__image--bg2 {
    position: static;
    width: auto;
  }
}

.o-favorite__item {
  padding: 0 2rem;
}

@media (min-width: 577px) {
  .o-favorite__item {
    padding: 0 0.9rem;
  }
}

.o-favorite__anchor {
  position: relative;
  display: block;
}

.o-favorite__caption {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  padding: 1.5rem 2rem;
  font-size: 1.4rem;
  font-weight: 600;
  color: #fff;
  text-align: center;
  background: linear-gradient(to bottom, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.5) 40%, rgba(0, 0, 0, 0.5) 100%);
}

@media (min-width: 577px) {
  .o-favorite__caption {
    font-size: 1.3rem;
  }
}

.o-favorite .slick-slider .slick-list {
  padding: 0 !important;
}

.o-favorite .slick-prev {
  left: 0;
  z-index: 100;
  width: 3rem;
  height: 3rem;
}

.o-favorite .slick-prev::before {
  display: block;
  width: 100%;
  height: 100%;
  content: "";
  background: url("/images/front/main/favorite-slider-prev.svg") no-repeat center center/contain;
}

.o-favorite .slick-next {
  right: 0;
  z-index: 100;
  width: 3rem;
  height: 3rem;
}

.o-favorite .slick-next::before {
  display: block;
  width: 100%;
  height: 100%;
  content: "";
  background: url("/images/front/main/favorite-slider-next.svg") no-repeat center center/contain;
}

.o-favorite__slider-list .slick-prev {
  left: 18%;
  z-index: 10;
  width: 4rem;
  height: 4rem;
  margin-left: -2rem;
}

.o-favorite__slider-list .slick-prev::before {
  display: block;
  width: 4rem;
  height: 4rem;
  content: "";
  background: url("/images/front/favorite/favorite-slider-prev.svg") no-repeat center center/contain;
  opacity: 1;
}

@media (min-width: 577px) {
  .o-favorite__slider-list .slick-prev {
    width: 5.8rem;
    height: 5.8rem;
    margin-left: -2.9rem;
  }

  .o-favorite__slider-list .slick-prev::before {
    width: 5.8rem;
    height: 5.8rem;
  }
}

.o-favorite__slider-list .slick-next {
  right: 18%;
  z-index: 10;
  width: 4rem;
  height: 4rem;
  margin-right: -2rem;
}

.o-favorite__slider-list .slick-next::before {
  display: block;
  width: 4rem;
  height: 4rem;
  content: "";
  background: url("/images/front/favorite/favorite-slider-next.svg") no-repeat center center/contain;
  opacity: 1;
}

@media (min-width: 577px) {
  .o-favorite__slider-list .slick-next {
    width: 5.8rem;
    height: 5.8rem;
    margin-right: -2.9rem;
  }

  .o-favorite__slider-list .slick-next::before {
    width: 5.8rem;
    height: 5.8rem;
  }
}

.o-favorite__slider-item {
  padding: 0 0.45rem;
}

.o-favorite__slider-anchor {
  position: relative;
  display: block;
}

.o-favorite__slider-caption {
  color: #fff;
  text-align: left;
}

.o-favorite__slider-caption-box {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  min-height: 5rem;
  padding: 1.5rem 3rem;
  background: rgba(0, 0, 0, 0.4);
}

.o-favorite__slider-caption-box:empty {
  display: none;
}

.o-favorite--digest__title {
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 100%;
  padding-bottom: 1.2rem;
  border-bottom: 0.1rem solid #008071;
}

@media (min-width: 577px) {
  .o-favorite--digest__title {
    flex-direction: row;
    padding-bottom: 2.4rem;
  }
}

.o-favorite--digest__title h3 {
  display: flex;
  font-size: 2.8rem;
  color: #008071;
}

@media (min-width: 577px) {
  .o-favorite--digest__title h3 {
    font-size: 3.2rem;
  }
}

.o-favorite--digest__title h3.u-font-size32 {
  font-size: 6.68vw !important;
}

@media (min-width: 577px) {
  .o-favorite--digest__title h3.u-font-size32 {
    font-size: 3.75vw !important;
  }
}

@media (min-width: 577px) {
  .o-favorite--digest__title h3.u-font-size32 {
    font-size: 3.2rem !important;
  }
}

.o-favorite--digest__title img {
  width: 4.8rem;
  margin: 0 0 2rem 0;
}

@media (min-width: 577px) {
  .o-favorite--digest__title img {
    margin: 0 4rem 0 0;
  }
}

.o-favorite--digest__title img.is-small {
  width: 1.8rem;
}

.is-blog-detail .o-favorite--digest__title img.is-small {
  margin: 0;
}

.is-blog-detail .o-favorite--digest__title {
  flex-direction: row;
}

.o-favorite--digest__article-title {
  font-size: 2.1rem;
}

@media (min-width: 1024px) {
  .o-favorite--digest__article-title {
    padding: 0 1.5rem;
  }
}

.is-writer-list .o-favorite--digest__article-title {
  padding: 0;
  font-size: 1.8rem;
  text-align: center;
}

.is-writer-detail .o-favorite--digest__article-title {
  min-height: initial;
  color: #008071;
  text-align: left;
}

.o-favorite--digest__article-box {
  width: calc((100% / 2) - (((2 - 1) * 2.5rem) / 2));
  margin: 0 2.5rem 4rem 0;
}

.o-favorite--digest__article-box:nth-of-type(2n) {
  margin-right: 0;
}

@media (min-width: 577px) {
  .o-favorite--digest__article-box {
    width: calc((100% / 3) - (((3 - 1) * 5rem) / 3));
    margin: 0 5rem 8rem 0;
  }

  .o-favorite--digest__article-box:nth-of-type(2n) {
    margin-right: 5rem;
  }

  .o-favorite--digest__article-box:nth-of-type(3n) {
    margin-right: 0;
  }
}

.is-writer-list .o-favorite--digest__article-box {
  display: flex;
  flex-direction: column;
  width: 100%;
  padding: 2rem 0;
}

@media (min-width: 577px) {
  .is-writer-list .o-favorite--digest__article-box {
    flex-direction: row;
    align-items: flex-start;
    padding: 4rem 0 4rem 3rem;
    margin-bottom: 0;
    border-bottom: 0.1rem solid #e1e1e1;
  }
}

.is-writer-detail .o-favorite--digest__article-box {
  padding: 0;
  margin: 0 0 3.2rem 0;
  border-bottom-color: #008071;
}

@media (min-width: 577px) {
  .is-writer-detail .o-favorite--digest__article-box {
    padding: 0 0 8rem 0;
    margin: 0 0 6.4rem 0;
  }
}

.o-favorite--digest__article-box--left {
  width: 100%;
  margin: 0 0 2.4rem 0;
  overflow: hidden;
  border-radius: 0.6rem;
}

.is-writer-list .o-favorite--digest__article-box--left {
  width: 80%;
  margin: 0 auto 3.2rem auto;
}

@media (min-width: 577px) {
  .is-writer-list .o-favorite--digest__article-box--left {
    width: 26%;
    margin: 0 3.2rem 0 0;
  }
}

.is-writer-detail .o-favorite--digest__article-box--left {
  width: 100%;
  margin: 0 0 3.2rem 0;
}

@media (min-width: 577px) {
  .is-writer-detail .o-favorite--digest__article-box--left {
    width: 42%;
    margin: 0 4.8rem 0 0;
  }
}

.o-favorite--digest__article-box--right {
  display: flex;
  width: 100%;
}

.o-favorite--digest__article-box--right > a:not(.o-button) {
  display: block;
  width: 100%;
}

.is-writer-list .o-favorite--digest__article-box--right {
  display: block;
  width: 100%;
}

@media (min-width: 577px) {
  .is-writer-list .o-favorite--digest__article-box--right {
    width: calc(74% - 3.2rem);
  }
}

.is-writer-detail .o-favorite--digest__article-box--right {
  width: 100%;
}

@media (min-width: 577px) {
  .is-writer-detail .o-favorite--digest__article-box--right {
    width: calc(58% - 4.8rem);
  }
}

.o-favorite--digest__article-info-box {
  position: relative;
}

@media (min-width: 769px) {
  .o-favorite--digest__article-info-box {
    padding: 0 1.5rem;
  }

  .is-writer-detail .o-favorite--digest__article-info-box {
    padding: 0;
  }
}

.o-favorite--digest__article-info-box--bottom {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}

@media (min-width: 769px) {
  .o-favorite--digest__article-info-box--bottom {
    flex-direction: row;
    padding: 0 1.5rem;
  }

  .is-writer-detail .o-favorite--digest__article-info-box--bottom {
    padding: 0;
  }
}

.o-favorite--detail__article-info-box {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  min-height: 3rem;
}

@media (min-width: 577px) {
  .o-favorite--detail__article-info-box {
    flex-direction: row;
    align-items: center;
  }
}

.o-favorite--detail__title {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  margin: 0 0 2rem 0;
  color: #008071;
}

@media (min-width: 577px) {
  .o-favorite--detail__title {
    flex-direction: row;
    margin: 0 0 4rem 0;
  }
}

.o-favorite--detail__title img {
  width: 4.8rem;
  height: 4.8rem;
  margin: 0 0 1.5rem 0 !important;
}

@media (min-width: 577px) {
  .o-favorite--detail__title img {
    margin: 0 4rem 0 0 !important;
  }
}

.o-favorite--detail__title.u-font-size32 {
  font-size: 5.68vw !important;
}

@media (min-width: 577px) {
  .o-favorite--detail__title.u-font-size32 {
    font-size: 3.75vw !important;
  }
}

@media (min-width: 1024px) {
  .o-favorite--detail__title.u-font-size32 {
    font-size: 3.2rem !important;
  }
}

.o-favorite__article {
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
}

@media (min-width: 577px) {
  .o-favorite__article {
    flex-direction: row;
  }
}

.o-favorite__article-full {
  display: flex;
  flex-wrap: wrap;
  width: 100%;
}

.o-favorite__article-main {
  order: 1;
  width: 100%;
}

@media (min-width: 577px) {
  .o-favorite__article-main {
    width: calc(68%);
  }
}

.o-favorite__article-aside {
  order: 3;
  width: 100%;
  margin-bottom: 6rem;
}

@media (min-width: 577px) {
  .o-favorite__article-aside {
    width: calc(32% - 4rem);
    margin-bottom: 8rem;
    margin-left: 4rem;
  }
}

@media (min-width: 1281px) {
  .o-favorite__article-aside {
    width: calc(32% - 8rem);
    margin-left: 8rem;
  }
}

.o-favorite__article--date {
  padding: 0 0 1rem 0;
  color: #008071;
}

@media (min-width: 577px) {
  .o-favorite__article--date {
    padding: 0;
  }
}

.o-favorite__article--writer {
  display: block;
  width: 100%;
  padding: 0 0 1rem 0;
}

@media (min-width: 577px) {
  .o-favorite__article--writer {
    width: auto;
    padding: 0;
  }
}

.is-writer-detail .o-favorite__article--writer {
  color: #008071;
}

.o-favorite--detail__article-info-box .o-favorite__article--writer {
  display: flex;
  align-items: center;
  color: #008071;
}

.o-favorite--detail__article-info-box .o-favorite__article--writer span {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0.5rem 1rem;
  color: #008071;
  border: 0.1rem solid #008071;
  border-radius: 0.4rem;
}

.o-favorite__article--views {
  display: flex;
  align-items: center;
  color: #008071;
}

@media (min-width: 577px) {
  .o-favorite__article--views {
    margin: 0 0 0 2rem;
  }
}

.o-favorite__article--views img {
  width: 1.4rem;
}

.o-favorite__article__detail-button {
  color: #008071;
  padding: 1rem 2rem;
  margin: 0 auto;
}

.o-favorite__article__detail-button:hover {
  color: #008071;
}

@media (min-width: 577px) {
  .o-favorite__article__detail-button {
    margin: 0;
  }
}

.o-favorite__article__detail-button::after {
  position: absolute;
  top: 50%;
  right: 1.5rem;
  display: block;
  width: 1.5rem;
  height: 1.5rem;
  content: "";
  background: url("/images/front/common/button-arrow.svg") no-repeat center center;
  transform: translateY(-50%);
}

.o-favorite__article__more-button {
  color: #008071;
  width: initial;
  min-height: 4.8rem;
  padding: 0 2rem;
  margin: 0 auto;
}

.o-favorite__article__more-button:hover {
  color: #008071;
}

.o-favorite__article__more-button::after {
  position: absolute;
  top: 50%;
  right: 1.5rem;
  display: block;
  width: 1.5rem;
  height: 1.5rem;
  content: "";
  background: url("/images/front/common/button-arrow.svg") no-repeat center center;
  transform: translateY(-50%);
}

.o-favorite--ranking__list {
  display: flex;
  flex-wrap: wrap;
}

.o-favorite--ranking__list li {
  position: relative;
  width: 100%;
  margin: 0 0 2.5rem 0;
}

.o-favorite--ranking__list li::before {
  font-family: kinuta-maruminold-stdn, serif;
  font-style: normal;
  font-weight: 400;
  position: absolute;
  top: 50%;
  left: 0.5rem;
  z-index: 10;
  display: block;
  font-size: 2.4rem;
  color: #008071;
  transform: translateY(-50%);
}

.o-favorite--ranking__list li:nth-of-type(1)::before {
  content: "1";
}

.o-favorite--ranking__list li:nth-of-type(2)::before {
  content: "2";
}

.o-favorite--ranking__list li:nth-of-type(3)::before {
  content: "3";
}

.o-favorite--ranking__list li:nth-of-type(4)::before {
  content: "4";
}

.o-favorite--ranking__list li:nth-of-type(5)::before {
  content: "5";
}

.o-favorite--ranking__item {
  display: flex;
  padding-left: 3.5rem;
}

@media (min-width: 577px) {
  .o-favorite--ranking__item {
    width: 100%;
  }
}

.o-favorite--ranking__image {
  width: calc(44% - 1rem);
  margin-right: 1rem;
  overflow: hidden;
  border-radius: 0.6rem;
}

.o-favorite--ranking__description {
  width: 56%;
}

.o-favorite--label__list {
  display: flex;
  flex-wrap: wrap;
}

.o-favorite--label__item {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 2.5rem;
  margin: 0 0.7rem 0.6rem 0;
  border: 0.1rem solid #008071;
  border-radius: 0.3rem;
}

.o-favorite--label__item.is-favorite-detail {
  width: auto !important;
  min-width: 9rem;
  margin: 0 0.7rem 0.6rem 0 !important;
}

.o-favorite--label__item.is-favorite-detail .o-favorite--label__anchor {
  padding: 0.2rem 1rem;
}

.o-favorite--label__anchor {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  padding: 0.2rem 2rem;
  color: #008071;
  text-align: center;
}

.o-favorite--label__anchor:hover {
  color: #fff;
  opacity: 1;
}

.o-favorite--label__anchor.is-tag-list:hover {
  background: #008071;
}

.o-favorite--label__anchor.is-theme-list:hover {
  background: #008071;
}

.o-favorite--label__anchor.is-area-list:hover {
  background: #008071;
}

.o-favorite--writer__item {
  display: flex;
  align-items: flex-start;
  margin-bottom: 3rem;
}

.o-favorite--writer__image {
  width: calc(34% - 1rem);
  overflow: hidden;
  border-radius: 100%;
}

.o-favorite--writer__image + div {
  width: 66%;
  margin-left: 1rem;
}

.o-favorite--writer__name {
  color: #008071;
}

.o-favorite--writer__button {
  color: #008071;
  width: 100%;
  max-width: 20rem;
  min-height: 4rem;
  padding: 0.5rem 2rem;
  margin: 0 auto;
  border-radius: 0.6rem;
}

.o-favorite--writer__button:hover {
  color: #008071;
}

.o-favorite--writer-intro {
  position: relative;
  width: 100%;
  padding: 8rem 0;
  background: linear-gradient(to right, #f2e8e6 0%, #dbf2f1 100%);
}

.o-favorite--writer-intro::before {
  position: absolute;
  top: -3.2rem;
  left: 0;
  width: 100%;
  height: 3.2rem;
  content: "";
  background: url("/images/front/common/wave-line-reverse.svg"), linear-gradient(to right, #f2e8e6 0%, #dbf2f1 100%) repeat-x left center/contain;
  transform: rotate(180deg) scale(-1, 1);
}

.o-favorite--writer-intro__title {
  font-weight: bold;
  color: #008071;
  text-align: center;
}

.o-favorite--writer-intro__title-box {
  position: relative;
  padding: 0 0 2.4rem 0;
  margin: 0 0 4.8rem;
  border-bottom: 0.2rem solid #008071;
}

.o-favorite--writer-intro__list {
  padding: 0 4rem;
}

.o-favorite--writer-intro__list .slick-next,
.o-favorite--writer-intro__list .slick-prev {
  top: 16%;
  width: 3.2rem;
  height: 3.2rem;
  transform: none;
}

.o-favorite--writer-intro__list .slick-next::before,
.o-favorite--writer-intro__list .slick-prev::before {
  display: block;
  width: 3.2rem;
  height: 3.2rem;
  content: "";
  background: url("/images/front/common/button-arrow.svg") no-repeat center center;
}

.o-favorite--writer-intro__list .slick-next {
  right: 2rem;
}

@media (min-width: 1024px) {
  .o-favorite--writer-intro__list .slick-next {
    right: 0;
  }
}

.o-favorite--writer-intro__list .slick-prev {
  left: 2rem;
}

@media (min-width: 1024px) {
  .o-favorite--writer-intro__list .slick-prev {
    left: 0;
  }
}

.o-favorite--writer-intro__list .slick-prev::before {
  transform: rotate(180deg);
}

.o-favorite--writer-intro__item {
  padding: 0 4rem;
}

.o-favorite--writer-intro__name {
  font-weight: 600;
  text-align: center;
}

.o-favorite--writer-intro__text {
  line-height: 1.7;
}

.o-favorite__related-article {
  order: 2;
}

@media (min-width: 577px) {
  .o-favorite__related-article {
    order: 3;
  }
}

.o-favorite__recommend-list .slick-prev,
.o-favorite__recommend-list .slick-next {
  top: 27%;
  width: 3.5rem;
  height: 3.5rem;
}

@media (min-width: 577px) {
  .o-favorite__recommend-list .slick-prev,
  .o-favorite__recommend-list .slick-next {
    top: 37%;
    width: 4.8rem;
    height: 4.8rem;
  }
}

.o-favorite__recommend-list .slick-prev::before,
.o-favorite__recommend-list .slick-prev::after,
.o-favorite__recommend-list .slick-next::before,
.o-favorite__recommend-list .slick-next::after {
  display: block;
  width: 3.5rem;
  height: 3.5rem;
  content: "";
  background-size: auto 100%;
  opacity: 1;
}

@media (min-width: 577px) {
  .o-favorite__recommend-list .slick-prev::before,
  .o-favorite__recommend-list .slick-prev::after,
  .o-favorite__recommend-list .slick-next::before,
  .o-favorite__recommend-list .slick-next::after {
    width: 4.8rem;
    height: 4.8rem;
  }
}

.o-favorite__recommend-list .slick-next {
  right: 0;
}

@media (min-width: 1281px) {
  .o-favorite__recommend-list .slick-next {
    right: -6.9rem;
  }
}

.o-favorite__recommend-list .slick-next::before {
  background: url("/images/front/detail/slide-right.svg") no-repeat;
}

.o-favorite__recommend-list .slick-prev {
  left: 0;
  z-index: 1;
}

@media (min-width: 1281px) {
  .o-favorite__recommend-list .slick-prev {
    left: -6.9rem;
  }
}

.o-favorite__recommend-list .slick-prev::before {
  background: url("/images/front/detail/slide-left.svg") no-repeat;
}

.o-favorite__recommend-item {
  padding: 0 2rem;
}

/* stylelint-disable */

_:-ms-lang(x)::-ms-backdrop,
.o-favorite__image--title1,
_:-ms-lang(x)::-ms-backdrop,
.o-favorite__image--title2 {
  width: auto;
}

/* stylelint-enable */

/* == 下層コンテンツ 特集一覧 スポット一覧 == */

.o-feature {
  margin-bottom: 64px;
}

.o-feature .l-contents {
  max-width: 1366px;
  margin: 0 auto;
}

.o-feature .l-contents .o-feature__info-box {
  display: flex;
  flex-wrap: wrap;
  gap: 1px;
  border-bottom: 1px solid #ddd;
}

.o-feature .l-contents .o-feature__info-box .o-feature__anchor span.tag {
  position: absolute;
  top: 0;
  right: 0;
  color: var(--white);
  font-size: 14px;
  background-color: var(--dark);
  min-height: 32px;
  padding: 2px 15px;
  display: flex;
  align-items: center;
}

.o-feature .l-contents .o-feature__info-box a.o-feature__anchor {
  width: calc(33.33333% - 1px);
  padding: 40px;
  text-decoration: none;
  color: var(--dark);
  box-sizing: border-box;
}

.o-feature .l-contents .o-feature__info-box a.o-feature__anchor:nth-child(n+2) {
  border-left: 1px solid #ddd;
}

.o-feature .l-contents .o-feature__info-box a.o-feature__anchor:nth-child(3n+1) {
  border-left: 0px solid #ddd;
}

.o-feature .l-contents .o-feature__info-box a.o-feature__anchor:nth-child(n+4) {
  border-top: 1px solid #ddd;
}

.o-feature .l-contents .o-feature__info-box a.o-feature__anchor h3.o-feature__title {
  font-family: var(--font-family-bold);
  font-weight: bold;
  font-size: 18px;
  margin: 32px 0 24px;
}

.o-feature .l-contents .o-feature__info-box a.o-feature__anchor .o-feature__description {
  font-size: 14px;
  line-height: 2;
}

.o-feature .l-contents .o-feature__info-box .o-feature__image-thumbnail {
  max-width: 364px;
  margin: 0 auto;
  position: relative;
}

.o-feature .l-contents .o-feature__info-box .o-feature__image-thumbnail img {
  -o-object-fit: cover;
     object-fit: cover;
  width: 100%;
  aspect-ratio: 364/256;
}

.o-guide .l-contents {
  max-width: 1200px;
  margin: 0 auto 41px;
  border-top: 2px solid var(--dark);
  border-bottom: 2px solid var(--dark);
}

.o-guide .l-contents .o-guide__list {
  max-width: 1136px;
  margin: 0 auto;
  padding: 65px 0 83px;
  display: flex;
  flex-wrap: wrap;
  gap: 62px 32px;
}

.o-guide .l-contents .o-guide__list a.o-guide__anchor {
  width: calc(25% - 24px);
  padding: 0px;
  text-decoration: none;
  color: var(--dark);
  box-sizing: border-box;
  position: relative;
}

.o-guide .l-contents .o-guide__list a.o-guide__anchor .o-guide__title {
  font-size: 16px;
  line-height: 1.2;
  color: var(--dark);
  font-family: var(--font-family-bold);
  font-weight: bold;
  width: 100%;
  margin: 26px 0 22px;
}

.o-guide .l-contents .o-guide__list a.o-guide__anchor .o-guide__description {
  color: var(--gray);
  font-size: 14px;
  line-height: 1.7;
  width: 100%;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  overflow: hidden;
  margin-bottom: 13px;
  height: 48px;
}

.o-guide .l-contents .o-guide__list a.o-guide__anchor.osusume .o-guide__image-thumbnail::after {
  content: "";
  display: block;
  position: absolute;
  top: -13px;
  left: -13px;
  width: 87px;
  height: 87px;
  background: url(/images/front/icon/osusume-icon.svg) no-repeat 0 0;
}

.o-guide .l-contents .o-guide__list a.o-guide__anchor .o-button--want-to-go {
  content: "";
  display: block;
  position: absolute;
  top: 10px;
  right: 10px;
  font-size: 0;
  width: 24px;
  height: 24px;
  border: none;
  background-color: initial;
  background: url(/images/front/icon/icon-fav-off.svg) no-repeat 0 0;
}

.o-guide .l-contents .o-guide__list a.o-guide__anchor .o-button--want-to-go.o-button--want-to-go-add {
  background: url(/images/front/icon/icon-fav-on.svg) no-repeat 0 0;
}

.o-guide .l-contents .o-guide__list .o-guide__image-thumbnail {
  max-width: 260px;
  height: 260px;
  margin: 0 auto;
  position: relative;
}

.o-guide .l-contents .o-guide__list .o-guide__image-thumbnail img {
  -o-object-fit: cover;
     object-fit: cover;
  width: 100%;
  max-width: 260px;
  height: 260px;
}

.o-guide .l-contents .o-guide__list .o-guide__info--bottom {
  display: flex;
  align-items: center;
  gap: 10px;
  border-top: 1px solid var(--light-gray);
  padding-top: 10px;
  color: var(--gray);
  font-size: 14px;
  line-height: 1.2;
}

.o-guide.map-list .map-list__wrapper {
  display: flex;
  padding: 81px 32px;
  justify-content: space-between;
  align-items: center;
}

.o-guide.map-list .map-list__wrapper .map-list__google-map {
  width: 820px;
  height: 580px;
}

.o-guide.map-list .map-list__wrapper .map-list__text-list_wrap {
  width: 276px;
  height: 500px;
}

.o-guide.map-list .map-list__wrapper .map-list__text-list_wrap .map-list-btn-top,
.o-guide.map-list .map-list__wrapper .map-list__text-list_wrap .map-list-btn-bottom {
  border: none;
  background: none;
  cursor: pointer;
}

.o-guide.map-list .map-list__wrapper .map-list__text-list_wrap_inner .slick-list {
  border-top: 1px solid var(--light-gray);
  border-bottom: 1px solid var(--light-gray);
}

.o-guide.map-list .map-list__wrapper .map-list__text-list_wrap_inner .map-list-btn-top.slick-prev,
.o-guide.map-list .map-list__wrapper .map-list__text-list_wrap_inner .map-list-btn-bottom.slick-next {
  border: none;
  background: none;
  cursor: pointer;
  left: calc(50% - 12px) !important;
  top: auto !important;
  right: auto !important;
  width: 24px;
}

.o-guide.map-list .map-list__wrapper .map-list__text-list_wrap_inner .map-list-btn-top.slick-prev {
  top: -29px !important;
}

.o-guide.map-list .map-list__wrapper .map-list__text-list_wrap_inner .map-list-btn-top.slick-prev::before {
  content: "";
  display: block;
  width: 24px;
  height: 12px;
  font-size: 0;
  background: url(/images/front/icon/icon-arrow-map-list-top.svg) no-repeat 0 0;
}

.o-guide.map-list .map-list__wrapper .map-list__text-list_wrap_inner .map-list-btn-bottom.slick-next {
  bottom: -49px !important;
}

.o-guide.map-list .map-list__wrapper .map-list__text-list_wrap_inner .map-list-btn-bottom.slick-next::before {
  content: "";
  display: block;
  width: 24px;
  height: 12px;
  font-size: 0;
  background: url(/images/front/icon/icon-arrow-map-list-bottom.svg) no-repeat 0 0;
}

.o-guide.map-list .map-list__wrapper .map-list__text-list_wrap_inner div + div {
  border-top: 1px solid var(--light-gray);
}

.o-guide.map-list .map-list__wrapper .map-list__text-list_wrap_inner a {
  color: var(--dark);
  text-decoration: none;
  display: flex;
  padding: 23px 9px;
  line-height: 1.1;
  font-family: var(--font-family-bold);
  font-weight: bold;
  align-items: center;
  gap: 1rem;
}

@media (max-width: 1199px) {
  .o-guide .l-contents .o-guide__list {
    padding: 65px 3rem 83px;
    gap: 4rem 2rem;
  }

  .o-guide .l-contents .o-guide__list a.o-guide__anchor {
    width: calc(25% - 1.5rem);
  }

  .o-guide .l-contents .o-guide__list .o-guide__image-thumbnail {
    height: auto;
  }

  .o-guide .l-contents .o-guide__list .o-guide__image-thumbnail::before {
    content: "";
    padding-top: 100%;
    display: block;
  }

  .o-guide .l-contents .o-guide__list .o-guide__image-thumbnail img {
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
  }

  .o-guide .l-contents .o-guide__list a.o-guide__anchor.osusume .o-guide__image-thumbnail::after {
    background-size: 80%;
  }

  .o-guide.map-list .map-list__wrapper {
    flex-direction: column;
    gap: 4rem;
  }

  .o-guide.map-list .map-list__wrapper .map-list__google-map {
    width: 90%;
    position: relative;
  }

  .o-guide.map-list .map-list__wrapper .map-list__google-map iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
  }

  .o-guide.map-list .map-list__wrapper .map-list__text-list_wrap {
    width: 80%;
    justify-content: center;
    align-items: center;
  }

  .o-guide.map-list .map-list__wrapper .map-list__text-list_wrap_inner .slick-list {
    width: 100%;
  }
}

@media (max-width: 768px) {
  .o-feature .l-contents .o-feature__info-box a.o-feature__anchor {
    padding: 10px;
  }

  .o-feature .l-contents .o-feature__info-box a.o-feature__anchor h3.o-feature__title {
    font-size: 16px;
    margin: 16px 0 12px;
  }

  .o-feature .l-contents .o-feature__info-box a.o-feature__anchor .o-feature__description {
    line-height: 1.3;
  }

  .o-guide .l-contents .o-guide__list a.o-guide__anchor {
    width: calc(50% - 1rem);
  }

  .o-guide.map-list .map-list__wrapper .map-list__text-list_wrap {
    width: 90%;
    justify-content: center;
    align-items: center;
  }

  .o-guide.map-list .map-list__wrapper .map-list__text-list_wrap_inner {
    width: 100%;
  }
}

@media (max-width: 576px) {
  .o-guide.map-list .map-list__wrapper .map-list__google-map {
    width: 100%;
    height: 410px;
  }

  .o-guide.map-list .map-list__wrapper .map-list__text-list_wrap {
    width: 100%;
  }

  .o-guide.map-list .map-list__wrapper .map-list__text-list_wrap_inner .slick-list {
    height: 432px;
  }
}

@media (max-width: 570px) {
  .o-guide .l-contents .o-guide__list {
    padding: 2rem 1rem 4rem;
    gap: 2.5rem 2rem;
  }

  .o-guide .l-contents .o-guide__list a.o-guide__anchor .o-guide__title {
    margin: 1rem 0 0.9rem;
  }

  .o-feature .l-contents .o-feature__info-box a.o-feature__anchor {
    width: 100%;
    padding: 2rem;
  }

  .o-feature .l-contents .o-feature__info-box a.o-feature__anchor:nth-child(n+2),
  .o-feature .l-contents .o-feature__info-box a.o-feature__anchor:nth-child(3n+1) {
    border-left: 0px solid #ddd;
  }

  .o-feature .l-contents .o-feature__info-box a.o-feature__anchor + a {
    border-top: 1px solid #ddd;
  }
}

/* == footer-information == */

.o-footer-information {
  background: var(--footer-blue);
  padding: 56px 0 16px;
}

.o-footer-information::before {
  display: none;
}

.o-footer-information .o-footer-information--inner {
  display: flex;
  justify-content: center;
  align-items: flex-start;
  gap: 40px;
}

.o-footer-information .o-footer-information--inner .o-footer-information--inner-block h4 {
  font-family: var(--font-family-bold);
  font-weight: bold;
  font-size: 16px;
  margin: 0 0 24px;
  padding: 0 0 16px;
  border-bottom: 1px solid var(--white);
}

.o-footer-information .o-footer-information--inner .o-footer-information--inner-list {
  padding: 0 15px 0 8px;
  margin: 0;
}

.o-footer-information .o-footer-information--inner .o-footer-information--inner-list_2column {
  display: flex;
  gap: 40px;
}

.o-footer-information .o-footer-information--inner .o-footer-information--inner-list-item a {
  color: var(--white);
  text-decoration: none;
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 14px;
}

.o-footer-information .o-footer-information--inner .o-footer-information--inner-list-item a::before {
  content: "";
  display: inline-flex;
  width: 7px;
  height: 7px;
  background: url(/images/front/icon/icon_footerlist.svg) no-repeat 0 0;
}

.o-footer-information .o-footer-information--address {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 72px;
  margin-bottom: 80px;
}

.o-footer-information .o-footer-information--address .o-footer-information--address-text h3 {
  font-family: var(--font-family-bold);
  font-weight: bold;
  font-size: 18px;
  margin: 0 0 40px;
}

.o-footer-information .o-footer-information--address .o-footer-information--address-text p {
  margin: 0;
  font-size: 14px;
}

.o-footer-information .o-footer-information--address .o-footer-information--address-text p + p {
  margin-top: 30px;
}

.o-footer-information .o-footer-information--btnarea {
  padding: 80px 0;
  display: flex;
  justify-content: center;
  gap: 24px;
}

.o-footer-information .o-footer-copyright {
  text-align: center;
  font-size: 14px;
}

@media (max-width: 1023px) {
  .o-footer-information .o-footer-information--address,
  .o-footer-information .o-footer-information--inner,
  .o-footer-information .o-footer-information--btnarea {
    display: none;
  }

  .o-footer-information {
    padding: 26px 0 16px;
  }
}

.o-footer-link {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  margin-top: 3rem;
  margin-bottom: 3rem;
}

@media (min-width: 1024px) {
  .o-footer-link {
    margin-top: 0;
    margin-bottom: 0;
  }
}

.o-footer-link__list {
  display: flex;
  flex-wrap: wrap;
}

@media (min-width: 577px) {
  .o-footer-link__list {
    justify-content: center;
  }
}

.o-footer-link__link-item {
  width: calc(50% - 1rem);
  margin-bottom: 1rem;
}

.o-footer-link__link-item:nth-child(odd) {
  margin-right: 1rem;
}

@media (min-width: 577px) {
  .o-footer-link__link-item {
    width: auto;
  }

  .o-footer-link__link-item:nth-child(odd) {
    margin-right: 0;
  }
}

@media (min-width: 1281px) {
  .o-footer-link__link-item {
    margin-right: initial;
    margin-bottom: initial;
  }
}

.o-footer-link__link-item:last-child .o-footer-link__anchor::after {
  display: none;
}

.o-footer-link__anchor {
  font-size: 2.64vw;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  height: 100%;
  min-height: 1.8rem;
}

@media (min-width: 1024px) {
  .o-footer-link__anchor {
    font-size: 1.1rem;
  }
}

@media (min-width: 577px) {
  .o-footer-link__anchor {
    font-size: 1.4rem;
  }
}

@media (min-width: 1281px) {
  .o-footer-link__anchor {
    font-size: 1.6rem;
  }
}

@media (min-width: 577px) {
  .o-footer-link__anchor::after {
    display: block;
    width: 0.1rem;
    height: 100%;
    margin: 0 1rem;
    content: "";
    background-color: #1a1a1a;
  }
}

@media (min-width: 577px) and (min-width: 1281px) {
  .o-footer-link__anchor::after {
    margin: 0 2.75rem;
  }
}

body:not(.ja) * {
  line-height: 1.3 !important;
}

body:not(.ja) .o-heading-low-type4 > div {
  display: flex;
  flex-direction: column;
}

body:not(.ja) h1.o-heading-low-type4 > div {
  display: block;
}

body:not(.ja) .is-spot-detail .u-image-thumbnail--detail .o-detail-slider__image {
  -o-object-fit: contain !important;
     object-fit: contain !important;
}

body:not(.ja) .o-detail-slider__list.feature-slider .o-detail-slider__image {
  -o-object-fit: contain !important;
     object-fit: contain !important;
}

body:not(.ja) .o-detail-feature__item-image,
body:not(.ja) .o-model-course-spot__image {
  -o-object-fit: contain !important;
     object-fit: contain !important;
}

body:not(.ja) .o-conditions-search__link {
  display: none;
}

body.en {
  font-family: Arial, sans-serif !important;
}

body.en .o-conditions-search-keyword,
body.en .o-heading-low-type2,
body.en .o-heading-low-type4,
body.en .o-heading-low-type5,
body.en .o-heading--reserve-sub,
body.en .o-heading--detail,
body.en .o-heading--detail-topics {
  font-family: Arial, sans-serif !important;
}

body.en .is-top *:not(.fa),
body.en .l-header *:not(.fa) {
  font-family: "Montserrat", sans-serif, Arial !important;
}

body.zh-CN {
  font-family: "Noto Sans SC", sans-serif !important;
}

body.zh-CN .o-conditions-search-keyword,
body.zh-CN .o-heading-low-type2,
body.zh-CN .o-heading-low-type4,
body.zh-CN .o-heading-low-type5,
body.zh-CN .o-heading--reserve-sub,
body.zh-CN .o-heading--detail,
body.zh-CN .o-heading--detail-topics {
  font-family: "Noto Sans SC", sans-serif !important;
}

body.zh-TW {
  font-family: "Noto Sans TC", 微軟正黑體, "Microsoft JhengHei", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji" !important;
}

body.zh-TW .o-conditions-search-keyword,
body.zh-TW .o-heading-low-type2,
body.zh-TW .o-heading-low-type4,
body.zh-TW .o-heading-low-type5,
body.zh-TW .o-heading--reserve-sub,
body.zh-TW .o-heading--detail,
body.zh-TW .o-heading--detail-topics {
  font-family: "Noto Sans TC", 微軟正黑體, "Microsoft JhengHei", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji" !important;
}

body.ko {
  /* stylelint-disable */
  font-family: "Noto Sans KR" !important;
  /* stylelint-enable */
}

body.ko .o-conditions-search-keyword,
body.ko .o-heading-low-type2,
body.ko .o-heading-low-type4,
body.ko .o-heading-low-type5,
body.ko .o-heading--reserve-sub,
body.ko .o-heading--detail,
body.ko .o-heading--detail-topics {
  font-family: "Noto Sans KR", sans-serif !important;
}

body.vi {
  font-family: Arial, sans-serif !important;
}

body.vi .hamburger-menu__btn a::after,
body.vi .l-global-navi__sub-anchor,
body.vi .o-conditions-search-keyword,
body.vi .o-heading-low-type2,
body.vi .o-heading-low-type4,
body.vi .o-heading-low-type5,
body.vi .o-heading--reserve-sub,
body.vi .o-heading--detail,
body.vi .o-heading--detail-topics {
  font-family: Arial, sans-serif !important;
}

.o-free-html .indent-2rem {
  margin-left: 2rem !important;
}

.o-free-html table th,
.o-free-html table td {
  border: 1px solid var(--table-gray);
  padding: 0.25rem;
}

.o-form-control {
  height: calc(1.6em + 1.2rem + 2px) !important;
  font-size: 1.6rem;
  color: #666;
  border-radius: 0;
}

.o-form-control::-moz-placeholder {
  color: #ced4da;
}

.o-form-control:-ms-input-placeholder {
  color: #ced4da;
}

.o-form-control::-ms-input-placeholder {
  color: #ced4da;
}

.o-form-control::placeholder {
  color: #ced4da;
}

.o-form-control--w240 {
  width: 100%;
}

@media (min-width: 1024px) {
  .o-form-control--w240 {
    width: 24rem;
  }
}

.o-form__checkbox {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 5px;
  padding: 0;
  min-height: auto;
}

.o-form__checkbox a {
  color: var(--line-blue) !important;
  text-decoration: underline;
}

.o-form__checkbox__list {
  display: flex;
  flex-wrap: wrap;
  gap: 0.3rem 1.25rem;
}

.o-form__checkbox.custom-checked {
  margin-left: -1rem;
}

.o-form__checkbox.custom-checked::before {
  display: block;
  width: 1rem;
  height: 1.44rem;
  content: "";
}

.o-form__checkbox-label {
  color: var(--dark);
  font-size: 16px;
}

.o-form__checkbox-label::before {
  display: none;
}

.o-form__checkbox-label::after {
  top: 50%;
  left: -2.15rem;
  width: 1.4rem;
  height: 1.4rem;
  transform: translateY(-50%);
}

.o-form__checkbox-label .u-font-size-up {
  font-size: 125%;
}

.o-form__checkbox-label a {
  color: #148fae;
}

.o-form__checkbox--big-category .o-form__checkbox-label {
  font-weight: normal;
}

.o-form__checkbox--big-category .o-form__checkbox-label::before {
  width: 1.2rem;
  height: 1.2rem;
}

.o-form__checkbox--big-category .o-form__checkbox-label::after {
  left: -2rem;
  width: 1.2rem;
  height: 1.2rem;
}

.o-form__checkbox .custom-control-input:checked ~ .custom-control-label::before {
  background: #008071 !important;
}

.o-form__checkbox .form-check-input {
  margin: 0;
}

.o-form__number {
  color: #000;
  border-color: #000;
  border-radius: 0;
}

.o-form__number::-moz-placeholder {
  color: #000;
}

.o-form__number:-ms-input-placeholder {
  color: #000;
}

.o-form__number::-ms-input-placeholder {
  color: #000;
}

.o-form__number::placeholder {
  color: #000;
}

.o-conditions-search-drop .o-form__checkbox-label {
  white-space: normal;
}

.u-custom-control-input:checked ~ .o-form__checkbox-label::before {
  background-color: #262626;
  border-color: #262626;
}

/* == ハンバーガーメニューエリア == */

.overlay__wrapper {
  position: fixed;
  z-index: 1003;
  display: none;
  width: 100%;
  height: 100vh;
  overflow: auto;
  background-color: var(--white);
  top: 0;
}

.overlay__wrapper a {
  color: var(--dark);
  text-decoration: none;
  font-family: var(--font-family-bold);
  font-weight: bold;
}

.overlay__wrapper .logo_header {
  margin: 20px 0 0 37px;
}

.overlay__wrapper .hamburger-menu__btn a.btn-close {
  color: var(--dark);
  text-decoration: none;
  font-family: var(--font-family-bold);
  font-weight: bold;
  background: var(--white);
  border: none;
}

.overlay__wrapper .hamburger-menu__box {
  padding: 0 1rem;
}

.overlay__wrapper .hamburger-menu__box .svg-icon-list {
  margin: 0;
  padding: 0 0 24px;
  border-bottom: 1px solid var(--dark);
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 24px;
}

.overlay__wrapper .hamburger-menu__box .svg-icon-list li {
  height: 18px;
}

.overlay__wrapper .hamburger-menu__box .svg-icon-list--btnarea {
  padding: 2rem;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 24px;
}

.overlay__wrapper .hamburger-menu__box .svg-icon-list--btnarea .btn.btn-white {
  height: 48px;
  border-radius: 40px;
  width: 80%;
}

.overlay__wrapper .hamburger-menu__box .svg-icon-list--btnarea .btn.btn-white::after {
  top: calc(50% - 4px);
}

.hamburger-menu__box_menu1 {
  padding: 2rem;
}

.hamburger-menu__box_menu1 .inner-list {
  margin: 0;
  padding: 0;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  gap: 2rem;
}

.hamburger-menu__box_menu1 .inner-list .inner-list-item {
  width: calc(50% - 1rem);
}

.hamburger-menu__box_menu2 {
  background-color: var(--line-blue);
  padding: 2rem;
}

.hamburger-menu__box_menu2 ul {
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 2rem;
}

.hamburger-menu__box_menu2 a {
  color: var(--white);
}

.slid-menu-area {
  padding: 0 2rem 3rem;
}

.slid-menu-area .inner-list {
  margin: 0;
  padding: 0;
}

.slid-menu-area .slid-menu-box .inner-list {
  margin: 2rem 0 0;
  padding: 0 1rem;
  display: flex;
  flex-direction: column;
  gap: 24px;
}

.slid-menu-box {
  display: none;
}

.slid-menu-btn {
  border-bottom: 1px solid var(--dark);
  font-size: 18px;
  padding: 0 0.7rem 0.7rem;
  position: relative;
  margin-bottom: 0;
}

.slid-menu-btn::before {
  /* 閉じている時 */
  content: "";
  background: url(/images/front/icon/icon-arrow-bottom2.svg) no-repeat 0 0;
  display: block;
  width: 17px;
  height: 9px;
  position: absolute;
  right: 18px;
  top: calc(50% - 8px);
}

.slid-menu-btn.active::before {
  /* 開いている時 */
  content: "";
  background: url(/images/front/icon/icon-arrow-top.svg) no-repeat 0 0;
  display: block;
  width: 17px;
  height: 9px;
  position: absolute;
  right: 18px;
  top: calc(50% - 8px);
}

/* == ハンバーガーメニューボタン == */

.hamburger-menu__btn {
  position: absolute;
  top: 22px;
  right: 27px;
  z-index: 1004;
}

.hamburger-menu__btn a {
  position: relative;
  z-index: 9999;
  display: block;
  width: 24px;
  height: 24px;
}

.hamburger-menu__btn a:hover {
  opacity: 1;
}

.hamburger-menu__btn a.btn-open svg .cls-1 {
  fill: var(--white);
}

.hamburger-menu__box--btnarea {
  padding: 2rem;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 24px;
}

.hamburger-menu__box--btnarea .btn.btn-white {
  height: 48px;
  border-radius: 40px;
  width: 80%;
}

.hamburger-menu__box--btnarea .btn.btn-white::after {
  top: calc(50% - 4px);
}

.l-global-navi.nav-show + .l-header .hamburger-menu__btn {
  top: 23px;
  transition: all 0.3s ease-out;
}

.hamburger-menu__btn a.btn-close svg .cls-1,
.l-global-navi.nav-show + .l-header .hamburger-menu__btn a.btn-open svg .cls-1 {
  fill: var(--dark);
  transition: all 0.3s ease-out;
}

@media (max-width: 1023px) {
  .overlay__wrapper .logo_header,
  .top-sp-header .logo_header {
    width: 200px;
    margin: 1rem 0 0.8rem 1rem;
  }

  .overlay__wrapper .logo_header {
    width: 266px;
    margin: 1rem 0 2rem 0;
  }

  .hamburger-menu__btn {
    top: 21px;
    right: 25px;
  }
}

/* == top-header-main-visual == */

.o-header {
  position: relative;
  z-index: 1;
  width: 100%;
  max-height: 654px;
  height: 654px;
}

.o-header::before {
  content: "";
  width: 100%;
  height: 160px;
  position: absolute;
  top: 0;
  z-index: 10;
  background: #00aeba;
  background: linear-gradient(0deg, rgba(0, 174, 186, 0) 0%, rgba(0, 74, 150, 0.3995973389) 100%);
}

.o-header .slick-dotted.slick-slider {
  margin-bottom: 0;
}

.o-header .slick-inner {
  position: relative;
}

.o-header .slick-inner .slick-content {
  position: absolute;
  bottom: 40px;
  left: 80px;
  z-index: 20;
  width: calc(100% - 164px);
}

.o-header .slick-inner .slick-content .slick-content-caption {
  margin: 0;
  border: 1px solid var(--white);
  font-size: 14px;
  color: var(--white);
  background: rgba(0, 0, 0, 0.2);
  height: 40px;
  width: auto;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 20px;
  gap: 15px;
  padding: 0 23px 0 11px;
}

.o-header .slick-inner .slick-content .slick-content-caption::before {
  content: "";
  display: flex;
  align-items: center;
  width: 16px;
  height: 16px;
  background: url(/images/front/icon/icon_pin.svg) no-repeat 0 0;
}

.o-header .slick-inner .slick-content .slick-content-copy {
  color: var(--white);
  font-size: 36px;
}

.o-header .slick-inner::after {
  content: "";
  width: 100%;
  height: 260px;
  position: absolute;
  bottom: 0;
  z-index: 10;
  background: #00aeba;
  background: linear-gradient(180deg, rgba(0, 174, 186, 0) 0%, rgba(0, 74, 150, 0.3995973389) 100%);
}

/* == top-header-mein-visual slick == */

.slick-slide img {
  display: block;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
  max-height: 935px;
  height: 654px;
  width: 100%;
}

.slick-dots {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: end;
  z-index: 0;
  bottom: 40px;
  gap: 10px;
}

.slick-dots li {
  margin: 0 32px;
}

.slick-dots li button:before {
  color: var(--white);
  opacity: 1;
}

.slick-dots li.slick-active button:before {
  color: var(--icon-blue);
  opacity: 1;
}

@media (min-width: 1200px) {
  .o-header {
    max-height: 885px;
  }

  .slick-slide img {
    max-height: 885px;
  }
}

@media (max-width: 1023px) {
  .o-header .slick-inner .slick-content {
    left: 10px;
    width: 80%;
  }

  .o-header .slick-inner .slick-content .slick-content-copy {
    font-size: 18px;
  }

  .slick-slide img {
    height: 550px;
  }
}

@media (max-width: 768px) {
  .o-header {
    max-height: 550px;
  }
}

h2.o-heading--detail-topics {
  font-size: 24px;
  line-height: 1.2;
  display: flex;
  align-items: center;
  position: relative;
  margin-bottom: 1rem;
}

h2.o-heading--detail-topics::before {
  content: "";
  display: block;
  width: 32px;
  height: 48px;
  background: url(/images/front/icon/icon_spot_ttl.svg) no-repeat 0 0;
  padding-right: 12px;
  margin-right: 12px;
  background-size: contain;
}

h2.o-heading--detail-topics::after {
  content: "";
  display: inline-block;
  width: 100%;
  height: 2px;
  background-color: var(--dark);
}

h2.o-heading--detail-topics span {
  position: absolute;
  left: 32px;
  background-color: var(--white);
  padding: 0 25px 0 12px;
}

@media (max-width: 1120px) {
  .o-detail-contents-footer-topics__wrapper {
    padding: 2rem 2rem 0;
  }
}

@media (max-width: 1024px) {
  h2.o-heading--detail-topics {
    font-size: 1.5rem;
  }

  h2.o-heading--detail-topics::after {
    display: none;
  }
}

@media (max-width: 768px) {
  h2.o-heading--detail-topics {
    font-size: 1.3rem;
  }

  h2.o-heading--detail-topics span {
    padding: 0 0 0 12px;
  }
}

@media (max-width: 425px) {
  h2.o-heading--detail-topics {
    font-size: 1.1rem;
  }
}

.o-information__wrapper {
  max-width: 1040px;
  margin: 0 auto 64px;
}

.o-information__wrapper a.o-information__anchor {
  color: var(--dark);
  text-decoration: none;
  border-bottom: 1px solid var(--light-gray);
  display: block;
  padding: 24px 18px;
  margin-bottom: 0;
}

.o-information__wrapper a.o-information__anchor:first-child {
  padding-top: 0;
}

.o-information__wrapper .o-information__label-list {
  display: flex;
  padding: 0;
  margin: 0 0 14px;
  gap: 17px;
  font-size: 14px;
  line-height: 1.2;
  flex-wrap: wrap;
  align-items: center;
}

.o-information__wrapper .o-information__label-item.category {
  margin-left: 0;
}

.o-information__wrapper .o-information__label-item.icon-area {
  display: flex;
  font-size: 12px;
}

.o-information__wrapper .o-information__list,
.o-information__wrapper .o-information__list .o-information__item {
  margin: 0;
  display: block;
}

.o-information__wrapper .o-information__title {
  font-weight: normal;
  line-height: 1.7;
  margin: 0;
}

.o-information__wrapper .o-information__label-item--check {
  background-color: var(--icon-blue);
  color: var(--white);
  border-radius: 20px;
  width: 64px;
  height: 20px;
  display: flex;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
  border-color: var(--icon-blue);
}

.o-information__wrapper .o-information__label-item--new {
  background-color: var(--white);
  color: var(--icon-blue);
  border: 1px solid var(--icon-blue);
  border-radius: 20px;
  width: 64px;
  height: 20px;
  display: flex;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
}

.o-information__wrapper.news_detail {
  max-width: 1140px;
  margin: 0 auto 64px;
  border-bottom: 1px solid var(--light-gray);
}

.o-information__wrapper.news_detail .o-information__list {
  border-bottom: 1px solid var(--dark);
  padding: 0 52px 21px;
  margin-bottom: 66px;
}

.o-information__wrapper.news_detail .o-information__title {
  font-weight: bold;
  font-family: var(--font-family-bold);
  line-height: 1.2;
  margin: 0;
  font-size: 28px;
}

.is-page-list .o-information__label-item {
  margin: 0;
}

.o-information__wrapper .o-information__label-item.icon-area.check-new .o-information__label-item--check {
  border-radius: 20px 0 0 20px;
  width: 61px;
}

.o-information__wrapper .o-information__label-item.icon-area.check-new .o-information__label-item--new {
  border-radius: 0 20px 20px 0;
  width: 50px;
}

.o-information__wrapper .o-information__label-item.category {
  margin-left: 5px;
  color: var(--icon-blue);
}

.o-information__item::after {
  display: none;
}

.o-information-detail__wrapper {
  padding: 0 52px;
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 64px;
}

.o-information-detail--left .o-free-html .text-link {
  margin: 32px 0;
}

.o-information-detail--left .o-free-html p {
  margin: 56px 0;
  font-size: 16px;
  line-height: 2;
  word-break: break-all;
}

.o-information-detail--left .o-free-html p:first-child {
  margin-top: 16px;
}

.o-information-detail--left .o-free-html p > .text-link:first-child {
  margin-top: 0;
}

.o-information-detail--left .o-free-html p > .text-link::after {
  content: "";
  width: 16px;
  height: 16px;
  background: url(/images/front/icon/icon_link-window.svg) no-repeat 0 0;
  padding: 0 3px;
}

.o-information-detail--left .o-free-html ul,
.o-information-detail--left .o-free-html li {
  list-style: disc;
  font-size: 16px;
  line-height: 1.1;
}

.o-information-detail--left .o-free-html ul {
  margin: 56px 0;
  padding: 0 0 0 1rem;
}

.o-information-detail--left .o-free-html li + li {
  margin-top: 31px;
}

.o-information-detail--left .o-free-html .pdf-link {
  color: var(--line-blue);
  font-size: 14px;
  line-height: 1.2;
  text-decoration: none;
  display: inline-flex;
  align-items: center;
  border: 1px solid var(--icon-blue);
  border-radius: 20px;
  padding: 12px 20px;
  margin: 16px 0;
  gap: 25px;
  word-break: break-all;
}

.o-information-detail--left .o-free-html .pdf-link::after {
  content: "";
  width: 16px;
  height: 15px;
  background: url(/images/front/icon/icon_pdf-download.svg) no-repeat 0 0;
  padding: 0 8px;
  box-sizing: border-box;
}

.o-information-detail--left .o-free-html br + .pdf-link {
  margin-top: 0;
}

.o-information-detail--left .o-free-html br + .text-link {
  margin-top: 0;
}

.o-information-detail--left .o-free-html .pdf-link-ttl {
  font-size: 18px;
  line-height: 1.2;
  font-weight: bold;
  font-family: var(--font-family-bold);
  margin-bottom: 10px;
  color: var(--line-blue);
}

.o-information-detail--right {
  max-width: 364px;
}

.o-information-detail--right .o-information-detail__slider-list {
  padding: 0;
  margin: 0;
}

.o-information-detail--right .o-information-detail__slider-item:last-child {
  margin-bottom: 39px;
}

.o-information-detail--right .o-information-detail__slider-item + li {
  margin-top: 39px;
}

.o-information-detail--right img {
  width: 100%;
  max-width: 364px;
  -o-object-fit: cover;
     object-fit: cover;
  margin-bottom: 8px;
}

.o-information-detail--right .o-information-detail__slider-caption {
  margin: 0;
  font-size: 14px;
  font-weight: normal;
  line-height: 1.2;
}

.o-information-news_detail-btnarea {
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 0 auto 120px;
  gap: 32px;
}

.o-information-news_detail-btnarea .btn.btn-white {
  width: 197px;
  height: 40px;
  border-radius: 20px;
  box-sizing: border-box;
}

.o-information-news_detail-btnarea a.btn.btn-white:first-child::after {
  background: url(/images/front/icon/icon-arrow-left.svg) no-repeat 0 0;
  height: 12px;
  width: 6px;
  background-size: contain;
  top: calc(50% - 5px);
}

.o-information-news_detail-btnarea a.btn.btn-white:last-child::after {
  background: url(/images/front/icon/icon-arrow-right.svg) no-repeat 0 0;
  height: 12px;
  width: 6px;
  background-size: contain;
  top: calc(50% - 5px);
  right: 15px;
  left: auto;
}

@media (max-width: 576px) {
  .main-content-header.content-news-detail {
    margin-bottom: 2.5rem;
  }

  .o-information__wrapper.news_detail .o-information__list {
    padding: 0 1rem 21px;
    margin-bottom: 2rem;
  }

  .o-information-detail__wrapper {
    flex-direction: column;
    padding: 0 1rem;
  }

  .o-information-detail--left .o-free-html p:last-child {
    margin-bottom: 0;
  }

  .o-information-detail--right {
    margin: 0 auto;
  }

  .o-information-news_detail-btnarea {
    padding: 0 1rem;
  }
}

.o-information-center {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 3rem;
  margin: 3rem auto;
  background: url("/images/front/foreign/common/information-center-spn.jpg") no-repeat center center/100%;
}

@media (min-width: 577px) {
  .o-information-center {
    padding: 2rem 5rem;
    margin: 8rem auto 6rem auto;
    background: url("/images/front/foreign/common/information-center.jpg") no-repeat center center/cover;
  }
}

@media (min-width: 769px) {
  .o-information-center {
    background-size: 100%;
  }
}

@media (min-width: 1024px) {
  .o-information-center {
    height: 24rem;
  }
}

.o-information-center__box {
  width: 100%;
  padding: 0.5rem;
  margin: 0 auto;
  background: rgba(255, 255, 255, 0.9);
}

@media (min-width: 577px) {
  .o-information-center__box {
    max-width: 72rem;
    height: 10rem;
  }
}

.o-information-center__anchor {
  color: #1a1a1a;
  font-family: "\6E38\660E\671D", "Yu Mincho", YuMincho, "Hiragino Mincho ProN", "HGS\660E\671D  E", "\30E1\30A4\30EA\30AA", Meiryo, serif;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  padding: 2rem;
  font-size: 1.6rem;
  word-break: break-all;
  border: 0.1rem solid #fff;
}

.o-information-center__anchor:hover {
  color: #1a1a1a;
}

@media (min-width: 577px) {
  .o-information-center__anchor {
    font-size: 2rem;
  }
}

@media (min-width: 577px) {
  .o-information-center__anchor::after {
    /* stylelint-disable-next-line */
    font-family: FontAwesome;
    font-weight: normal;
    content: "\F101";
    position: absolute;
    top: 50%;
    right: 1.5rem;
    transform: translateY(-50%);
  }
}

.o-information-center__btn-list {
  display: flex;
  flex-direction: column;
  width: 100%;
  padding: 0 1.5rem;
  margin: 0 auto;
}

@media (min-width: 577px) {
  .o-information-center__btn-list {
    flex-direction: row;
    flex-wrap: wrap;
  }
}

@media (min-width: 1024px) {
  .o-information-center__btn-list {
    max-width: 84rem;
    padding: 0;
  }
}

.o-information-center__btn-list li {
  width: 100%;
  margin: 0 0 1.5rem 0;
  text-align: center;
}

@media (min-width: 577px) {
  .o-information-center__btn-list li {
    text-align: right;
  }
}

.o-information-center__btn-list li:last-child {
  margin: 0;
}

@media (min-width: 577px) {
  .o-information-center__btn-list li:last-child {
    text-align: left;
  }

  .o-information-center__btn-list li:last-child::before {
    margin-right: 3rem;
    content: "\FF5C";
  }
}

@media (min-width: 577px) {
  .o-information-center__btn-list li {
    width: calc(50% - 2rem);
    margin-right: 4rem;
  }
}

.o-information-center__btn-list li span {
  font-size: 1.3rem;
}

@media (min-width: 577px) {
  .o-information-center__btn-list li span {
    font-size: 1.6rem;
  }
}

.o-information-center__btn-list .o-button {
  width: 100%;
  font-size: 1.3rem;
}

@media (min-width: 577px) {
  .o-information-center__btn-list .o-button {
    font-size: 1.6rem;
  }
}

.o-information-center__link-list {
  display: flex;
  align-items: center;
  justify-content: center;
}

@media (min-width: 577px) {
  .o-information-center__link-list {
    flex-direction: row;
  }
}

.o-information-center__link-list li {
  display: flex;
  align-items: center;
  justify-content: center;
  width: auto;
  margin-bottom: 0.5rem;
}

.o-information-center__link-list li::after {
  display: block;
  margin: 0 1rem;
  content: "|";
}

.o-information-center__link-list li:last-child::after {
  display: none;
}

.o-information-center__link-list li a {
  color: #1a1a1a;
  font-size: 1.4rem;
}

.o-information-center__link-list li a:hover {
  color: #1a1a1a;
}

@media (min-width: 577px) {
  .o-information-center__link-list li a {
    font-size: 1.6rem;
  }
}

/* stylelint-disable */

_:-ms-lang(x)::-ms-backdrop,
.o-information-center {
  justify-content: flex-start;
}

_:-ms-lang(x)::-ms-backdrop,
.o-information-center__btn-list {
  max-width: 85rem;
}

/* stylelint-enable */

.o-instagram__title {
  font-family: "\6E38\660E\671D", "Yu Mincho", YuMincho, "Hiragino Mincho ProN", "HGS\660E\671D  E", "\30E1\30A4\30EA\30AA", Meiryo, serif;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 2.6rem;
  font-weight: 900;
}

.o-instagram__title::before {
  /* stylelint-disable-next-line */
  font-family: FontAwesome;
  font-weight: normal;
  content: "\F16D";
  display: block;
  margin-right: 2rem;
  font-size: 3rem;
}

@media (min-width: 1024px) {
  .o-instagram__title {
    font-size: 3.2rem;
  }
}

.o-instagram__list {
  display: flex;
  flex-wrap: wrap;
  width: 100%;
  margin: 0 auto;
}

.o-instagram__item {
  width: calc(33.3%);
  height: calc(100vw / 3);
}

@media (min-width: 577px) {
  .o-instagram__item {
    width: calc(100% / 6);
    height: calc(100vw / 6);
  }
}

@media (min-width: 1281px) {
  .o-instagram__item {
    height: 23.3rem;
  }
}

.o-instagram__anchor {
  display: block;
  width: 100%;
  height: 100%;
  text-align: center;
}

.o-instagram__image {
  width: 100%;
  height: 100%;
  overflow: hidden;
  -o-object-fit: cover;
     object-fit: cover;
}

@media (min-width: 1024px) {
  .o-instagram__image {
    height: 100%;
  }
}

/* stylelint-disable */

_:-ms-lang(x)::-ms-backdrop,
.o-instagram__item {
  width: calc(100% / 6.1);
}

_:-ms-lang(x)::-ms-backdrop,
.o-instagram__anchor {
  position: relative;
  overflow: hidden;
}

_:-ms-lang(x)::-ms-backdrop,
.o-instagram__image {
  position: absolute;
  top: 50%;
  left: 50%;
  width: auto;
  height: 100%;
  transform: translate(-50%, -50%);
}

/* stylelint-enable */

.o-light-box__figure:not(:target) {
  display: none;
}

.o-light-box__figure:not(:target) .o-light-box__image {
  -webkit-animation: fadeout 0.3s;
          animation: fadeout 0.3s;
}

.o-light-box__figure:target {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1001;
  display: block;
}

.o-light-box__figure:target .o-light-box__anchor {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  color: inherit;
  text-decoration: none;
  background: rgba(255, 255, 255, 0.7);
  -webkit-backdrop-filter: blur(0.5rem);
          backdrop-filter: blur(0.5rem);
}

.o-light-box__figure:target .o-light-box__anchor:hover {
  opacity: 1;
}

.o-light-box__figure:target .o-light-box__anchor::after {
  position: absolute;
  top: 1rem;
  right: 2rem;
  /* stylelint-disable */
  font-family: FontAwesome;
  /* stylelint-enable */
  font-size: 3rem;
  content: "\F00D";
}

.o-light-box__figure:target .o-light-box__image {
  max-width: 100%;
  -webkit-animation: fadein 0.3s;
          animation: fadein 0.3s;
}

@-webkit-keyframes fadein {
  0% {
    opacity: 0.2;
    transform: scale(0.2);
  }

  100% {
    opacity: 1;
    transform: scale(1);
  }
}

@keyframes fadein {
  0% {
    opacity: 0.2;
    transform: scale(0.2);
  }

  100% {
    opacity: 1;
    transform: scale(1);
  }
}

@-webkit-keyframes fadeout {
  0% {
    opacity: 1;
    transform: scale(1);
  }

  100% {
    opacity: 0.2;
    transform: scale(0.2);
  }
}

@keyframes fadeout {
  0% {
    opacity: 1;
    transform: scale(1);
  }

  100% {
    opacity: 0.2;
    transform: scale(0.2);
  }
}

/* stylelint-disable */

/* stylelint-enable */

/* == 下層コンテンツ リンク集 == */

.o-link__wrapper {
  width: 100%;
  max-width: 1040px;
  margin: 80px auto;
}

.o-link__wrapper .o-link__ttl-h3 {
  font-size: 24px;
  font-family: var(--font-family-bold);
  line-height: 1.1;
  border-bottom: 2px solid var(--dark);
  padding: 0 36px 19px;
  margin: 0 auto 40px;
}

.o-link__wrapper .o-link__ttl-h4 {
  font-size: 20px;
  color: var(--line-blue);
  font-family: var(--font-family-bold);
  line-height: 1.2;
  border-bottom: 1px solid var(--table-gray);
  padding: 0 36px 15px;
  margin: 48px auto 32px;
}

.o-link__wrapper .o-link__text {
  padding: 0 36px;
  font-size: 16px;
  line-height: 2;
  word-break: break-all;
}

.o-link__wrapper .o-link__list {
  margin: 40px auto;
  padding: 0 36px;
  display: flex;
  flex-wrap: wrap;
  gap: 32px 41px;
}

.o-link__wrapper .o-link__list li {
  width: calc(50% - 41px);
}

.o-link__wrapper .o-link__list li a {
  color: var(--line-blue);
  font-size: 15px;
  line-height: 1.2;
  display: flex;
  align-items: center;
  gap: 18px;
}

.o-link__wrapper .o-link__list li a::before {
  content: "";
  width: 16px;
  min-width: 16px;
  height: 16px;
  background: url(/images/front/icon/icon_link-window.svg) no-repeat 0 0;
  padding: 0 3px;
  display: block;
}

@media (max-width: 576px) {
  .o-link__wrapper {
    margin: 2rem auto;
    padding: 0 1rem;
  }

  .o-link__wrapper:last-child {
    margin-bottom: 4rem;
  }

  .o-link__wrapper .o-link__ttl-h3 {
    font-size: 20px;
    padding: 0 1rem 0.8rem;
    margin: 0 auto 1.8rem;
  }

  .o-link__wrapper .o-link__ttl-h4 {
    font-size: 16px;
    padding: 0 1rem 0.6rem;
    margin: 2rem auto 1.6rem;
  }

  .o-link__wrapper .o-link__text {
    font-size: 15px;
    padding: 0 1.5rem;
  }

  .o-link__wrapper .o-link__list {
    margin: 2rem auto;
    padding: 0 1.5rem;
    gap: 1.5rem;
  }

  .o-link__wrapper .o-link__list li {
    width: 100%;
  }
}

/* == 下層コンテンツ パンフレット == */

.o-brochure-contents__description {
  width: 100%;
  max-width: 1140px;
  margin: 80px auto;
  text-align: center;
  line-height: 2;
}

.o-brochure-contents__wrapper {
  width: 100%;
  max-width: 1140px;
  margin: 80px auto;
}

.o-brochure-contents__submit .btn-black.footer__btn {
  width: 320px;
  height: 56px;
  border-radius: 50px;
  margin: 0 auto;
}

.o-brochure-contents__submit .btn.btn-black.footer__btn {
  width: 320px;
  height: 56px;
  border-radius: 50px;
  margin: 0 auto;
}

.o-brochure-contents__submit .btn.btn-black.footer__btn::after {
  display: none;
}

.o-pamphlet__list {
  display: flex;
  flex-wrap: wrap;
  gap: 80px 33px;
  margin-bottom: 120px;
}

.o-pamphlet__list .o-pamphlet__item {
  width: calc(25% - 25px);
  display: flex;
  flex-direction: column;
}

.o-pamphlet__list .o-pamphlet__title {
  color: var(--line-blue);
  font-size: 16px;
  font-family: var(--font-family-bold);
  line-height: 1.6;
  text-align: center;
  margin: 0 0 25px;
  padding-bottom: 15px;
  border-bottom: 1px solid var(--table-gray);
  height: 4rem;
  display: flex;
  align-items: center;
  justify-content: center;
}

.o-pamphlet__image-box {
  height: 280px;
}

.o-pamphlet__image-box img {
  width: 100%;
  max-height: 280px;
  -o-object-fit: contain;
     object-fit: contain;
}

.o-pamphlet__description {
  font-size: 14px;
  line-height: 1.7;
  height: 95px;
  margin: 26px auto 23px;
  overflow: hidden;
  display: -webkit-box;
  -webkit-line-clamp: 4;
  max-width: 260px;
}

.o-pamphlet__item .o-pamphlet__button-list {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}

.o-pamphlet__button-item .btn-white.btn-pdf {
  border-color: var(--line-blue);
  color: var(--line-blue);
  width: 260px;
  height: 40px;
}

.o-pamphlet__button-item .btn-white.btn-pdf::after {
  background: url(/images/front/icon/icon_pdf-download.svg) no-repeat 0 0;
  width: 16px;
  height: 15px;
  position: relative;
  top: auto;
  left: auto;
  margin-right: 23px;
}

.o-pamphlet__button-item .btn-white.btn-book {
  color: var(--white);
  background-color: var(--line-blue);
  border-color: var(--line-blue);
  width: 260px;
  height: 40px;
}

.o-pamphlet__button-item .btn-white.btn-book::after {
  background: url(/images/front/icon/icon_dejitaru-book.svg) no-repeat 0 0;
  width: 16px;
  height: 16px;
  position: relative;
  top: auto;
  left: auto;
  margin-right: 23px;
}

.o-pamphlet__button-item .btn-white.btn-disabled {
  background-color: #ccc;
  color: var(--white);
  width: 260px;
  height: 40px;
  cursor: default;
  margin: 0 auto;
}

.o-pamphlet__button-item .btn-white.btn-disabled:hover {
  box-shadow: none;
}

.o-pamphlet__button-item .btn-white.btn-pdf span,
.o-pamphlet__button-item .btn-white.btn-book span {
  margin: 0 auto;
}

.o-pamphlet__button-item .search-select {
  width: 260px;
  height: 40px;
  margin: 0 auto;
}

.o-pamphlet__button-item .search-select select {
  width: 260px;
  height: 40px;
  text-align: left;
  cursor: pointer;
}

.o-pamphlet__button-item .btn-top-text {
  font-size: 14px;
  margin: 24px auto 8px;
  max-width: 260px;
}

@media (max-width: 1149px) {
  .o-brochure-contents__wrapper {
    padding: 0 1rem;
  }

  .o-pamphlet__list .o-pamphlet__item {
    width: calc(33.333333% - 23px);
  }
}

@media (max-width: 879px) {
  .o-pamphlet__list .o-pamphlet__item {
    width: calc(50% - 17px);
  }
}

@media (max-width: 576px) {
  .o-brochure-contents__description {
    margin: 2rem auto;
    padding: 0 1rem;
    font-size: 14px;
    line-height: 1.8;
    text-align: left;
  }

  .o-brochure-contents__wrapper {
    margin: 2rem auto 4rem;
    padding: 0 1rem;
  }

  .o-pamphlet__list {
    gap: 4rem;
  }

  .o-pamphlet__list .o-pamphlet__item {
    width: 100%;
  }

  .o-pamphlet__list .o-pamphlet__title {
    height: auto;
  }

  .o-pamphlet__image-box {
    width: 100%;
    height: auto;
  }

  .o-pamphlet__description {
    margin: 1rem auto;
    height: auto;
    -webkit-line-clamp: initial;
  }

  .o-brochure-contents__submit .btn-black.footer__btn {
    width: 100%;
    max-width: 320px;
  }
}

.o-main-about {
  position: relative;
  width: 100%;
  height: 100%;
  padding-top: 5.6rem;
  margin-top: 5.6rem;
  background: url("/images/front/main-area-background-spn.jpg") no-repeat center top;
  background-size: 100%;
}

@media (min-width: 577px) {
  .o-main-about {
    height: 99.9rem;
    padding-top: 10.4rem;
    margin-top: 10.4rem;
    background: url("/images/front/main-area-background.jpg") no-repeat center bottom;
    background-size: cover;
  }
}

@media (min-width: 1281px) {
  .o-main-about {
    height: 97.6rem;
  }
}

.o-main-about__box {
  position: static;
  margin-top: 35rem;
}

@media (min-width: 577px) {
  .o-main-about__box {
    margin-top: 0;
  }
}

.o-main-about--area-map {
  width: 100%;
}

@media (min-width: 577px) {
  .o-main-about--area-map {
    position: absolute;
    top: 0;
    right: 0;
    width: 55rem;
  }
}

.o-main-about--area-map img {
  width: 100%;
  /* stylelint-disable */
  /* stylelint-enable */
}

.o-main-about--area-map img[src*=-sp] {
  display: block;
}

@media (min-width: 577px) {
  .o-main-about--area-map img[src*=-sp] {
    display: none;
  }
}

.o-main-about--area-map img:not([src*=-sp]) {
  display: none;
}

@media (min-width: 577px) {
  .o-main-about--area-map img:not([src*=-sp]) {
    display: block;
  }
}

.o-main-about__info {
  width: 100%;
}

@media (min-width: 577px) {
  .o-main-about__info {
    max-width: 45rem;
  }
}

.o-main-about__info-box {
  display: flex;
}

@media (min-width: 1024px) {
  .o-main-about__info-box {
    padding-left: 2.4rem;
  }
}

@media (min-width: 1200px) {
  .o-main-about__info-box {
    padding-left: 0;
  }
}

.o-main-about__title {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  margin: 0 0 4rem 0;
  font-size: 2.4rem;
  font-weight: 600;
  color: #fff;
  text-align: center;
}

.o-main-about__title br {
  display: none;
}

@media (min-width: 577px) {
  .o-main-about__title {
    justify-content: flex-start;
    -ms-writing-mode: tb-rl;
        writing-mode: vertical-rl;
  }

  .o-main-about__title br {
    display: block;
  }
}

.o-main-about__description {
  padding: 0 2.4rem;
  font-size: 1.4rem;
  font-weight: 600;
  line-height: 2.3;
  color: #fff;
  filter: drop-shadow(0 0 0.6rem rgba(0, 0, 0, 0.6));
}

.o-main-about__description br {
  display: none;
}

.o-main-about__description span {
  display: none;
}

@media (min-width: 769px) {
  .o-main-about__description {
    padding: 0;
    font-size: 1.6rem;
  }

  .o-main-about__description br {
    display: block;
  }

  .o-main-about__description span {
    display: block;
    line-height: 2.3;
  }
}

.o-main-areamap {
  width: 100%;
}

@media (min-width: 577px) {
  .o-main-areamap .o-section__title {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
  }

  .o-main-areamap .o-section__title::after {
    display: block;
    width: 8rem;
    height: 0.4rem;
    margin-top: 2rem;
    content: "";
    background: #1a1a1a;
  }
}

.o-main-areamap__box {
  display: flex;
  flex-direction: column;
  align-items: center;
}

@media (min-width: 1024px) {
  .o-main-areamap__box {
    flex-direction: row;
    align-items: flex-start;
  }
}

.o-main-areamap--japan {
  position: relative;
  width: 100%;
  padding: 3rem;
  margin-bottom: 3rem;
  background: #fff;
  border: 0.1rem solid #262626;
}

.o-main-areamap--japan::after {
  position: absolute;
  top: 1rem;
  right: -1rem;
  z-index: -1;
  display: block;
  width: 100%;
  height: 100%;
  content: "";
  background: #262626;
}

.o-main-areamap--japan img {
  width: 100%;
  height: 100%;
}

@media (min-width: 577px) {
  .o-main-areamap--japan {
    width: 44rem;
    padding: 5rem 3rem 1.5rem 3rem;
  }
}

@media (min-width: 1024px) {
  .o-main-areamap--japan {
    margin-bottom: 0;
  }
}

.o-main-areamap--japan__image {
  width: 100%;
  height: 100%;
}

.o-main-areamap--japan__title {
  display: flex;
  align-items: center;
  justify-content: space-between;
  font-size: 1.6rem;
  font-weight: 600;
  white-space: nowrap;
}

@media (min-width: 577px) {
  .o-main-areamap--japan__title {
    font-size: 1.8rem;
  }
}

.o-main-areamap--japan__title::after {
  display: block;
  width: 100%;
  height: 0.1rem;
  margin-left: 2rem;
  content: "";
  background: #262626;
}

.o-main-areamap--japan__list {
  width: 100%;
  padding-left: 2rem;
}

.o-main-areamap--japan__list dt {
  position: relative;
  font-size: 1.3rem;
  line-height: 1.8;
}

@media (min-width: 577px) {
  .o-main-areamap--japan__list dt {
    font-size: 1.4rem;
  }
}

.o-main-areamap--japan__list dt::before {
  position: absolute;
  top: 0.8rem;
  left: -2rem;
  display: block;
  width: 0.8rem;
  height: 0.8rem;
  content: "";
  background: #b5a553;
  border-radius: 100%;
}

.o-main-areamap--japan__list dd {
  font-size: 1.3rem;
  line-height: 1.8;
}

@media (min-width: 577px) {
  .o-main-areamap--japan__list dd {
    font-size: 1.4rem;
  }
}

.o-main-areamap--kagoshima {
  width: 100%;
}

@media (min-width: 577px) {
  .o-main-areamap--kagoshima {
    width: calc(100% - 12rem);
  }
}

@media (min-width: 1024px) {
  .o-main-areamap--kagoshima {
    width: calc(100% - 48.5rem);
  }
}

.o-main-areamap--kagoshima .o-button {
  width: 100%;
  height: 6rem;
  font-size: 1.3rem;
}

@media (min-width: 577px) {
  .o-main-areamap--kagoshima .o-button {
    width: 40rem;
    margin: 5rem auto 0 auto;
  }
}

.o-main-feature {
  position: relative;
  margin-top: 5.6rem;
  overflow: hidden;
}

@media (min-width: 577px) {
  .o-main-feature {
    margin-top: 0;
  }
}

.o-main-feature__catch-copy {
  font-family: kinuta-maruminold-stdn, serif;
  font-style: normal;
  font-weight: 400;
  margin-bottom: 5.6rem;
  font-size: 2.2rem;
  color: #008071;
  text-align: left;
}

@media (min-width: 577px) {
  .o-main-feature__catch-copy {
    font-size: 2.8rem;
    text-align: center;
  }
}

@media (min-width: 1024px) {
  .o-main-feature__catch-copy {
    position: absolute;
    top: -3rem;
    right: 3rem;
    z-index: 1;
    font-size: 2.6rem;
    text-align: left;
    white-space: nowrap;
    -ms-writing-mode: tb-rl;
        writing-mode: vertical-rl;
  }
}

@media (min-width: 1281px) {
  .o-main-feature__catch-copy {
    font-size: 2.8rem;
  }
}

.o-main-feature__info-box {
  position: relative;
  width: 100%;
  padding: 0 2.4rem;
}

@media (min-width: 577px) {
  .o-main-feature__info-box {
    padding-right: 0;
  }
}

@media (min-width: 1200px) {
  .o-main-feature__info-box {
    padding: 0;
  }
}

.o-main-feature__list {
  display: flex;
  flex-wrap: wrap;
}

@media (min-width: 577px) {
  .o-main-feature__list {
    display: block;
  }
}

@media (min-width: 1200px) {
  .o-main-feature__list.slick-slider .slick-list {
    margin-left: calc(50vw - (114rem / 2));
  }
}

.o-main-feature__list .slick-prev,
.o-main-feature__list .slick-next {
  top: initial;
  display: none !important;
  transform: none;
}

@media (min-width: 577px) {
  .o-main-feature__list .slick-prev,
  .o-main-feature__list .slick-next {
    bottom: -2rem;
    display: block !important;
    width: 4.8rem;
    height: 4.8rem;
  }
}

.o-main-feature__list .slick-prev::before,
.o-main-feature__list .slick-next::before {
  display: block;
  width: 4.8rem;
  height: 4.8rem;
  content: "";
  opacity: 1;
}

.o-main-feature__list .slick-prev {
  left: 5%;
}

@media (min-width: 1024px) {
  .o-main-feature__list .slick-prev {
    left: 20%;
  }
}

@media (min-width: 1281px) {
  .o-main-feature__list .slick-prev {
    left: 30%;
  }
}

.o-main-feature__list .slick-prev::before {
  background: url("/images/front/slider/spot-slider-prev.svg") no-repeat center center/cover;
}

.o-main-feature__list .slick-next {
  right: 5%;
}

@media (min-width: 1024px) {
  .o-main-feature__list .slick-next {
    right: 20%;
  }
}

@media (min-width: 1281px) {
  .o-main-feature__list .slick-next {
    right: 30%;
  }
}

.o-main-feature__list .slick-next::before {
  background: url("/images/front/slider/spot-slider-next.svg") no-repeat center center/cover;
}

.o-main-feature__list .slick-dots {
  position: static;
  margin-top: 3rem;
}

.o-main-feature__list .slick-dots li {
  width: 0.9rem;
  height: 0.9rem;
  margin: 0 1.6rem;
}

.o-main-feature__list .slick-dots li button {
  width: 0.9rem;
  height: 0.9rem;
  padding: 0;
}

.o-main-feature__list .slick-dots li button::before {
  width: 0.9rem;
  height: 0.9rem;
  line-height: initial;
  color: #b8b8b8;
  opacity: 1;
}

.o-main-feature__list .slick-dots li.slick-active button {
  width: 1.4rem;
  height: 1.4rem;
}

.o-main-feature__list .slick-dots li.slick-active button::before {
  width: 1.4rem;
  height: 1.4rem;
  font-size: 1.4rem;
  color: #5d1d4f;
}

.o-main-feature__item {
  width: calc(50% - 0.9rem);
  margin: 0 1.8rem 3.2rem 0;
}

.o-main-feature__item:nth-of-type(2n) {
  margin-right: 0;
}

@media (min-width: 577px) {
  .o-main-feature__item {
    width: 26rem !important;
    margin: 0 4rem 0 0;
  }

  .o-main-feature__item:nth-of-type(2n) {
    margin-right: 4rem;
  }
}

@media (min-width: 1200px) {
  .o-main-feature__item {
    width: 24rem !important;
  }
}

@media (min-width: 1281px) {
  .o-main-feature__item {
    width: 26rem !important;
  }
}

.o-main-feature__anchor {
  position: relative;
  display: block;
  width: 100%;
  height: 100%;
}

.o-main-feature__image {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.o-main-feature__info {
  position: relative;
  width: 100%;
  padding-top: 100%;
  overflow: hidden;
  border-radius: 0.6rem;
}

.o-main-feature__cate-label {
  display: none;
  font-size: 1rem;
  font-weight: 600;
  color: #fff;
  white-space: nowrap;
}

.o-main-feature__title {
  margin-bottom: 1rem;
  font-weight: 600;
  text-align: left;
}

.o-main-feature__title-box {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  display: flex;
  align-items: flex-end;
  justify-content: center;
  padding: 0 1rem;
  background: rgba(0, 0, 0, 0.1);
}

.o-main-feature__description {
  display: none;
}

@media (min-width: 1024px) {
  .o-main-feature__description {
    min-height: 3.5em;
    font-size: 1.6rem;
    line-height: 1.8;
  }

  .o-main-feature__description .u-line-clamp1 {
    display: -webkit-box;
    width: 100%;
    /* autoprefixer: off */
    -webkit-box-orient: vertical;
    /* autoprefixer: on */
    -webkit-line-clamp: 1;
    overflow: hidden;
  }
}

.o-main-movie {
  padding: 11.5rem 0 6rem 0;
  margin: -3.5rem 0 0 0;
  background: url("/images/front/main/bg-movie-pc.jpg") no-repeat top center/cover;
}

@media (min-width: 1024px) {
  .o-main-movie {
    padding-top: 49rem;
    margin: -37rem 0 0 0;
  }
}

.o-main-movie__list {
  display: flex;
  flex-direction: column;
}

@media (min-width: 577px) {
  .o-main-movie__list {
    width: calc(100% - 3rem);
    margin: 0 auto;
  }
}

@media (min-width: 1024px) {
  .o-main-movie__list {
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: flex-start;
    width: calc(100% - 6rem);
  }
}

@media (min-width: 1281px) {
  .o-main-movie__list {
    width: 100%;
  }
}

.o-main-movie__item {
  margin: 0 0 3.5rem 0;
}

@media (min-width: 1024px) {
  .o-main-movie__item {
    width: 33.3%;
    margin: 0 0 4.5rem 0;
  }
}

.o-main-movie__item:last-child {
  margin-bottom: 0;
}

.o-main-movie__anchor {
  display: block;
  width: 100%;
  height: 22.5rem;
}

@media (min-width: 1024px) {
  .o-main-movie__anchor {
    height: 26.5rem;
  }
}

.o-main-movie__thumbnail {
  width: 100%;
  height: 100%;
}

.o-main-movie__caption {
  font-family: "\6E38\660E\671D", "Yu Mincho", YuMincho, "Hiragino Mincho ProN", "HGS\660E\671D  E", "\30E1\30A4\30EA\30AA", Meiryo, serif;
  font-size: 1.7rem;
  color: #fff;
}

@media (min-width: 1024px) {
  .o-main-movie__caption {
    text-align: center;
  }
}

.o-main-ranking {
  position: relative;
  padding-bottom: 5.6rem;
  background-color: #008071;
}

@media (min-width: 577px) {
  .o-main-ranking {
    padding-bottom: 10.4rem;
  }
}

.o-main-ranking-wave {
  display: block;
  width: 100%;
  height: 1.4rem;
  content: "";
  background: #fff url("/images/front/common-wave-line.svg") repeat-x left -0.3rem top;
  background-size: auto 100%;
}

@media (min-width: 1200px) {
  .o-main-ranking-wave {
    height: 1.8rem;
  }
}

@media (min-width: 1281px) {
  .o-main-ranking-wave {
    height: 1.5rem;
  }
}

.o-main-ranking__list {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  padding: 0 2.4rem;
}

@media (min-width: 1200px) {
  .o-main-ranking__list {
    width: 100%;
    padding: 0;
    margin: 0 auto;
  }
}

.o-main-ranking__item {
  width: calc(50% - (1.2rem));
  margin: 0 2.4rem 2rem 0;
}

.o-main-ranking__item:nth-of-type(1) {
  width: 70%;
  margin: 0 auto 3.2rem auto;
}

.o-main-ranking__item:nth-of-type(1) .o-main-ranking__image-thumbnail::before {
  content: "1";
}

@media (min-width: 577px) {
  .o-main-ranking__item {
    width: calc((100% / 5) - (((5 - 1) * 1rem) / 5));
    margin: 0 1rem 0 0;
  }

  .o-main-ranking__item:nth-of-type(1) {
    width: calc((100% / 5) - (((5 - 1) * 1rem) / 5));
    margin: 0 1rem 0 0;
  }

  .o-main-ranking__item:nth-of-type(5n) {
    margin-right: 0;
  }
}

.o-main-ranking__item:nth-of-type(2) .o-main-ranking__image-thumbnail::before {
  content: "2";
}

.o-main-ranking__item:nth-of-type(3) {
  margin-right: 0;
}

@media (min-width: 577px) {
  .o-main-ranking__item:nth-of-type(3) {
    margin-right: 1rem;
  }
}

.o-main-ranking__item:nth-of-type(3) .o-main-ranking__image-thumbnail::before {
  content: "3";
}

.o-main-ranking__item:nth-of-type(4) .o-main-ranking__image-thumbnail::before {
  content: "4";
}

.o-main-ranking__item:nth-of-type(5) .o-main-ranking__image-thumbnail::before {
  content: "5";
}

.o-main-ranking__item:last-child {
  margin-right: 0 !important;
}

.o-main-ranking__anchor {
  position: relative;
  z-index: 1;
  display: block;
}

.o-main-ranking__image {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 5;
  width: 100%;
  height: 100%;
  padding: 1.3rem;
  background-color: #008071;
  border: 0.1rem solid rgba(255, 255, 255, 0.4);
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: 100%;
}

@media (min-width: 577px) {
  .o-main-ranking__image {
    padding: 2rem;
  }
}

.o-main-ranking__image-thumbnail {
  position: relative;
  width: 100%;
  padding-top: 100%;
  margin-bottom: 1.5rem;
}

.o-main-ranking__image-thumbnail::before {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 10;
  display: block;
  font-family: cooper-black-std, serif;
  font-size: 3.6rem;
  font-weight: 400;
  color: #fff;
  content: "";
}

.o-main-ranking__caption {
  display: flex;
  align-items: flex-start;
  justify-content: center;
  min-height: 5rem;
  font-weight: 600;
  color: #fff;
  text-align: left;
}

@media (min-width: 577px) {
  .o-main-ranking__caption {
    text-align: center;
  }
}

.o-main-ranking__link-text {
  align-items: center;
  justify-content: center;
  font-size: 1.6rem;
  color: #fff;
}

.o-main-ranking .o-section__title--english::before {
  background-color: #fff;
}

/* stylelint-disable */

@media (min-width: 577px) {
  _:-ms-lang(x)::-ms-backdrop,
  .o-main-ranking__anchor.rank-no1 .o-main-ranking__image {
    height: 100%;
  }
}

_:-ms-lang(x)::-ms-backdrop,
.o-main-ranking__caption {
  width: 100%;
}

/* stylelint-enable */

.o-main-recommend {
  margin-bottom: 2rem;
}

@media (min-width: 577px) {
  .o-main-recommend {
    margin-bottom: 3.5rem;
  }
}

.o-main-recommend__list {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  padding: 0 2rem;
  margin-bottom: 10rem !important;
}

@media (min-width: 1024px) {
  .o-main-recommend__list {
    margin-bottom: 15rem !important;
  }
}

@media (min-width: 1281px) {
  .o-main-recommend__list {
    padding: 0;
  }
}

.o-main-recommend__item {
  width: calc(100vw) !important;
}

@media (min-width: 577px) {
  .o-main-recommend__item {
    width: 30.5rem !important;
    padding: 0;
    margin: 0 2.7rem;
  }
}

.o-main-recommend__item.digest-slider {
  width: 100vw !important;
  height: initial !important;
}

@media (min-width: 1024px) {
  .o-main-recommend__item.digest-slider {
    width: 78.2rem !important;
  }
}

.o-main-recommend__item.digest-slider .o-main-recommend__image-thumbnail {
  position: relative;
  width: 100%;
  padding-top: 63.3%;
}

@media (min-width: 577px) {
  .o-main-recommend__item.digest-slider .o-main-recommend__image-thumbnail {
    padding-top: 88.5%;
  }
}

.o-main-recommend__item.digest-slider .o-main-recommend__image {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.o-main-recommend__anchor {
  position: relative;
  display: block;
  width: 100%;
  height: 100%;
}

.o-main-recommend__anchor:hover {
  opacity: 1;
}

.o-main-recommend__anchor:hover .o-main-recommend-hover__box {
  opacity: 1;
}

.o-main-recommend__image {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.o-main-recommend__image-thumbnail {
  position: relative;
  width: 100%;
  padding-top: 63.3%;
  margin: 0 0 2rem 0;
}

@media (min-width: 577px) {
  .o-main-recommend__image-thumbnail {
    padding-top: 90.1%;
  }
}

.o-main-recommend__text-box {
  position: relative;
  z-index: 10;
  padding: 0 2rem;
  margin-top: -5.7rem;
}

@media (min-width: 577px) {
  .o-main-recommend__text-box {
    padding: 0 1.4rem;
    margin: 0;
  }
}

.o-main-recommend__caption {
  width: 100%;
  margin: 0 0 1.5rem 0;
  font-weight: 600;
  text-align: left;
}

.o-main-recommend__description {
  line-height: 1.6;
  text-align: left;
}

.o-main-recommend-hover__box {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 10;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  color: #fff;
  background-color: rgba(0, 0, 0, 0.5);
  opacity: 0;
  transition: all 300ms ease-out;
}

.o-main-recommend-hover__caption {
  margin: 0 0 2rem 0;
  font-weight: 600;
}

.o-main-recommend-hover__detail {
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.4rem;
  font-weight: 600;
}

.o-main-recommend-hover__detail:hover {
  color: #fff;
}

.o-main-recommend-hover__detail::after {
  /* stylelint-disable-next-line */
  font-family: FontAwesome;
  font-weight: normal;
  content: "\F101";
  margin: 0 0 0 2rem;
  font-size: 1.5rem;
}

@media (min-width: 1024px) {
  .o-main-recommend-hover__detail {
    font-size: 1.6rem;
  }
}

.o-main-recommend--category {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0.5rem 1rem;
  margin: 0 0 3rem 0.5rem;
  color: #008071;
  background-color: #fff;
  border: 0.1rem solid #b8b8b8;
}

@media (min-width: 577px) {
  .o-main-recommend--category {
    margin: 0 0 2rem 0;
  }
}

.o-main-recommend .slick-list,
.o-main-recommend .slick-track,
.o-main-recommend .slick-slide {
  height: 100%;
}

.o-main-recommend .slick-slide > div {
  height: 100%;
}

.o-main-recommend .slick-prev::before,
.o-main-recommend .slick-next::before {
  display: block;
  width: 1.5rem;
  height: 1.5rem;
  content: "";
}

.o-main-recommend .slick-prev,
.o-main-recommend .slick-next {
  top: calc(50%);
  z-index: 10;
  width: 1.5rem;
  height: 1.5rem;
}

.o-main-recommend .slick-prev {
  top: initial;
  bottom: -19%;
  left: 2rem;
}

.o-main-recommend .slick-prev::before {
  background: url("/images/front/common/button-arrow-black.svg") no-repeat;
  background-size: auto 100%;
  transform: rotate(180deg);
}

@media (min-width: 577px) {
  .o-main-recommend .slick-prev {
    bottom: initial;
    left: 10%;
  }
}

@media (min-width: 1024px) {
  .o-main-recommend .slick-prev {
    left: 2%;
  }
}

@media (min-width: 1200px) {
  .o-main-recommend .slick-prev {
    bottom: -18%;
    left: 36%;
  }
}

@media (min-width: 1281px) {
  .o-main-recommend .slick-prev {
    bottom: -19%;
    left: 37%;
  }
}

.o-main-recommend .slick-next {
  top: initial;
  right: 2rem;
  bottom: -19%;
}

.o-main-recommend .slick-next::before {
  background: url("/images/front/common/button-arrow-black.svg") no-repeat;
  background-size: auto 100%;
}

@media (min-width: 577px) {
  .o-main-recommend .slick-next {
    right: 10%;
    bottom: initial;
  }
}

@media (min-width: 1024px) {
  .o-main-recommend .slick-next {
    right: 2%;
  }
}

@media (min-width: 1200px) {
  .o-main-recommend .slick-next {
    right: 36%;
    bottom: -18%;
  }
}

@media (min-width: 1281px) {
  .o-main-recommend .slick-next {
    right: 37%;
    bottom: -19%;
  }
}

.o-main-recommend .slick-dots {
  bottom: -6rem;
  left: 0;
}

@media (min-width: 577px) {
  .o-main-recommend .slick-dots {
    bottom: -6.6rem;
  }
}

.o-main-recommend .slick-dots li {
  width: 1rem;
  height: 1rem;
  margin: 0 1.5rem;
}

.o-main-recommend .slick-dots li button {
  width: 1rem;
  height: 1rem;
  padding: 0;
}

.o-main-recommend .slick-dots li button::before {
  width: 1rem;
  height: 1rem;
  line-height: 1rem;
  color: #c7c7c7;
  opacity: 1;
}

.o-main-recommend .slick-dots li.slick-active button::before {
  color: #008071;
}

/* stylelint-disable */

_:-ms-lang(x)::-ms-backdrop,
.o-main-recommend__image-thumbnail {
  overflow: hidden;
  background: #fafafa;
}

_:-ms-lang(x)::-ms-backdrop,
.o-main-recommend__image {
  top: 50%;
  left: 50%;
  width: auto;
  height: 100%;
  transform: translate(-50%, -50%);
}

_:-ms-lang(x)::-ms-backdrop,
.o-main-recommend__item {
  margin-right: 2.4rem;
}

_:-ms-lang(x)::-ms-backdrop,
.o-main-recommend__item.digest-slider .o-main-recommend__image {
  top: 50%;
  left: 50%;
  width: auto;
}

/* stylelint-enable */

.o-main-slider {
  position: relative;
  z-index: 1;
  width: 100%;
}

.o-main-slider::before,
.o-main-slider::after {
  position: absolute;
  pointer-events: none;
  content: "";
}

.o-main-slider::before {
  top: 0;
  left: 0;
  z-index: 2;
  width: 100%;
  height: 18rem;
  background: linear-gradient(to bottom, rgba(0, 42, 105, 0.4) 0%, rgba(0, 42, 105, 0) 100%);
}

.o-main-slider::after {
  top: 0;
  left: 0;
  z-index: 1;
  width: 100%;
  height: 99.5%;
  background-color: rgba(0, 42, 105, 0.1);
}

.o-main-slider__item {
  height: 100%;
}

.o-main-slider__anchor {
  position: relative;
  z-index: 1;
  display: block;
  width: 100%;
  height: 100%;
}

.o-main-slider__anchor:hover {
  opacity: 1;
}

.o-main-slider__image {
  position: relative;
  z-index: 10;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.o-main-slider__caption {
  font-size: 1.4rem;
}

@media (min-width: 1024px) {
  .o-main-slider__caption {
    font-size: 1.8rem;
  }
}

body.en .o-main-slider__caption {
  font-family: "Montserrat", sans-serif, Arial !important;
}

.o-main-slider__caption-box {
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: 10;
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  min-height: 4.8rem;
  padding: 1.5rem 4.5rem 1.5rem 1.5rem;
  text-align: left;
  background-color: rgba(0, 0, 0, 0.7);
}

.o-main-slider__caption-box::after {
  position: absolute;
  top: 50%;
  right: 1.5rem;
  display: block;
  width: 1.4rem;
  height: 1.1rem;
  content: "";
  background: url("/images/front/icon/icon-arrow-white.svg") no-repeat center center;
  transform: translateY(-50%);
}

@media (min-width: 577px) {
  .o-main-slider__caption-box {
    bottom: 6rem;
    left: 6rem;
    display: inline-flex;
    width: auto;
    padding: 1.5rem 6.5rem 1.5rem 2.5rem;
    border: 0.1rem solid #fff;
    border-radius: 0.6rem;
  }

  .o-main-slider__caption-box::after {
    right: 2.5rem;
  }
}

.o-main-slider__caption-box > * {
  color: #fff;
}

.o-main-slider__caption--eng {
  font-family: "Josefin Sans", sans-serif;
  font-weight: 300;
  font-size: 1rem;
  font-weight: 600;
  text-align: center;
  letter-spacing: 0.4rem;
  white-space: nowrap;
}

@media (min-width: 577px) {
  .o-main-slider__caption--eng {
    font-size: 1.6rem;
  }
}

.o-main-slider__icon {
  position: absolute;
  bottom: 8.3rem;
  left: 50%;
  width: 100%;
  max-width: 15rem;
  transform: translateX(-50%);
}

@media (min-width: 1024px) {
  .o-main-slider__icon {
    right: -8.5rem;
    bottom: 7.3rem;
    left: initial;
    max-width: 30rem;
  }
}

.o-main-slider__no-link::after {
  content: "";
}

.o-main-slider__scroll-icon {
  position: absolute;
  bottom: 12.5rem;
  left: 50%;
  display: block !important;
  transform: translateX(-50%);
}

.o-main-slider .slick-list,
.o-main-slider .slick-track,
.o-main-slider .slick-slide {
  height: 100%;
}

.o-main-slider .slick-slide > div {
  height: 100%;
}

.o-main-slider .slick-prev::before,
.o-main-slider .slick-next::before {
  display: block;
  width: 4.8rem;
  height: 4.8rem;
  content: "";
}

@media (min-width: 577px) {
  .o-main-slider .slick-prev::before,
  .o-main-slider .slick-next::before {
    width: 3rem;
    height: 4rem;
    filter: drop-shadow(0 0 0.6rem #000);
  }
}

.o-main-slider .slick-prev,
.o-main-slider .slick-next {
  top: initial;
  bottom: -8rem;
  z-index: 99;
  width: 4.8rem;
  height: 4.8rem;
}

@media (min-width: 577px) {
  .o-main-slider .slick-prev,
  .o-main-slider .slick-next {
    top: 50%;
    bottom: initial;
    width: 3rem;
    height: 4rem;
  }
}

.o-main-slider .slick-prev {
  left: 2rem;
}

.o-main-slider .slick-prev::before {
  background: url("/images/front/slider/spot-slider-prev.svg") no-repeat;
  background-size: auto 100%;
}

@media (min-width: 577px) {
  .o-main-slider .slick-prev::before {
    background: url("/images/front/slider/main-slider-prev.svg") no-repeat;
  }
}

@media (min-width: 577px) {
  .o-main-slider .slick-prev {
    left: 6rem;
  }
}

.o-main-slider .slick-next {
  right: 2rem;
}

.o-main-slider .slick-next::before {
  background: url("/images/front/slider/spot-slider-next.svg") no-repeat;
  background-size: auto 100%;
}

@media (min-width: 577px) {
  .o-main-slider .slick-next::before {
    background: url("/images/front/slider/main-slider-next.svg") no-repeat;
  }
}

@media (min-width: 577px) {
  .o-main-slider .slick-next {
    right: 6rem;
  }
}

.o-main-slider .slick-dotted.slick-slider {
  margin-bottom: 0;
}

.o-main-slider .slick-dots {
  bottom: -4rem;
  z-index: 12;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  padding: 0 18vw;
}

@media (min-width: 577px) {
  .o-main-slider .slick-dots {
    bottom: 3.2rem;
    left: 50%;
    flex-wrap: nowrap;
    width: auto;
    padding: 0;
    text-align: center;
    filter: drop-shadow(0 0.1rem 0.8rem #888);
    transform: translateX(-50%);
  }
}

.o-main-slider .slick-dots li {
  width: 0.8rem;
  height: 0.8rem;
}

@media (min-width: 577px) {
  .o-main-slider .slick-dots li {
    margin: 0 1.5rem;
  }
}

.o-main-slider .slick-dots li button {
  width: 5rem;
  height: auto;
  padding: initial;
}

.o-main-slider .slick-dots li button::before {
  display: block;
  width: 0.8rem;
  height: 0.8rem;
  content: "";
  background-color: #b8b8b8;
  border-radius: 10rem;
  opacity: 1;
}

@media (min-width: 577px) {
  .o-main-slider .slick-dots li button::before {
    background-color: #fff;
  }
}

.o-main-slider .slick-dots li.slick-active {
  width: 1.2rem;
  height: 1.2rem;
}

.o-main-slider .slick-dots li.slick-active button::before {
  width: 1.2rem;
  height: 1.2rem;
  background-color: #cc4c40;
}

@media (min-width: 577px) {
  .o-main-slider .slick-dots li.slick-active button::before {
    background-color: #5d1d4f;
  }
}

.o-main-slider__copy-box {
  position: absolute;
  right: 2rem;
  bottom: 8rem;
  z-index: 10;
  width: 19.5rem;
}

.o-main-slider__copy-box img {
  width: 100%;
}

@media (min-width: 1024px) {
  .o-main-slider__copy-box {
    right: 6rem;
    width: 39.5rem;
  }
}

/* stylelint-disable */

@media (min-width: 769px) {
  _:-ms-lang(x)::-ms-backdrop,
  .o-main-slider {
    margin-top: 0 !important;
  }
}

_:-ms-lang(x)::-ms-backdrop,
.o-main-slider__item {
  background: #f5f5f5;
}

_:-ms-lang(x)::-ms-backdrop,
.o-main-slider__anchor {
  overflow: hidden;
}

_:-ms-lang(x)::-ms-backdrop,
.o-main-slider .slick-next {
  margin-top: 3rem;
}

_:-ms-lang(x)::-ms-backdrop,
.o-main-slider .slick-prev {
  margin-top: 3rem;
}

/* stylelint-enable */

.o-main-theme {
  position: relative;
  padding: 0 2.4rem;
  margin-bottom: 5.6rem;
}

@media (min-width: 1200px) {
  .o-main-theme {
    padding: 0;
    margin-bottom: 10.4rem;
  }
}

.o-main-theme__list {
  display: flex;
  flex-wrap: wrap;
  width: 100%;
  margin: 0 auto 4.8rem auto;
}

@media (min-width: 1200px) {
  .o-main-theme__list {
    margin: 0 auto 4rem auto;
  }
}

.o-main-theme__item {
  /* stylelint-disable */
  width: calc((100% / 1) - (((1 - 1) * 0rem) / 1));
  margin: 0 0rem 4rem 0;
  /* stylelint-enable */
}

.o-main-theme__item:nth-of-type(1n) {
  margin-right: 0;
}

@media (min-width: 577px) {
  .o-main-theme__item {
    width: calc((100% / 2) - (((2 - 1) * 6rem) / 2));
    margin: 0 6rem 8rem 0;
  }

  .o-main-theme__item:nth-of-type(1n) {
    margin-right: 6rem;
  }

  .o-main-theme__item:nth-of-type(2n) {
    margin-right: 0;
  }
}

@media (min-width: 577px) {
  .o-main-theme__item:nth-of-type(2) {
    margin-top: 7rem;
  }

  .o-main-theme__item:nth-of-type(3) {
    margin-top: -7rem;
  }

  .o-main-theme__item:last-child {
    margin-bottom: 0;
  }
}

.o-main-theme__anchor {
  position: relative;
  display: block;
  width: 100%;
  height: 100%;
  text-align: center;
}

.o-main-theme__image {
  overflow: hidden;
  border-radius: 1.2rem;
}

.o-main-theme__caption {
  display: flex;
  flex-direction: column-reverse;
  width: 100%;
  margin: 0 0 2.1rem 0;
  font-weight: 600;
  text-align: left;
}

.o-main-theme__caption-box .ml10 {
  width: 1.5rem;
}

/* stylelint-disable */

_:-ms-lang(x)::-ms-backdrop,
.o-main-theme__image-thumbnail {
  overflow: hidden;
}

/* stylelint-enable */

.o-main-time {
  margin-bottom: 5.6rem;
}

@media (min-width: 577px) {
  .o-main-time {
    margin-bottom: 10.4rem;
  }
}

.o-main-time--change__list {
  display: flex;
  align-items: center;
  justify-content: center;
  margin-right: -2rem;
  border-bottom: none;
}

@media (min-width: 577px) {
  .o-main-time--change__list {
    position: absolute;
    top: -1.4rem;
    right: 0;
    z-index: 10;
    justify-content: flex-start;
    margin-right: 0;
  }
}

.o-main-time--change__item {
  margin-right: 2rem;
}

@media (min-width: 577px) {
  .o-main-time--change__item {
    flex: 1;
  }
}

.o-main-time--change__item:last-child {
  margin-right: 0;
}

.o-main-time--change__anchor {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 5rem;
  height: 5rem;
  font-size: 2rem;
  color: #1a1a1a !important;
  border: 0.1rem solid #b8b8b8 !important;
  border-radius: 100% !important;
}

@media (min-width: 577px) {
  .o-main-time--change__anchor {
    font-size: 1.8rem;
  }
}

.o-main-time--change__anchor.active {
  width: 7rem;
  height: 7rem;
  font-size: 2.4rem;
  color: #fff !important;
  background-color: #008071 !important;
  border-color: #008071 !important;
}

.o-main-time__list {
  display: flex;
  flex-wrap: wrap;
  padding: 0 2rem;
}

@media (min-width: 1200px) {
  .o-main-time__list {
    padding: 0;
  }
}

.o-main-time__list .u-image-thumbnail {
  padding-top: 100%;
}

@media (min-width: 577px) {
  .o-main-time__list .u-image-thumbnail {
    padding-top: 66.6%;
  }
}

.o-main-time__list .u-image-thumbnail img {
  border-radius: 0.8rem;
}

.o-main-time__item {
  width: calc(50% - (1.7rem / 2));
  margin: 0 1.7rem 3.2rem 0;
}

.o-main-time__item:nth-of-type(3),
.o-main-time__item:nth-of-type(5) {
  margin-right: 0;
}

@media (min-width: 577px) {
  .o-main-time__item {
    width: 23.6%;
    margin: 0 0 5.6rem 3rem;
  }
}

@media (min-width: 1024px) {
  .o-main-time__item {
    margin-left: 5.6rem;
  }
}

.o-main-time__item:nth-of-type(1) {
  width: 100%;
  margin-right: 0;
}

.o-main-time__item:nth-of-type(1) .u-image-thumbnail {
  padding-top: 66.6%;
}

@media (min-width: 577px) {
  .o-main-time__item:nth-of-type(1) {
    order: 3;
    width: 42.1%;
    margin: 0 0 0 4rem;
  }
}

@media (min-width: 1024px) {
  .o-main-time__item:nth-of-type(1) {
    width: 41%;
    margin-left: 6rem;
  }
}

@media (min-width: 1200px) {
  .o-main-time__item:nth-of-type(1) {
    width: 42.1%;
    margin-left: 6.4rem;
  }
}

@media (min-width: 577px) {
  .o-main-time__item:nth-of-type(2) {
    order: 1;
    margin-left: 0;
  }
}

@media (min-width: 577px) {
  .o-main-time__item:nth-of-type(3) {
    order: 2;
  }
}

@media (min-width: 577px) {
  .o-main-time__item:nth-of-type(4) {
    order: 4;
    margin: -17.7rem 0 0 0;
  }
}

@media (min-width: 577px) {
  .o-main-time__item:nth-of-type(5) {
    order: 5;
    margin-top: -17.7rem;
    margin-bottom: 0;
  }
}

.o-main-time__title {
  margin: 1.4rem 0 0 0;
  font-size: 1.4rem;
  font-weight: 600;
}

.o-main-time__item:nth-of-type(1) .o-main-time__title {
  margin: 2rem 0;
  font-size: 1.8rem;
}

@media (min-width: 577px) {
  .o-main-time__title {
    font-size: 1.6rem;
  }

  .o-main-time__item:nth-of-type(1) .o-main-time__title {
    font-size: 2rem;
  }
}

.o-main-time__description {
  font-size: 1.4rem;
}

.o-marker-dialog {
  width: 13.1rem;
}

.o-marker-dialog__title {
  font-size: 0.95rem;
  text-align: left;
  margin-bottom: 0.5rem;
}

.o-marker-dialog__image {
  width: 100%;
  height: 8.8rem;
  border-radius: 0.6rem;
  -o-object-fit: cover;
  object-fit: cover;
}

.o-marker-dialog__btn {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 6.3rem;
  height: 1.6rem;
  font-size: 0.75rem;
  border-radius: 0.3rem;
}

.o-marker-dialog__btn--detail {
  color: #fff;
  background-color: var(--dark);
}

.o-marker-dialog__btn--detail:hover {
  color: #fff;
}

.o-marker-dialog__btn--route {
  color: #fff;
  background-color: var(--table-gray);
  color: var(--dark);
}

.o-marker-dialog__btn--route:hover {
  color: #fff;
}

.o-marker-dialog ul {
  margin: 0.8rem 0;
}

.gm-style .gm-style-iw-c {
  max-width: initial !important;
  max-height: initial !important;
}

.gm-style .gm-style-iw-d {
  max-height: initial !important;
}

.o-model-course__main-visual {
  width: 100%;
  max-width: 1366px;
  margin: 0 auto 80px;
  display: flex;
}

.o-model-course__main-visual .o-model-course__main-visual-image {
  width: 100%;
  max-width: 768px;
}

.o-model-course__main-visual .o-model-course__main-visual-image img {
  width: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}

.o-model-course__main-visual .o-model-course__main-visual-contents {
  width: 100%;
  max-width: 598px;
  padding: 0 64px;
}

.o-model-course__main-visual .o-model-course__main-visual-ttl {
  width: 100%;
  position: relative;
  font-size: 24px;
  line-height: 1.6;
  padding-bottom: 26px;
  margin: 25px 0 34px;
}

.o-model-course__main-visual .o-model-course__main-visual-ttl::after {
  content: "";
  width: calc(100% + 160px);
  height: 2px;
  display: block;
  background-color: var(--dark);
  position: absolute;
  bottom: 0;
  left: -96px;
}

.o-model-course__main-visual .o-model-course__main-visual-description--tag {
  display: flex;
  flex-wrap: wrap;
  gap: 16px;
}

.o-model-course__main-visual .o-model-course__main-visual-description--tag li {
  border: 1px solid var(--line-blue);
  color: var(--line-blue);
  font-size: 14px;
  line-height: 1.2;
  padding: 12px 15px;
  font-family: var(--font-family-bold);
  font-weight: bold;
}

.o-model-course__main-visual .o-model-course__main-visual-description--tag li span:first-child::after {
  content: "|";
  display: inline-block;
  padding: 0 16px;
}

.o-model-course__main-visual .o-model-course__main-visual-description p {
  margin: 0 0 24px;
  line-height: 2;
}

@media (max-width: 1023px) {
  .o-model-course__main-visual {
    margin-bottom: 4rem;
  }

  .o-model-course__main-visual .o-model-course__main-visual-contents {
    padding: 0 2rem;
  }

  .o-model-course__main-visual .o-model-course__main-visual-ttl {
    font-size: 20px;
    margin: 1rem 0 1.5rem;
  }

  .o-model-course__main-visual .o-model-course__main-visual-ttl::after {
    width: calc(100% + 6rem);
    left: -4rem;
  }

  .o-model-course__main-visual .o-model-course__main-visual-description p {
    font-size: 14px;
  }

  .o-model-course__main-visual .o-model-course__main-visual-description--tag li {
    font-size: 12px;
  }
}

@media (max-width: 768px) {
  .o-model-course__main-visual .o-model-course__main-visual-ttl {
    font-size: 18px;
  }
}

@media (max-width: 576px) {
  .o-model-course__main-visual {
    flex-direction: column;
  }
}

.o-movie-gallery__list {
  display: flex;
  flex-wrap: wrap;
}

.o-movie-gallery__list div[class*=-image-thumbnail] iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.o-movie-gallery__item {
  /* stylelint-disable */
  width: calc((100% / 1) - (((1 - 1) * 0rem) / 1));
  margin: 0 0rem 4rem 0;
  /* stylelint-enable */
  border: 0.1rem solid #b8b8b8;
}

.o-movie-gallery__item:nth-of-type(1n) {
  margin-right: 0;
}

@media (min-width: 577px) {
  .o-movie-gallery__item {
    width: calc((100% / 4) - (((4 - 1) * 2.4rem) / 4));
    margin: 0 2.4rem 8rem 0;
  }

  .o-movie-gallery__item:nth-of-type(1n) {
    margin-right: 2.4rem;
  }

  .o-movie-gallery__item:nth-of-type(4n) {
    margin-right: 0;
  }
}

.o-movie-gallery__item h3 {
  color: #666;
}

.o-movie-gallery__item > p:empty {
  display: none;
}

.o-movie-gallery__item iframe {
  width: calc(100% + 0.2rem);
  height: 19rem;
  margin: -0.1rem;
}

@media (min-width: 769px) {
  .o-movie-gallery__item iframe {
    height: 15rem;
  }
}

.o-other-page {
  text-align: left;
}

.o-other-page__title {
  font-family: "\6E38\660E\671D", "Yu Mincho", YuMincho, "Hiragino Mincho ProN", "HGS\660E\671D  E", "\30E1\30A4\30EA\30AA", Meiryo, serif;
  font-size: 2rem;
  font-weight: 600;
  color: #b5a7a7;
}

@media (min-width: 577px) {
  .o-other-page__title {
    font-size: 3rem;
  }
}

.o-other-page__description {
  font-size: 1.6rem;
  line-height: 1.7;
}

/* == 下層コンテンツ ページネーション == */

.o-paging {
  margin-bottom: 120px;
}

.o-paging__list {
  display: flex;
  justify-content: center;
  align-items: center;
  color: var(--dark);
  gap: 16px;
  font-size: 18px;
  padding: 0;
  margin: 0;
}

.o-paging__list a {
  color: var(--dark);
  text-decoration: none;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 48px;
  height: 48px;
  border: 1px solid var(--dark);
  border-radius: 100px;
}

.o-paging__list .o-paging__item-active a {
  background-color: var(--dark);
  color: var(--white);
}

.o-paging__list .o-paging__item-prev a,
.o-paging__list .o-paging__item-next a {
  border: none;
}

.o-paging__list .o-paging__item-prev a span,
.o-paging__list .o-paging__item-next a span {
  font-size: 0;
  width: 8px;
  height: 13px;
}

.o-paging__list .o-paging__item-prev a span.icon-arrow-left,
.o-paging__list .o-paging__item-next a span.icon-arrow-left {
  background: url(/images/front/icon/icon-arrow-left.svg) no-repeat 0 0;
}

.o-paging__list .o-paging__item-prev a span.icon-arrow-right,
.o-paging__list .o-paging__item-next a span.icon-arrow-right {
  background: url(/images/front/icon/icon-arrow-right.svg) no-repeat 0 0;
}

.o-paging__list .o-paging__item-prev.o-paging__item-disabled a,
.o-paging__list .o-paging__item-next.o-paging__item-disabled a {
  pointer-events: none;
}

.o-paging__list .o-paging__item-prev.o-paging__item-disabled a span.icon-arrow-left,
.o-paging__list .o-paging__item-next.o-paging__item-disabled a span.icon-arrow-right {
  filter: opacity(0.5);
}

@media (max-width: 768px) {
  .o-paging__list .o-paging__item:nth-child(n+5) {
    display: none;
  }

  .o-paging__list .o-paging__item:last-child {
    display: block;
  }
}

.o-photo-dl {
  counter-reset: number1 number2 number3;
}

.o-photo-dl-guide__title {
  display: flex;
  flex-direction: column;
  padding-left: 2rem;
  margin-bottom: 4.4rem;
  font-weight: 600;
  color: #008071;
  border-left: 0.1rem solid #008071;
}

@media (min-width: 1024px) {
  .o-photo-dl-guide__title {
    flex-direction: row;
    align-items: center;
  }
}

.o-photo-dl-guide__title span {
  margin-top: 1rem;
  font-weight: normal;
  color: #333;
}

@media (min-width: 1024px) {
  .o-photo-dl-guide__title span {
    margin-top: 0;
  }
}

.o-photo-dl-guide__list {
  display: flex;
  flex-direction: column;
}

@media (min-width: 577px) {
  .o-photo-dl-guide__list {
    flex-direction: row;
    align-items: stretch;
    justify-content: space-evenly;
    margin-bottom: 6.4rem;
  }
}

.o-photo-dl-guide__list-title {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  max-width: 12.5rem;
  min-height: 2.5rem;
  margin: 0 auto 2rem auto;
  font-weight: 600;
  color: #fff;
  background: #008071;
  border-radius: 10rem;
}

.o-photo-dl-guide__item {
  /* stylelint-disable */
  width: calc((100% / 1) - (((1 - 1) * 0rem) / 1));
  margin: 0 0rem 5rem 0;
  /* stylelint-enable */
  position: relative;
  border: 0.1rem solid #008071;
}

.o-photo-dl-guide__item:nth-of-type(1n) {
  margin-right: 0;
}

@media (min-width: 577px) {
  .o-photo-dl-guide__item {
    width: calc((100% / 3) - (((3 - 1) * 5rem) / 3));
    margin: 0 5rem 0rem 0;
  }

  .o-photo-dl-guide__item:nth-of-type(1n) {
    margin-right: 5rem;
  }

  .o-photo-dl-guide__item:nth-of-type(3n) {
    margin-right: 0;
  }
}

.o-photo-dl-guide__item:last-child::after {
  display: none;
}

.o-photo-dl-guide__item::before {
  position: absolute;
  top: 0;
  left: 0;
  width: 0;
  height: 0;
  content: "";
  border-color: #008071 transparent transparent transparent;
  border-style: solid;
  border-width: 4.8rem 4.8rem 0 0;
}

.o-photo-dl-guide__item:nth-of-type(1) div {
  position: relative;
  padding: 2rem 2rem 2rem 4rem;
}

@media (min-width: 577px) {
  .o-photo-dl-guide__item:nth-of-type(1) div {
    padding: 4rem 3rem;
  }
}

.o-photo-dl-guide__item:nth-of-type(1) div::before {
  position: absolute;
  top: 0.2rem;
  left: 1rem;
  width: 4.8rem;
  height: 4.8rem;
  font-size: 1.6rem;
  font-weight: 600;
  color: #fff;
  content: "1";
}

.o-photo-dl-guide__item:nth-of-type(2) div {
  position: relative;
  padding: 2rem 2rem 2rem 4rem;
}

@media (min-width: 577px) {
  .o-photo-dl-guide__item:nth-of-type(2) div {
    padding: 4rem 3rem;
  }
}

.o-photo-dl-guide__item:nth-of-type(2) div::before {
  position: absolute;
  top: 0.2rem;
  left: 1rem;
  width: 4.8rem;
  height: 4.8rem;
  font-size: 1.6rem;
  font-weight: 600;
  color: #fff;
  content: "2";
}

.o-photo-dl-guide__item:nth-of-type(3) div {
  position: relative;
  padding: 2rem 2rem 2rem 4rem;
}

@media (min-width: 577px) {
  .o-photo-dl-guide__item:nth-of-type(3) div {
    padding: 4rem 3rem;
  }
}

.o-photo-dl-guide__item:nth-of-type(3) div::before {
  position: absolute;
  top: 0.2rem;
  left: 1rem;
  width: 4.8rem;
  height: 4.8rem;
  font-size: 1.6rem;
  font-weight: 600;
  color: #fff;
  content: "3";
}

.o-photo-dl-guide__item::after {
  position: absolute;
  bottom: -2.4rem;
  left: 50%;
  display: block;
  width: 3.5rem;
  height: 1.1rem;
  content: "";
  background: url("/images/front/icon/guide-list-arrow.svg") no-repeat center center/contain;
  transform: translateX(-50%) rotate(90deg);
}

@media (min-width: 577px) {
  .o-photo-dl-guide__item::after {
    top: 50%;
    right: -3.5rem;
    bottom: initial;
    left: initial;
    transform: translateY(-50%) rotate(0deg);
  }
}

.o-photo-dl-guide--library {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
  width: 100%;
}

.o-photo-dl-guide--library br {
  display: none;
}

@media (min-width: 577px) {
  .o-photo-dl-guide--library {
    flex-direction: row;
    align-items: center;
    justify-content: flex-start;
  }

  .o-photo-dl-guide--library br {
    display: block;
  }
}

.o-photo-dl-guide--library img {
  width: 14rem;
  margin: 0 0 1rem 0;
}

@media (min-width: 577px) {
  .o-photo-dl-guide--library img {
    margin: 0 4rem 0 0;
  }
}

.o-photo-dl--add-list {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 1.5rem 0;
  background: #e6e6e6;
}

.o-photo-dl--add-list .o-form__checkbox-label {
  color: #000;
}

.o-photo-dl--add-list.is-detail {
  max-width: 30rem;
  margin-right: auto;
  margin-left: auto;
}

.o-photo-dl--add-list--added {
  background: transparent;
  border: 0.1rem solid #707072;
}

.o-photo-dl-detail__info {
  display: flex;
  flex-direction: column;
}

@media (min-width: 577px) {
  .o-photo-dl-detail__info {
    flex-direction: row;
  }
}

.o-photo-dl-detail__info--left {
  width: 100%;
  margin: 0 0 2rem 0;
}

@media (min-width: 577px) {
  .o-photo-dl-detail__info--left {
    width: 52%;
  }
}

.o-photo-dl-detail__info--left img {
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.o-photo-dl-detail__info--right {
  width: 100%;
}

@media (min-width: 577px) {
  .o-photo-dl-detail__info--right {
    width: calc(52% - 6.4rem);
    margin-left: 6.4rem;
  }
}

.o-photo-dl-detail__info-table {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  width: 100%;
}

@media (min-width: 577px) {
  .o-photo-dl-detail__info-table {
    flex-direction: row;
  }
}

.o-photo-dl-detail__info-table dt {
  display: flex;
  width: 100%;
  padding: 2rem 0 2rem 1.5rem;
  font-weight: 600;
  color: #008071;
  text-align: left;
  border-bottom: 0.1rem dashed #008071;
}

@media (min-width: 577px) {
  .o-photo-dl-detail__info-table dt {
    width: 25%;
    min-height: 5rem;
  }
}

.o-photo-dl-detail__info-table dd {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  width: 100%;
  min-height: 5rem;
  padding: 2rem 0.8rem;
  color: #333;
  border-bottom: 0.1rem dashed #008071;
}

@media (min-width: 577px) {
  .o-photo-dl-detail__info-table dd {
    width: calc(75% - 0.1rem);
    margin-left: 0.1rem;
  }
}

.o-photo-dl-detail__info-anchor {
  color: #333;
  display: block;
  text-decoration: underline;
}

.o-photo-dl-detail__info-anchor:hover {
  color: #333;
}

.o-photo-dl-detail__info-anchor + .o-photo-dl-detail__info-anchor {
  margin-left: 1rem;
}

.o-photo-dl .o-digest--tile__anchor {
  height: auto;
}

.o-photo-dl .o-digest--tile__anchor:hover {
  opacity: 1;
}

.o-photo-dl .o-digest--tile__image-box {
  position: relative;
}

.o-photo-dl-term {
  padding: 2.4rem 3.2rem;
  border: 0.1rem solid #b8b8b8;
}

@media (min-width: 1281px) {
  .o-photo-dl-term {
    width: 100%;
    padding: 4.8rem 6.4rem;
  }
}

.o-photo-dl-term__description {
  margin-bottom: 3rem;
}

.o-photo-dl-term__description a {
  color: #235d9b;
  text-decoration: underline;
}

.o-photo-dl-term__title {
  margin-bottom: 0.5rem;
}

.o-photo-dl-term__title::before {
  content: counter(number1) ".";
  counter-increment: number1;
}

.o-photo-dl-term__list {
  margin-bottom: 3rem;
}

.o-photo-dl-term__item {
  padding-left: 2.5rem;
  text-indent: -2.2rem;
}

.o-photo-dl-term__item::before {
  content: "(" counter(number2) ")";
  counter-increment: number2;
}

.o-photo-dl-term__item2 {
  padding-left: 2.5rem;
  text-indent: -2.2rem;
}

.o-photo-dl-term__item2::before {
  content: "(" counter(number3) ")";
  counter-increment: number3;
}

.o-photo-dl-term__credit {
  width: 100%;
  padding: 2rem 2.5rem;
  border: 0.1rem solid #000;
}

@media (min-width: 577px) {
  .o-photo-dl-term__credit {
    margin-left: 1.5rem;
  }
}

.o-photo-dl-form__list {
  margin-bottom: 5rem;
  border-top: 0.1rem solid #6c707a;
}

.o-photo-dl-form__item {
  padding: 1rem;
  border-bottom: 0.1rem solid #6c707a;
}

@media (min-width: 577px) {
  .o-photo-dl-form__item {
    padding: 1rem 1rem 1rem 2rem;
  }
}

.o-photo-dl--is-form .o-photo-dl-detail__info-table dt {
  position: relative;
  justify-content: flex-start;
  padding-right: 1rem;
  padding-left: 1rem;
}

@media (min-width: 577px) {
  .o-photo-dl--is-form .o-photo-dl-detail__info-table dt {
    padding-left: 3rem;
  }
}

.o-photo-dl--is-form .o-photo-dl-detail__info-table dd {
  padding: 2rem 1rem;
}

@media (min-width: 577px) {
  .o-photo-dl--is-form .o-photo-dl-detail__info-table dd {
    padding: 2rem 3rem;
  }
}

.o-photo-dl--is-form .o-form__checkbox-label {
  color: #000;
}

.o-photo-dl--photo-library__title {
  padding-top: 2rem;
  margin: 2rem 0 4rem 0;
  font-weight: 600;
  color: #008071;
  border-top: 0.3rem solid #008071;
}

.o-photo-dl--photo-library__list {
  display: flex;
  flex-wrap: wrap;
}

.o-photo-dl--photo-library__item {
  width: calc((100% / 4) - (((4 - 1) * 1.5rem) / 4));
  margin: 0 1.5rem 2rem 0;
}

.o-photo-dl--photo-library__item:nth-of-type(4n) {
  margin-right: 0;
}

@media (min-width: 577px) {
  .o-photo-dl--photo-library__item {
    width: calc((100% / 8) - (((8 - 1) * 1.5rem) / 8));
    margin: 0 1.5rem 2rem 0;
  }

  .o-photo-dl--photo-library__item:nth-of-type(4n) {
    margin-right: 1.5rem;
  }

  .o-photo-dl--photo-library__item:nth-of-type(8n) {
    margin-right: 0;
  }
}

.o-photo-dl--photo-library__item a {
  display: block;
}

.o-photo-dl--photo-library__item img {
  width: 100%;
  height: auto;
  -o-object-fit: cover;
     object-fit: cover;
}

/* stylelint-disable */

_:-ms-lang(x)::-ms-backdrop,
.o-photo-dl-guide__item::after {
  bottom: auto;
  left: auto;
}

/* stylelint-enable */

.o-port-info__title {
  display: flex;
  width: 100%;
  padding: 0 0 0.5rem 2rem;
  margin-bottom: 3rem;
  border-bottom: 0.2rem solid #235d9b;
}

.o-port-info__title .fa {
  color: #6c707a;
}

.o-port-info__table {
  width: 100%;
  border-top: 0.1rem solid #6c707a;
  border-left: 0.1rem solid #6c707a;
}

.o-port-info__table th {
  padding: 1rem 2rem;
  text-align: center;
  vertical-align: middle;
  background: #f2f2f2;
  border-right: 0.1rem solid #6c707a;
  border-bottom: 0.1rem solid #6c707a;
}

.o-port-info__table td {
  padding: 1.5rem 2rem;
  text-align: center;
  vertical-align: middle;
  border-right: 0.1rem solid #6c707a;
  border-bottom: 0.1rem solid #6c707a;
}

.o-port-info__table td a {
  color: #235d9b;
  text-decoration: underline;
}

.o-port-info__table td a:hover {
  text-decoration: none;
}

.o-port-info__table--pc {
  display: none;
}

@media (min-width: 577px) {
  .o-port-info__table--pc {
    display: table;
  }
}

.o-port-info__table--sp {
  display: table;
}

.o-port-info__table--sp caption {
  padding-left: 1rem;
  color: #000;
  caption-side: top;
}

@media (min-width: 577px) {
  .o-port-info__table--sp {
    display: none;
  }
}

.o-ranking-change {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}

.o-ranking-change__title {
  font-size: 1.1rem;
}

.o-ranking-change__title:empty {
  display: none;
}

@media (min-width: 1024px) {
  .o-ranking-change__title {
    font-size: 1.3rem;
  }
}

.o-ranking-change__list {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 32rem;
  height: 3.2rem;
  margin: 0 auto;
  border: 1px solid #262626;
  border-right: none;
}

@media (min-width: 1024px) {
  .o-ranking-change__list {
    width: 36rem;
    height: 3.6rem;
  }
}

.o-ranking-change__item {
  display: flex;
  align-items: center;
  justify-content: center;
  float: none;
  width: 50%;
  height: 100%;
  margin: 0;
  border-right: 1px solid #262626;
}

.o-ranking-change__item a {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  padding: 0;
  margin: 0;
  font-size: 1.1rem;
  line-height: initial;
  background-color: #fff;
  border: none;
  border-radius: 0;
}

@media screen and (min-width: 1025px) {
  .o-ranking-change__item a {
    font-size: 1.5rem;
    transition: ease-in-out 0.3s;
  }
}

.o-ranking-change__item a.active {
  color: #fff;
  background-color: #262626;
}

.o-ranking-change__item a:hover {
  color: #fff;
  text-decoration: none;
  background-color: #262626;
}

.o-reserve__btn-list {
  display: flex;
  flex-wrap: wrap;
}

.o-reserve__btn-item {
  margin: 0 0 1.5rem 0;
}

.o-reserve__btn-item:last-child {
  margin: 0;
}

@media (min-width: 577px) {
  .o-reserve__btn-item {
    width: calc(33.3% - (4rem / 3));
    margin: 0 2rem 2rem 0;
  }

  .o-reserve__btn-item:nth-of-type(3n) {
    margin-right: 0;
  }
}

@media (min-width: 1024px) {
  .o-reserve__btn-item {
    width: calc(20% - (8rem / 5));
  }

  .o-reserve__btn-item:nth-of-type(3n) {
    margin-right: 2rem;
  }
}

.o-reserve__condition-box {
  display: flex;
  flex-direction: column;
}

@media (min-width: 1024px) {
  .o-reserve__condition-box {
    flex-direction: row;
    justify-content: space-between;
  }
}

.o-reserve__condition-box .o-heading-low-type8::before {
  position: absolute;
  left: 0;
  display: block;
  width: 0.4rem;
  height: 100%;
  content: "";
  background-color: #008071;
}

.o-reserve__condition-box--left {
  width: 100%;
}

@media (min-width: 1024px) {
  .o-reserve__condition-box--left {
    width: 50%;
  }
}

.o-reserve__condition-box--right {
  width: 100%;
}

@media (min-width: 1024px) {
  .o-reserve__condition-box--right {
    width: 50%;
  }
}

.o-reserve__form-list {
  display: flex;
  align-items: center;
}

.o-reserve__form-list .form-control {
  border-color: #a6a6a6;
}

.o-reserve__form-title {
  min-width: 11rem;
  font-size: 1.6rem;
}

.o-reserve__form-item {
  display: flex;
  align-items: center;
  width: 100%;
  font-size: 1.6rem;
  white-space: nowrap;
}

.o-reserve__form-item .form-group {
  width: 100%;
  margin-bottom: 0;
}

.o-reserve__condition-list {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}

.o-reserve__condition-item {
  width: calc(50% - 0.5rem);
  height: 4rem;
}

.o-reserve__condition-checkbox {
  display: none;
}

.o-reserve__condition-checkbox:checked + .o-reserve__condition-label {
  color: #fff;
  background-color: #008071;
  border-color: #008071;
}

.o-reserve__condition-label {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  overflow: hidden;
  font-size: 1.4rem;
  font-weight: 600;
  color: #6c707a;
  text-overflow: ellipsis;
  white-space: nowrap;
  cursor: pointer;
  border: 0.2rem solid #6c707a;
}

.o-reserve__link-box {
  width: calc(100vw - 3rem);
  max-width: 114rem;
  margin: 0 auto 3rem auto;
  border: 0.1rem solid #a6a6a6;
}

@media (min-width: 577px) {
  .o-reserve__link-box {
    width: calc(100% - 6rem);
    padding: 0;
  }
}

.o-reserve__link-box-title {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  min-height: 5rem;
  padding: 1rem 1.5rem;
  font-size: 1.6rem;
  color: #fff;
  background-color: #1a1a1a;
}

@media (min-width: 1024px) {
  .o-reserve__link-box-title {
    padding: 0;
    font-size: 1.8rem;
  }
}

.o-reserve__link-box-title img {
  width: 2.5rem;
  height: auto;
  -o-object-fit: cover;
     object-fit: cover;
}

.o-reserve__link-box-body {
  padding: 3rem;
}

@media (min-width: 1024px) {
  .o-reserve__link-box-body {
    padding: 3rem 7.5rem;
  }
}

.o-reserve__link-list {
  display: flex;
  flex-wrap: wrap;
}

.o-reserve__link-item {
  width: 100%;
  margin-bottom: 1rem;
}

@media (min-width: 577px) {
  .o-reserve__link-item {
    width: 50%;
  }
}

@media (min-width: 1024px) {
  .o-reserve__link-item {
    width: 33.3%;
  }
}

.o-reserve__link-anchor {
  color: #00abcf;
  display: flex;
  align-items: center;
  font-size: 1.4rem;
  text-decoration: underline;
}

.o-reserve__link-anchor:hover {
  color: #00abcf;
}

@media (min-width: 1024px) {
  .o-reserve__link-anchor {
    font-size: 1.6rem;
  }
}

.o-reserve__link-anchor::before {
  display: block;
  width: 1.8rem;
  height: 1.8rem;
  margin-right: 1rem;
  text-decoration: none;
  content: "";
  background: url("/images/front/detail/document-icon.svg") no-repeat center center/contain;
}

/* stylelint-disable */

_:-ms-lang(x)::-ms-backdrop,
.o-reserve__link-box-title {
  height: 5rem;
  min-height: auto;
}

_:-ms-lang(x)::-ms-backdrop,
.o-reserve__link-anchor::before {
  background-size: 15px;
}

/* stylelint-enable */

.o-season-change {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}

.o-season-change__title {
  font-size: 1.1rem;
}

.o-season-change__title:empty {
  display: none;
}

@media (min-width: 1024px) {
  .o-season-change__title {
    font-size: 1.3rem;
  }
}

.o-season-change__list {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 29.5rem;
  height: 3.5rem;
  margin: 0 auto;
  border: 1px solid #262626;
  border-right: none;
}

@media (min-width: 1024px) {
  .o-season-change__list {
    width: 38rem;
    height: 3.4rem;
  }
}

.o-season-change__item {
  display: flex;
  align-items: center;
  justify-content: center;
  float: none;
  width: 25%;
  height: 100%;
  margin: 0;
  border-right: 1px solid #262626;
}

.o-season-change__item a {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  padding: 0;
  margin: 0;
  font-size: 1.1rem;
  line-height: initial;
  background-color: #fff;
  border: none;
  border-radius: 0;
}

@media screen and (min-width: 1025px) {
  .o-season-change__item a {
    font-size: 1.5rem;
    transition: ease-in-out 0.3s;
  }
}

.o-season-change__item a.active {
  color: #fff;
  background-color: #262626;
}

.o-season-change__item a:hover {
  color: #fff;
  text-decoration: none;
  background-color: #262626;
}

.o-section__title {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  font-size: 2.8rem;
  font-weight: 600;
  text-align: right;
}

@media (min-width: 577px) {
  .o-section__title {
    justify-content: center;
    text-align: center;
  }
}

.o-section__title::before,
.o-section__title::after {
  display: block;
  flex-grow: 1;
  height: 0.1rem;
  content: "";
}

.o-section__title::before {
  margin-right: 2.5rem;
  background-color: #1a1a1a;
}

.o-section__title-box--white .o-section__title::before {
  background-color: #fff;
}

.o-section__title::after {
  display: none;
}

@media (min-width: 577px) {
  .o-section__title::after {
    display: block;
    margin-left: 2.5rem;
    background-color: transparent;
  }
}

@media (min-width: 577px) {
  .o-section__title {
    font-size: 2.8rem;
  }
}

.o-section__title-box--white .o-section__title {
  color: #fff;
}

.o-main-time .o-section__title {
  margin-bottom: 3.2rem;
}

@media (min-width: 577px) {
  .o-main-time .o-section__title {
    margin-bottom: 0;
  }
}

.o-main-ranking .o-section__title {
  letter-spacing: -0.2rem;
}

.o-section__title-box {
  position: relative;
  padding-right: 2rem;
  margin-top: 5.6rem;
  margin-bottom: 3.2rem;
}

body:not(.ja) .o-main-feature .o-section__title-box {
  margin-top: 0;
}

@media (min-width: 577px) {
  body:not(.ja) .o-main-feature .o-section__title-box {
    margin-top: 3rem;
  }
}

.o-main-theme .o-section__title-box {
  width: calc(100% + 2.4rem);
  padding-right: 0;
  margin: 5.6rem auto 3.2rem -2.4rem;
}

@media (min-width: 577px) {
  .o-main-theme .o-section__title-box {
    margin: 5.6rem auto 3.2rem auto;
  }
}

@media (min-width: 1281px) {
  .o-section__title-box {
    padding-right: 0;
    margin-top: 10.4rem;
    margin-bottom: 5.6rem;
  }

  body:not(.ja) .o-main-feature .o-section__title-box {
    margin-top: 5.2rem;
  }
}

.o-section__title-box.u-decision--news {
  margin-left: calc((50vw - 10rem) * -1) !important;
}

@media (min-width: 577px) {
  .o-section__title-box.u-decision--news {
    margin-left: 0 !important;
  }
}

.o-section__title--sub {
  font-size: 1.2rem;
  text-align: right;
}

.u-decision--news .o-section__title--sub {
  margin-right: 2rem;
}

@media (min-width: 577px) {
  .u-decision--news .o-section__title--sub {
    margin-right: 0;
  }
}

@media (min-width: 577px) {
  .o-section__title--sub {
    position: absolute;
    top: 0;
    left: 1rem;
    text-align: left;
  }
}

.o-section__title-box--white .o-section__title--sub {
  color: #fff;
}

body:not(.ja) .o-section__title--sub {
  display: none;
}

.o-sitemap {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  width: 100%;
}

@media (min-width: 1024px) {
  .o-sitemap {
    flex-direction: row;
  }
}

.o-sitemap--left {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 6rem;
  background-color: #5d1d4f;
}

@media (min-width: 1024px) {
  .o-sitemap--left {
    max-width: 38rem;
    height: initial;
  }
}

.o-sitemap--right {
  width: 100%;
}

@media (min-width: 577px) {
  .o-sitemap--right {
    display: flex;
    width: 100%;
  }
}

.o-sitemap__list {
  padding: 2rem 0 0 0;
  margin: 0 0 2.5rem 0;
  border-top: 0.2rem solid #b8b8b8;
}

@media (min-width: 577px) {
  .o-sitemap__list {
    width: 33.3%;
    padding: 2.5rem 0 0 0;
    margin: 0 6rem 5rem 0;
  }
}

.o-sitemap__list dt {
  font-size: 1.6rem;
  text-align: left;
}

.o-sitemap__title {
  font-size: 1.6rem;
  color: #fff;
}

@media (min-width: 1024px) {
  .o-sitemap__title {
    font-size: 1.8rem;
  }
}

.o-sitemap__link-list {
  display: flex;
  flex-wrap: wrap;
}

@media (min-width: 577px) {
  .o-sitemap__link-list {
    display: block;
  }
}

.o-sitemap__link-item {
  width: 100%;
}

.o-sitemap__anchor {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  font-size: 1.6rem;
}

.o-sitemap__anchor::before {
  display: block;
  width: 1rem;
  height: 0.1rem;
  margin-right: 1.2rem;
  content: "";
  background-color: #1a1a1a;
}

.o-sns-icon {
  margin-bottom: 8rem;
}

@media (min-width: 577px) {
  .o-sns-icon {
    margin-bottom: 5.6rem;
  }
}

.o-sns-icon__list {
  display: flex;
  align-items: center;
  justify-content: center;
}

.o-sns-icon__item {
  position: relative;
  margin: 0 4rem 0 0;
}

.o-sns-icon__item:last-child {
  margin-right: 0;
}

.o-sns-icon__anchor {
  color: #fff;
  display: block;
  width: 100%;
  height: 100%;
}

.o-sns-icon__anchor:hover {
  color: #fff;
}

.o-sns-icon__anchor > .fa {
  font-size: 4rem;
}

.o-sns-icon-detail__list {
  display: flex;
  align-items: center;
  justify-content: center;
}

.o-sns-icon-detail__anchor {
  display: flex;
  align-items: center;
  justify-content: center;
}

.o-sns-icon-detail__anchor .fa {
  font-size: 3.2rem;
  color: #008071;
}

.o-sns-icon-detail__anchor img {
  width: 4rem;
  height: 4rem;
}

.o-sns-icon-detail__anchor--instagram {
  background: #e4007f;
}

body:not(.ja) .o-sns-icon-detail__anchor {
  flex-direction: column;
}

.o-sns-icon__box {
  display: flex;
  align-items: center;
  justify-content: center;
}

.o-sns-icon__box-title {
  margin: 0 2rem 0 0;
  color: #008071;
  white-space: nowrap;
}

@media (min-width: 577px) {
  .o-sns-icon__box-title {
    margin: 0 4rem 0 0;
  }
}

/* == 下層コンテンツ 検索ソート == */

.o-sort {
  max-width: 1200px;
  margin: 0 auto;
  padding: 64px 32px 24px;
  box-sizing: border-box;
}

.o-sort .o-sort-inner {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.o-sort.sort-news {
  max-width: 1040px;
  margin: 0 auto;
  padding: 80px 20px;
  box-sizing: border-box;
}

.o-sort.sort-news .o-sort__list {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  padding: 0;
  margin: 0;
  gap: 16px;
  flex-wrap: wrap;
}

.o-sort.sort-news .o-sort__list .o-button-sort {
  height: 40px;
  align-items: center;
  justify-content: center;
  min-width: 187px;
  border-radius: 40px;
  text-decoration: none;
  color: var(--dark);
  padding: 0 10px;
}

.o-sort .o-sort__list .o-button-sort.u-active--bg-sort-button {
  background-color: var(--dark);
  color: var(--white);
}

.o-sort-result {
  margin: 0 0 0 52px;
  font-size: 16px;
  font-weight: normal;
  line-height: 1.1;
  display: flex;
  align-items: baseline;
  gap: 23px;
}

.o-sort-result .u-font-sizeup {
  font-size: 32px;
  font-family: var(--font-family-bold);
  font-weight: bold;
}

.o-sort-rightarea {
  display: flex;
  gap: 37px;
  align-items: center;
}

.o-sort-rightarea dl.o-sort__list {
  display: flex;
  margin: 0;
  font-size: 14px;
  align-items: center;
  gap: 7px;
}

.o-sort-rightarea dl.o-sort__list dt {
  margin-right: 14px;
}

.o-sort-rightarea dl.o-sort__list dd {
  margin: 0;
}

.o-sort .o-sort__list .o-button-sort.u-active--bg-sort-button,
.o-sort.sort-news .o-sort__list .o-button-sort:hover {
  background-color: var(--dark);
  color: var(--white);
}

@media (max-width: 1199px) {
  .o-sort {
    padding: 64px 2rem 24px;
  }
}

@media (max-width: 1090px) {
  .o-sort .o-sort-inner {
    flex-direction: column;
    gap: 20px;
  }

  .o-sort-result {
    margin: 0;
  }

  .o-button-sort svg {
    margin: 0 auto 0 3px;
  }
}

@media (max-width: 1023px) {
  .o-sort.sort-news .o-sort__list {
    width: 100%;
  }

  .o-sort.sort-news .o-sort__list li {
    width: 25%;
  }

  .o-sort.sort-news .o-sort__list .o-button-sort {
    min-width: auto;
    width: 100%;
    min-height: 40px;
    height: auto;
    line-height: 1.2;
    padding: 8px 20px;
  }
}

@media (max-width: 768px) {
  .o-sort-rightarea {
    flex-direction: column;
    gap: 20px;
  }

  .o-button-sort {
    min-width: 80px;
    gap: 12px;
    font-size: 0.9rem;
  }

  .o-sort.sort-news {
    padding: 3rem 20px;
  }

  .o-sort.sort-news .o-sort__list {
    flex-wrap: wrap;
  }

  .o-sort.sort-news .o-sort__list li {
    width: calc(33.33333% - 11px);
  }
}

@media (max-width: 425px) {
  .o-sort-rightarea dl.o-sort__list dt {
    display: none;
  }

  .o-sort.sort-news .o-sort__list li {
    width: calc(50% - 9px);
  }
}

.o-static-page__description {
  font-size: 1.5rem;
  line-height: 1.6;
}

@media (min-width: 577px) {
  .o-static-page__description {
    font-size: 1.6rem;
    line-height: 1.8;
  }
}

.o-static-page__list--count {
  counter-reset: count;
}

.o-static-page__list--count .o-static-page__item {
  padding-left: 2rem;
}

.o-static-page__list--count .o-static-page__item::before {
  position: absolute;
  left: 0;
  content: counter(count) ".";
  counter-increment: count;
}

.o-static-page__list--count-type02 {
  counter-reset: count 0;
}

.o-static-page__list--count-type02 .o-static-page__item {
  padding-left: 3.5rem;
  margin-left: -1rem;
}

.o-static-page__list--count-type02 .o-static-page__item::before {
  content: "\FF08" counter(count) "\FF09";
}

.o-static-page__item {
  position: relative;
  margin-bottom: 1rem;
  font-size: 1.5rem;
  line-height: 1.6;
}

@media (min-width: 577px) {
  .o-static-page__item {
    font-size: 1.6rem;
    line-height: 1.8;
  }
}

.o-static-page__anchor {
  color: #00a3d0;
  text-decoration: underline;
}

.o-static-page__tag-box {
  padding: 2rem;
  border: 0.1rem solid #ccc;
}

.o-static-page__tag-box textarea {
  border: none;
}

.o-switching-button__list {
  display: inline-flex;
  flex-wrap: wrap;
  justify-content: center;
  width: 100%;
  max-width: 65.5rem;
}

.o-switching-button__list.is-access,
.o-switching-button__list.is-documents {
  max-width: 100rem;
}

.o-switching-button__list-box {
  width: 100%;
  padding: 1.6rem 2rem 0 2rem;
  margin-bottom: 3.2rem;
  text-align: center;
  background-color: #f2f2f2;
}

@media (min-width: 577px) {
  .o-switching-button__list-box {
    margin-bottom: 6.4rem;
  }
}

.o-switching-button__item {
  width: 100%;
  margin: 0 0 1.6rem 0;
}

@media (min-width: 577px) {
  .o-switching-button__item {
    width: auto;
    margin: 0 3.2rem 1.6rem 0;
  }

  .o-switching-button__item:last-child {
    margin: 0 0 1.6rem 0;
  }
}

@media (min-width: 577px) {
  .is-access .o-switching-button__item {
    flex: 1;
  }
}

.o-switching-tab {
  width: 100%;
  height: auto;
}

.o-switching-tab__list {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  width: 100%;
  height: 100%;
  border-bottom: 0.1rem solid #008071;
}

@media (min-width: 577px) {
  .o-switching-tab__list {
    flex-wrap: nowrap;
    margin: 0 auto;
    border-bottom: none;
  }
}

.o-switching-tab__list.is-access {
  border-bottom: none;
}

.o-switching-tab__list.with-border {
  border-bottom: 0.1rem solid #008071;
}

.o-switching-tab__item {
  position: relative;
  width: 100%;
  height: 5.9rem;
}

@media (min-width: 577px) {
  .o-switching-tab__item {
    display: flex;
    flex: 1;
    height: auto;
    margin-right: 1rem;
  }

  .o-switching-tab__item:last-child {
    margin-right: 0;
  }
}

.o-switching-tab__anchor {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  padding: 1.5rem 0 1.5rem 0.5rem;
  font-weight: 600;
  border: 0.1rem solid #008071;
  border-bottom: none;
}

@media (min-width: 577px) {
  .o-switching-tab__anchor {
    justify-content: center;
    border-radius: 0.8rem 0.8rem 0 0;
  }
}

.o-switching-tab__anchor:hover {
  opacity: 1;
}

.o-switching-tab__anchor > span {
  padding: 0 4rem;
  overflow: hidden;
  text-align: center;
  text-overflow: ellipsis;
  white-space: nowrap;
}

@media (min-width: 577px) {
  .o-switching-tab__anchor > span {
    padding-left: 0;
  }
}

.o-switching-tab.separate-three {
  height: auto;
}

.o-switching-tab.separate-three .o-switching-tab__list {
  flex-wrap: wrap;
  margin: 0 auto;
}

@media (min-width: 577px) {
  .o-switching-tab.separate-three .o-switching-tab__list {
    flex-wrap: nowrap;
  }
}

.o-switching-tab.separate-three .o-switching-tab__item {
  width: 100%;
}

.o-switching-tab.separate-three .o-switching-tab__anchor {
  padding: 1.5rem 0 1.5rem 0.5rem;
}

@media (min-width: 577px) {
  .o-switching-tab.separate-three .o-switching-tab__anchor {
    padding-left: 1.5rem;
  }
}

.o-switching-tab.page-access {
  background: #262626;
  border-bottom: none;
}

.o-switching-tab.page-access .o-switching-tab__list {
  border: none;
}

.o-switching-tab.page-access .o-switching-tab__anchor {
  justify-content: center;
  font-size: 1.5rem;
  border: none;
}

@media (min-width: 577px) {
  .o-switching-tab.page-access .o-switching-tab__anchor {
    padding-right: 3.5rem;
    font-size: 1.8rem;
    border-right: 0.1rem solid #fff;
  }
}

@media (min-width: 1024px) {
  .o-switching-tab.page-access .o-switching-tab__anchor {
    border-right: none;
  }
}

#blog-article-form {
  padding-top: 4rem;
}

.o-table-of-contents {
  width: 100%;
  margin-bottom: 120px;
}

.o-table-of-contents .o-table-of-contents__title {
  width: 100%;
  text-align: center;
  font-size: 20px;
  line-height: 1.2;
  color: var(--line-blue);
  font-weight: normal;
  margin: 0 0 20px;
}

.o-table-of-contents .o-table-of-contents--inner {
  width: 100%;
  background: var(--search-blue);
  position: relative;
  padding: 50px 0;
  margin-bottom: 48px;
}

.o-table-of-contents .o-table-of-contents__btn {
  position: absolute;
  bottom: -47px;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 14px;
  width: 100%;
  max-width: 100%;
  border: none;
  color: var(--line-blue);
  font-size: 14px;
  height: 48px;
  background: var(--white) url(/images/front/contents/back-index-footer.svg) no-repeat center 0;
  cursor: pointer;
}

.o-table-of-contents .o-table-of-contents__btn::before {
  content: "\FF0B";
  font-weight: bold;
}

.o-table-of-contents .o-table-of-contents__btn.active {
  font-size: 0;
  gap: 7px;
}

.o-table-of-contents .o-table-of-contents__btn.active::before {
  content: "\FF0D";
  font-weight: bold;
  font-size: 14px;
}

.o-table-of-contents .o-table-of-contents__btn.active::after {
  content: "\76EE\6B21\3092\9589\3058\308B";
  font-size: 14px;
}

.o-table-of-contents .o-table-of-contents__innerbox {
  display: none;
  padding-top: 27px;
}

.o-table-of-contents .o-table-of-contents__list {
  width: 400px;
  margin: 0 auto;
}

.o-table-of-contents .o-table-of-contents__list li + li {
  margin-top: 27px;
}

.o-table-of-contents .o-table-of-contents__list a {
  color: var(--dark);
  text-decoration: none;
  font-size: 14px;
  font-weight: bold;
  font-family: var(--font-family-bold);
}

.o-table-of-contents.course-nav {
  margin-bottom: 0;
}

.o-table-of-contents.course-nav .o-table-of-contents__title {
  font-family: var(--font-family-bold);
  font-weight: bold;
}

@media (max-width: 576px) {
  .o-table-of-contents {
    margin-bottom: 3rem;
  }

  .o-table-of-contents .o-table-of-contents__list {
    width: 100%;
    padding: 0 1rem;
  }

  .o-table-of-contents .o-table-of-contents__innerbox {
    padding-top: 1.3rem;
  }

  .o-table-of-contents .o-table-of-contents__list li + li {
    margin-top: 1.3rem;
  }
}

.o-useful-info {
  margin-bottom: 5.6rem;
}

@media (min-width: 577px) {
  .o-useful-info {
    margin-bottom: 10.4rem;
  }
}

@media (min-width: 1024px) {
  .o-useful-info {
    padding: 0;
  }
}

.o-useful-info__list {
  display: flex;
  flex-wrap: wrap;
  padding: 0 2.4rem;
}

.o-useful-info__item {
  width: calc((100% / 2) - (((2 - 1) * 1.7rem) / 2));
  margin: 0 1.7rem 3.2rem 0;
}

.o-useful-info__item:nth-of-type(2n) {
  margin-right: 0;
}

@media (min-width: 577px) {
  .o-useful-info__item {
    width: calc((100% / 4) - (((4 - 1) * 1.2rem) / 4));
    margin: 0 1.2rem 0 0;
  }

  .o-useful-info__item:nth-of-type(2n) {
    margin-right: 1.2rem;
  }

  .o-useful-info__item:nth-of-type(4n) {
    margin-right: 0;
  }
}

.o-useful-info__anchor {
  position: relative;
  z-index: 1;
  display: block;
  width: 100%;
  height: 100%;
}

body:not(.ja) .o-useful-info__anchor::after {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2;
  display: block;
  width: 100%;
  height: 100%;
  content: "";
  background: rgba(0, 0, 0, 0.4);
  border-radius: 0.8rem;
}

@media (min-width: 577px) {
  .o-useful-info__anchor {
    overflow: hidden;
    border-radius: 0.8rem;
  }

  .o-useful-info__anchor::after {
    position: absolute;
    bottom: 0;
    left: 0;
    z-index: 2;
    display: block;
    width: 100%;
    height: 8rem;
    content: "";
    background: linear-gradient(to bottom, rgba(0, 0, 0, 0) 0%, black 100%);
    border-radius: 0.8rem;
  }

  body:not(.ja) .o-useful-info__anchor::after {
    bottom: initial;
  }
}

.o-useful-info__anchor .u-image-thumbnail--100 {
  overflow: hidden;
  border-radius: 0.8rem;
}

.o-useful-info__title {
  width: 100%;
  margin-top: 1.4rem;
  font-size: 1.4rem;
  font-weight: 600;
  text-align: left;
}

body:not(.ja) .o-useful-info__title {
  position: absolute;
  top: 50%;
  left: 50%;
  z-index: 3;
  margin: 0;
  color: #fff;
  text-align: center;
  transform: translate(-50%, -50%);
}

@media (min-width: 577px) {
  .o-useful-info__title {
    position: absolute;
    bottom: 2rem;
    left: 50%;
    z-index: 3;
    margin-top: 0;
    font-size: 1.8rem;
    color: #fff;
    text-align: center;
    filter: drop-shadow(0.2rem 0.2rem 0.4rem #000);
    transform: translateX(-50%);
  }

  .o-useful-info__title br {
    display: block;
  }

  body:not(.ja) .o-useful-info__title {
    bottom: initial;
  }
}

@media (min-width: 577px) {
  .o-useful-info.is-business {
    margin-bottom: 14rem;
  }
}

.o-useful-info.is-business .o-useful-info__item {
  width: 100%;
  margin: 0 0 2rem 0;
}

.o-useful-info.is-business .o-useful-info__item:nth-of-type(2n) {
  margin-right: 0;
}

@media (min-width: 577px) {
  .o-useful-info.is-business .o-useful-info__item {
    width: calc(33.333% - (8rem / 3));
    margin: 0 4rem 0 0;
  }

  .o-useful-info.is-business .o-useful-info__item:nth-of-type(2n) {
    margin-right: 4rem;
  }

  .o-useful-info.is-business .o-useful-info__item:last-child {
    margin-right: 0;
  }
}

.o-videos {
  position: relative;
  margin: 5rem 0 0 0;
}

@media (min-width: 1024px) {
  .o-videos {
    margin: 10rem 0 0 0;
  }
}

.o-videos__item {
  padding: 0 1rem;
}

@media (min-width: 577px) {
  .o-videos__item {
    padding: 0 4rem;
  }
}

@media (min-width: 1024px) {
  .o-videos__item {
    padding: 0 6rem;
  }
}

@media (min-width: 1281px) {
  .o-videos__item {
    padding: 0 11.5rem;
  }
}

.o-videos__item .u-image-thumbnail--55 {
  padding-top: 55%;
}

.o-videos__item .u-image-thumbnail--55 > iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.o-videos__description {
  margin-top: 2rem;
  font-weight: 600;
  text-align: center;
}

.o-videos .slick-slide {
  height: auto;
}

.o-videos .slick-prev::before,
.o-videos .slick-next::before {
  display: block;
  width: 4rem;
  height: 4rem;
  content: "";
}

@media (min-width: 577px) {
  .o-videos .slick-prev::before,
  .o-videos .slick-next::before {
    width: 4.8rem;
    height: 4.8rem;
  }
}

.o-videos .slick-prev,
.o-videos .slick-next {
  top: initial;
  bottom: -8rem;
  z-index: 99;
  width: 4rem;
  height: 4rem;
}

@media (min-width: 577px) {
  .o-videos .slick-prev,
  .o-videos .slick-next {
    top: 50%;
    bottom: initial;
    width: 4.8rem;
    height: 4.8rem;
  }
}

.o-videos .slick-prev {
  left: 2rem;
}

@media (min-width: 577px) {
  .o-videos .slick-prev {
    left: calc(20% - 2.4rem);
  }
}

.o-videos .slick-prev::before {
  background: url("/images/front/slider/spot-slider-prev.svg") no-repeat;
  background-size: auto 100%;
}

.o-videos .slick-next {
  right: 2rem;
}

@media (min-width: 577px) {
  .o-videos .slick-next {
    right: calc(20% - 2.4rem);
  }
}

.o-videos .slick-next::before {
  background: url("/images/front/slider/spot-slider-next.svg") no-repeat;
  background-size: auto 100%;
}

.o-videos .slick-dots {
  bottom: -4rem;
}

@media (min-width: 577px) {
  .o-videos .slick-dots {
    bottom: -3.5rem;
    display: block;
    text-align: center;
  }
}

.o-videos .slick-dots li {
  width: 0.6rem;
  height: auto;
  margin: 0 1rem;
}

@media (min-width: 577px) {
  .o-videos .slick-dots li {
    width: 1.1rem;
  }
}

.o-videos .slick-dots li button {
  width: auto;
  height: auto;
  padding: initial;
}

.o-videos .slick-dots li button::before {
  position: static;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 0.8rem;
  height: 0.8rem;
  content: "";
  background-color: #b8b8b8;
  border-radius: 10rem;
  opacity: 1;
}

@media (min-width: 1024px) {
  .o-videos .slick-dots li button::before {
    width: 1.1rem;
    height: 1.1rem;
  }
}

.o-videos .slick-dots li.slick-active button::before {
  width: 1.2rem;
  height: 1.2rem;
  margin-top: -0.1rem;
  background-color: #cc4c40;
}

@media (min-width: 577px) {
  .o-videos .slick-dots li.slick-active button::before {
    width: 1.6rem;
    height: 1.6rem;
    margin-top: initial;
    background-color: #5d1d4f;
  }
}

.o-videos .slick-counter {
  display: none;
}

@media (min-width: 769px) {
  .o-videos .slick-counter {
    bottom: -10rem;
  }
}

@media (min-width: 1281px) {
  .o-videos .slick-counter {
    bottom: 6rem;
  }
}

.o-videos .slick-counter span {
  font-weight: 500;
}

.o-videos .slick-counter span.current,
.o-videos .slick-counter span.current2 {
  position: relative;
  color: #1f1f1f;
}

.o-videos .slick-counter span.current::after,
.o-videos .slick-counter span.current2::after {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 0.1rem;
  content: "";
  background: #1f1f1f;
}

.o-videos .slick-counter span.current.u-font-size64,
.o-videos .slick-counter span.current2.u-font-size64 {
  font-size: 9.36vw !important;
}

@media (min-width: 577px) {
  .o-videos .slick-counter span.current.u-font-size64,
  .o-videos .slick-counter span.current2.u-font-size64 {
    font-size: 7.5vw !important;
  }
}

@media (min-width: 1024px) {
  .o-videos .slick-counter span.current.u-font-size64,
  .o-videos .slick-counter span.current2.u-font-size64 {
    font-size: 6.4em !important;
  }
}

.o-videos .slick-counter span.total,
.o-videos .slick-counter span.total2 {
  position: relative;
  color: #bebebe;
}

.o-videos .slick-counter span.total::after,
.o-videos .slick-counter span.total2::after {
  position: absolute;
  bottom: -1.3rem;
  left: -35%;
  width: 150%;
  height: 0.1rem;
  content: "";
  background: #ccc;
}

@media (min-width: 577px) {
  .o-videos .slick-counter span.total::after,
  .o-videos .slick-counter span.total2::after {
    bottom: -2.1rem;
    left: -36%;
  }
}

@media (min-width: 1024px) {
  .o-videos .slick-counter span.total::after,
  .o-videos .slick-counter span.total2::after {
    bottom: -1.4rem;
  }
}

@media (min-width: 1200px) {
  .o-videos .slick-counter span.total::after,
  .o-videos .slick-counter span.total2::after {
    bottom: -2.3rem;
  }
}

@media (min-width: 1281px) {
  .o-videos .slick-counter span.total::after,
  .o-videos .slick-counter span.total2::after {
    bottom: -1.4rem;
  }
}

