@charset "UTF-8";@media (max-width: 338px){
	.footer-catch{
		font-size:18px;
	}
}
/**
 * Swiper 8.4.7
 * Most modern mobile touch slider and framework with hardware accelerated transitions
 * https://swiperjs.com
 *
 * Copyright 2014-2023 Vladimir Kharlampidi
 *
 * Released under the MIT License
 *
 * Released on: January 30, 2023
 */

@font-face{font-family:swiper-icons;src:url('data:application/font-woff;charset=utf-8;base64, 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');font-weight:400;font-style:normal}:root{--swiper-theme-color:#007aff}.swiper{margin-left:auto;margin-right:auto;position:relative;overflow:hidden;list-style:none;padding:0;z-index:1}.swiper-vertical>.swiper-wrapper{flex-direction:column}.swiper-wrapper{position:relative;width:100%;height:100%;z-index:1;display:flex;transition-property:transform;box-sizing:content-box}.swiper-android .swiper-slide,.swiper-wrapper{transform:translate3d(0px,0,0)}.swiper-pointer-events{touch-action:pan-y}.swiper-pointer-events.swiper-vertical{touch-action:pan-x}.swiper-slide{flex-shrink:0;width:100%;height:100%;position:relative;transition-property:transform}.swiper-slide-invisible-blank{visibility:hidden}.swiper-autoheight,.swiper-autoheight .swiper-slide{height:auto}.swiper-autoheight .swiper-wrapper{align-items:flex-start;transition-property:transform,height}.swiper-backface-hidden .swiper-slide{transform:translateZ(0);-webkit-backface-visibility:hidden;backface-visibility:hidden}.swiper-3d,.swiper-3d.swiper-css-mode .swiper-wrapper{perspective:1200px}.swiper-3d .swiper-cube-shadow,.swiper-3d .swiper-slide,.swiper-3d .swiper-slide-shadow,.swiper-3d .swiper-slide-shadow-bottom,.swiper-3d .swiper-slide-shadow-left,.swiper-3d .swiper-slide-shadow-right,.swiper-3d .swiper-slide-shadow-top,.swiper-3d .swiper-wrapper{transform-style:preserve-3d}.swiper-3d .swiper-slide-shadow,.swiper-3d .swiper-slide-shadow-bottom,.swiper-3d .swiper-slide-shadow-left,.swiper-3d .swiper-slide-shadow-right,.swiper-3d .swiper-slide-shadow-top{position:absolute;left:0;top:0;width:100%;height:100%;pointer-events:none;z-index:10}.swiper-3d .swiper-slide-shadow{background:rgba(0,0,0,.15)}.swiper-3d .swiper-slide-shadow-left{background-image:linear-gradient(to left,rgba(0,0,0,.5),rgba(0,0,0,0))}.swiper-3d .swiper-slide-shadow-right{background-image:linear-gradient(to right,rgba(0,0,0,.5),rgba(0,0,0,0))}.swiper-3d .swiper-slide-shadow-top{background-image:linear-gradient(to top,rgba(0,0,0,.5),rgba(0,0,0,0))}.swiper-3d .swiper-slide-shadow-bottom{background-image:linear-gradient(to bottom,rgba(0,0,0,.5),rgba(0,0,0,0))}.swiper-css-mode>.swiper-wrapper{overflow:auto;scrollbar-width:none;-ms-overflow-style:none}.swiper-css-mode>.swiper-wrapper::-webkit-scrollbar{display:none}.swiper-css-mode>.swiper-wrapper>.swiper-slide{scroll-snap-align:start start}.swiper-horizontal.swiper-css-mode>.swiper-wrapper{scroll-snap-type:x mandatory}.swiper-vertical.swiper-css-mode>.swiper-wrapper{scroll-snap-type:y mandatory}.swiper-centered>.swiper-wrapper::before{content:'';flex-shrink:0;order:9999}.swiper-centered.swiper-horizontal>.swiper-wrapper>.swiper-slide:first-child{margin-inline-start:var(--swiper-centered-offset-before)}.swiper-centered.swiper-horizontal>.swiper-wrapper::before{height:100%;min-height:1px;width:var(--swiper-centered-offset-after)}.swiper-centered.swiper-vertical>.swiper-wrapper>.swiper-slide:first-child{margin-block-start:var(--swiper-centered-offset-before)}.swiper-centered.swiper-vertical>.swiper-wrapper::before{width:100%;min-width:1px;height:var(--swiper-centered-offset-after)}.swiper-centered>.swiper-wrapper>.swiper-slide{scroll-snap-align:center center;scroll-snap-stop:always}.swiper-virtual .swiper-slide{-webkit-backface-visibility:hidden;transform:translateZ(0)}.swiper-virtual.swiper-css-mode .swiper-wrapper::after{content:'';position:absolute;left:0;top:0;pointer-events:none}.swiper-virtual.swiper-css-mode.swiper-horizontal .swiper-wrapper::after{height:1px;width:var(--swiper-virtual-size)}.swiper-virtual.swiper-css-mode.swiper-vertical .swiper-wrapper::after{width:1px;height:var(--swiper-virtual-size)}:root{--swiper-navigation-size:44px}.swiper-button-next,.swiper-button-prev{position:absolute;top:50%;width:calc(var(--swiper-navigation-size)/ 44 * 27);height:var(--swiper-navigation-size);margin-top:calc(0px - (var(--swiper-navigation-size)/ 2));z-index:10;cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--swiper-navigation-color,var(--swiper-theme-color))}.swiper-button-next.swiper-button-disabled,.swiper-button-prev.swiper-button-disabled{opacity:.35;cursor:auto;pointer-events:none}.swiper-button-next.swiper-button-hidden,.swiper-button-prev.swiper-button-hidden{opacity:0;cursor:auto;pointer-events:none}.swiper-navigation-disabled .swiper-button-next,.swiper-navigation-disabled .swiper-button-prev{display:none!important}.swiper-button-next:after,.swiper-button-prev:after{font-family:swiper-icons;font-size:var(--swiper-navigation-size);text-transform:none!important;letter-spacing:0;font-variant:initial;line-height:1}.swiper-button-prev,.swiper-rtl .swiper-button-next{left:10px;right:auto}.swiper-button-prev:after,.swiper-rtl .swiper-button-next:after{content:'prev'}.swiper-button-next,.swiper-rtl .swiper-button-prev{right:10px;left:auto}.swiper-button-next:after,.swiper-rtl .swiper-button-prev:after{content:'next'}.swiper-button-lock{display:none}.swiper-pagination{position:absolute;text-align:center;transition:.3s opacity;transform:translate3d(0,0,0);z-index:10}.swiper-pagination.swiper-pagination-hidden{opacity:0}.swiper-pagination-disabled>.swiper-pagination,.swiper-pagination.swiper-pagination-disabled{display:none!important}.swiper-horizontal>.swiper-pagination-bullets,.swiper-pagination-bullets.swiper-pagination-horizontal,.swiper-pagination-custom,.swiper-pagination-fraction{bottom:10px;left:0;width:100%}.swiper-pagination-bullets-dynamic{overflow:hidden;font-size:0}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet{transform:scale(.33);position:relative}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active{transform:scale(1)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-main{transform:scale(1)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev{transform:scale(.66)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev-prev{transform:scale(.33)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next{transform:scale(.66)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next-next{transform:scale(.33)}.swiper-pagination-bullet{width:var(--swiper-pagination-bullet-width,var(--swiper-pagination-bullet-size,8px));height:var(--swiper-pagination-bullet-height,var(--swiper-pagination-bullet-size,8px));display:inline-block;border-radius:50%;background:var(--swiper-pagination-bullet-inactive-color,#000);opacity:var(--swiper-pagination-bullet-inactive-opacity, .2)}button.swiper-pagination-bullet{border:none;margin:0;padding:0;box-shadow:none;-webkit-appearance:none;appearance:none}.swiper-pagination-clickable .swiper-pagination-bullet{cursor:pointer}.swiper-pagination-bullet:only-child{display:none!important}.swiper-pagination-bullet-active{opacity:var(--swiper-pagination-bullet-opacity, 1);background:var(--swiper-pagination-color,var(--swiper-theme-color))}.swiper-pagination-vertical.swiper-pagination-bullets,.swiper-vertical>.swiper-pagination-bullets{right:10px;top:50%;transform:translate3d(0px,-50%,0)}.swiper-pagination-vertical.swiper-pagination-bullets .swiper-pagination-bullet,.swiper-vertical>.swiper-pagination-bullets .swiper-pagination-bullet{margin:var(--swiper-pagination-bullet-vertical-gap,6px) 0;display:block}.swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic,.swiper-vertical>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic{top:50%;transform:translateY(-50%);width:8px}.swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet,.swiper-vertical>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet{display:inline-block;transition:.2s transform,.2s top}.swiper-horizontal>.swiper-pagination-bullets .swiper-pagination-bullet,.swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet{margin:0 var(--swiper-pagination-bullet-horizontal-gap,4px)}.swiper-horizontal>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic,.swiper-pagination-horizontal.swiper-pagination-bullets.swiper-pagination-bullets-dynamic{left:50%;transform:translateX(-50%);white-space:nowrap}.swiper-horizontal>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet,.swiper-pagination-horizontal.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet{transition:.2s transform,.2s left}.swiper-horizontal.swiper-rtl>.swiper-pagination-bullets-dynamic .swiper-pagination-bullet{transition:.2s transform,.2s right}.swiper-pagination-progressbar{background:rgba(0,0,0,.25);position:absolute}.swiper-pagination-progressbar .swiper-pagination-progressbar-fill{background:var(--swiper-pagination-color,var(--swiper-theme-color));position:absolute;left:0;top:0;width:100%;height:100%;transform:scale(0);transform-origin:left top}.swiper-rtl .swiper-pagination-progressbar .swiper-pagination-progressbar-fill{transform-origin:right top}.swiper-horizontal>.swiper-pagination-progressbar,.swiper-pagination-progressbar.swiper-pagination-horizontal,.swiper-pagination-progressbar.swiper-pagination-vertical.swiper-pagination-progressbar-opposite,.swiper-vertical>.swiper-pagination-progressbar.swiper-pagination-progressbar-opposite{width:100%;height:4px;left:0;top:0}.swiper-horizontal>.swiper-pagination-progressbar.swiper-pagination-progressbar-opposite,.swiper-pagination-progressbar.swiper-pagination-horizontal.swiper-pagination-progressbar-opposite,.swiper-pagination-progressbar.swiper-pagination-vertical,.swiper-vertical>.swiper-pagination-progressbar{width:4px;height:100%;left:0;top:0}.swiper-pagination-lock{display:none}.swiper-scrollbar{border-radius:10px;position:relative;-ms-touch-action:none;background:rgba(0,0,0,.1)}.swiper-scrollbar-disabled>.swiper-scrollbar,.swiper-scrollbar.swiper-scrollbar-disabled{display:none!important}.swiper-horizontal>.swiper-scrollbar,.swiper-scrollbar.swiper-scrollbar-horizontal{position:absolute;left:1%;bottom:3px;z-index:50;height:5px;width:98%}.swiper-scrollbar.swiper-scrollbar-vertical,.swiper-vertical>.swiper-scrollbar{position:absolute;right:3px;top:1%;z-index:50;width:5px;height:98%}.swiper-scrollbar-drag{height:100%;width:100%;position:relative;background:rgba(0,0,0,.5);border-radius:10px;left:0;top:0}.swiper-scrollbar-cursor-drag{cursor:move}.swiper-scrollbar-lock{display:none}.swiper-zoom-container{width:100%;height:100%;display:flex;justify-content:center;align-items:center;text-align:center}.swiper-zoom-container>canvas,.swiper-zoom-container>img,.swiper-zoom-container>svg{max-width:100%;max-height:100%;object-fit:contain}.swiper-slide-zoomed{cursor:move}.swiper-lazy-preloader{width:42px;height:42px;position:absolute;left:50%;top:50%;margin-left:-21px;margin-top:-21px;z-index:10;transform-origin:50%;box-sizing:border-box;border:4px solid var(--swiper-preloader-color,var(--swiper-theme-color));border-radius:50%;border-top-color:transparent}.swiper-watch-progress .swiper-slide-visible .swiper-lazy-preloader,.swiper:not(.swiper-watch-progress) .swiper-lazy-preloader{animation:swiper-preloader-spin 1s infinite linear}.swiper-lazy-preloader-white{--swiper-preloader-color:#fff}.swiper-lazy-preloader-black{--swiper-preloader-color:#000}@keyframes swiper-preloader-spin{0%{transform:rotate(0deg)}100%{transform:rotate(360deg)}}.swiper .swiper-notification{position:absolute;left:0;top:0;pointer-events:none;opacity:0;z-index:-1000}.swiper-free-mode>.swiper-wrapper{transition-timing-function:ease-out;margin:0 auto}.swiper-grid>.swiper-wrapper{flex-wrap:wrap}.swiper-grid-column>.swiper-wrapper{flex-wrap:wrap;flex-direction:column}.swiper-fade.swiper-free-mode .swiper-slide{transition-timing-function:ease-out}.swiper-fade .swiper-slide{pointer-events:none;transition-property:opacity}.swiper-fade .swiper-slide .swiper-slide{pointer-events:none}.swiper-fade .swiper-slide-active,.swiper-fade .swiper-slide-active .swiper-slide-active{pointer-events:auto}.swiper-cube{overflow:visible}.swiper-cube .swiper-slide{pointer-events:none;-webkit-backface-visibility:hidden;backface-visibility:hidden;z-index:1;visibility:hidden;transform-origin:0 0;width:100%;height:100%}.swiper-cube .swiper-slide .swiper-slide{pointer-events:none}.swiper-cube.swiper-rtl .swiper-slide{transform-origin:100% 0}.swiper-cube .swiper-slide-active,.swiper-cube .swiper-slide-active .swiper-slide-active{pointer-events:auto}.swiper-cube .swiper-slide-active,.swiper-cube .swiper-slide-next,.swiper-cube .swiper-slide-next+.swiper-slide,.swiper-cube .swiper-slide-prev{pointer-events:auto;visibility:visible}.swiper-cube .swiper-slide-shadow-bottom,.swiper-cube .swiper-slide-shadow-left,.swiper-cube .swiper-slide-shadow-right,.swiper-cube .swiper-slide-shadow-top{z-index:0;-webkit-backface-visibility:hidden;backface-visibility:hidden}.swiper-cube .swiper-cube-shadow{position:absolute;left:0;bottom:0px;width:100%;height:100%;opacity:.6;z-index:0}.swiper-cube .swiper-cube-shadow:before{content:'';background:#000;position:absolute;left:0;top:0;bottom:0;right:0;filter:blur(50px)}.swiper-flip{overflow:visible}.swiper-flip .swiper-slide{pointer-events:none;-webkit-backface-visibility:hidden;backface-visibility:hidden;z-index:1}.swiper-flip .swiper-slide .swiper-slide{pointer-events:none}.swiper-flip .swiper-slide-active,.swiper-flip .swiper-slide-active .swiper-slide-active{pointer-events:auto}.swiper-flip .swiper-slide-shadow-bottom,.swiper-flip .swiper-slide-shadow-left,.swiper-flip .swiper-slide-shadow-right,.swiper-flip .swiper-slide-shadow-top{z-index:0;-webkit-backface-visibility:hidden;backface-visibility:hidden}.swiper-creative .swiper-slide{-webkit-backface-visibility:hidden;backface-visibility:hidden;overflow:hidden;transition-property:transform,opacity,height}.swiper-cards{overflow:visible}.swiper-cards .swiper-slide{transform-origin:center bottom;-webkit-backface-visibility:hidden;backface-visibility:hidden;overflow:hidden}@keyframes scroll-hint-appear {
  0% {
    transform: translateX(40px);
    opacity: 0;
  }
  10% {
    opacity: 1;
  }
  50%,
  100% {
    transform: translateX(-40px);
    opacity: 0;
  }
}

.scroll-hint.is-right-scrollable {
  background: linear-gradient(270deg, rgba(0, 0, 0, .15) 0, rgba(0, 0, 0, 0) 16px, rgba(0, 0, 0, 0));
}

.scroll-hint.is-right-scrollable.is-left-scrollable {
  background: linear-gradient(90deg, rgba(0, 0, 0, .15) 0, rgba(0, 0, 0, 0) 16px, rgba(0, 0, 0, 0)), linear-gradient(270deg, rgba(0, 0, 0, .15) 0, rgba(0, 0, 0, 0) 16px, rgba(0, 0, 0, 0));
}

.scroll-hint.is-left-scrollable {
  background: linear-gradient(90deg, rgba(0, 0, 0, .15) 0, rgba(0, 0, 0, 0) 16px, rgba(0, 0, 0, 0));
}

.scroll-hint-icon {
  position: absolute;
  top: calc(50% - 25px);
  left: calc(50% - 60px);
  box-sizing: border-box;
  width: 120px;
  height: auto;
  border-radius: 5px;
  transition: opacity .3s;
  opacity: 0;
  background: rgba(0, 0, 0, .7);
  text-align: center;
  padding: 20px 10px 10px 10px;
}

.scroll-hint-icon-wrap {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  max-height: 100%;
  pointer-events: none;
}

.scroll-hint-text {
  font-size: 10px;
  color: #FFF;
  margin-top: 5px;
}

.scroll-hint-icon-wrap.is-active .scroll-hint-icon {
  opacity: .8;
}

.scroll-hint-icon:before {
  display: inline-block;
  width: 40px;
  height: 40px;
  color: #FFF;
  vertical-align: middle;
  text-align: center;
  content: "";
  background-size: contain;
  background-position: center center;
  background-repeat: no-repeat;
  background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNS43NyIgaGVpZ2h0PSIzMC41MiIgdmlld0JveD0iMCAwIDI1Ljc3IDMwLjUyIj48dGl0bGU+44Ki44K744OD44OIIDM8L3RpdGxlPjxnIGlkPSLjg6zjgqTjg6Tjg7xfMiIgZGF0YS1uYW1lPSLjg6zjgqTjg6Tjg7wgMiI+PGcgaWQ9IuODrOOCpOODpOODvF8xLTIiIGRhdGEtbmFtZT0i44Os44Kk44Ok44O8IDEiPjxwYXRoIGQ9Ik0yMS4zMywzMC41Mkg3Ljg1QTEuNTUsMS41NSwwLDAsMSw2LjMsMjlhMTIuNDYsMTIuNDYsMCwwLDAtLjYzLTQuNDIsMjUuMTYsMjUuMTYsMCwwLDAtNC4yNS01bC0uMDYtLjA2QTUsNSwwLDAsMSwwLDE1Ljg2YTMuNjQsMy42NCwwLDAsMSwxLjE3LTIuNjIsMy42MywzLjYzLDAsMCwxLDUuMTQuMDdWMy43N2EzLjc3LDMuNzcsMCwxLDEsNy41NCwwVjguMzNhMy4zNSwzLjM1LDAsMCwxLDEuMjYsMCwzLDMsMCwwLDEsMiwxLjIyLDMuNSwzLjUsMCwwLDEsMi0uMDYsMy4yMSwzLjIxLDAsMCwxLDIsMS41NCwzLjc0LDMuNzQsMCwwLDEsMywuNDdBNC4yMSw0LjIxLDAsMCwxLDI1Ljc0LDE1YzAsLjExLDAsLjI3LDAsLjQ2YTE5LjI2LDE5LjI2LDAsMCwxLS44NCw3Yy0uMTQuMzgtLjM2LjgxLS41NiwxLjIybC0uMTEuMjJjMCwuMDctLjA5LjE0LS4xNC4yMWE3LjEzLDcuMTMsMCwwLDAtMS4xNywyLjE3Yy0uMDYuNTYtLjA2LDIuMTUtLjA1LDIuNzFBMS41NSwxLjU1LDAsMCwxLDIxLjMzLDMwLjUyWk04LjYxLDI4LjIxaDEyYzAtLjcxLDAtMS43MS4wNy0yLjIzYTguNzQsOC43NCwwLDAsMSwxLjU5LTMuMjVsLjA2LS4xMmExMCwxMCwwLDAsMCwuNDYtMSwxNi44LDE2LjgsMCwwLDAsLjctNi4xMmMwLS4yMywwLS40MSwwLS41NGgwYTIsMiwwLDAsMC0uNjQtMS41MiwxLjMzLDEuMzMsMCwwLDAtMS41NS4wOCwxLjEzLDEuMTMsMCwwLDEtMS4xOC4yOCwxLjE1LDEuMTUsMCwwLDEtLjc4LS45NCwxLjI2LDEuMjYsMCwwLDAtLjc1LTEuMTEsMSwxLDAsMCwwLTEuMTEuMjhsLS4xLjFhMS4xNSwxLjE1LDAsMCwxLTEuMTkuMjksMS4xNiwxLjE2LDAsMCwxLS43OC0uOTVjLS4wOS0uNjgtLjIxLS43Ny0uNy0uODdhLjgyLjgyLDAsMCwwLTEsLjQ4LDEuMTYsMS4xNiwwLDAsMS0yLjE2LS41OFYzLjc3YTEuNDYsMS40NiwwLDEsMC0yLjkyLDB2Ny44NWwwLDQuMzNhMS4xNywxLjE3LDAsMCwxLS44MywxLjExLDEuMTUsMS4xNSwwLDAsMS0xLjItLjM1bC0xLS45MWMtLjQ3LS40Mi0uNzMtLjY2LS44NC0uNzdhMS4zNSwxLjM1LDAsMCwwLTItLjEyTDIuNywxNWExLjMyLDEuMzIsMCwwLDAtLjM5LDFBMi41NywyLjU3LDAsMCwwLDMsMTcuODVsMCwwYTI3LjI0LDI3LjI0LDAsMCwxLDQuNyw1LjYyQTEyLjYzLDEyLjYzLDAsMCwxLDguNjEsMjguMjFaTTIzLjIsMjMuMzVaTTYuNTEsMTYuNTlaIiBmaWxsPSIjZmZmIi8+PC9nPjwvZz48L3N2Zz4=);
}

.scroll-hint-icon:after {
  content: "";
  width: 34px;
  height: 14px;
  display: block;
  position: absolute;
  top: 10px;
  left: 50%;
  margin-left: -20px;
  background-repeat: no-repeat;
  background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIzMy4yOSIgaGVpZ2h0PSIxMi4wMiIgdmlld0JveD0iMCAwIDMzLjI5IDEyLjAyIj48dGl0bGU+44Ki44K744OD44OIIDE8L3RpdGxlPjxnIGlkPSLjg6zjgqTjg6Tjg7xfMiIgZGF0YS1uYW1lPSLjg6zjgqTjg6Tjg7wgMiI+PGcgaWQ9IuODrOOCpOODpOODvF8xLTIiIGRhdGEtbmFtZT0i44Os44Kk44Ok44O8IDEiPjxsaW5lIHgxPSIxLjg1IiB5MT0iNi4wMSIgeDI9IjEwLjQiIHkyPSI2LjAxIiBmaWxsPSIjZmZmIi8+PHBhdGggZD0iTTEwLjQsNy4xN0gxLjg1YTEuMTYsMS4xNiwwLDEsMSwwLTIuMzFIMTAuNGExLjE2LDEuMTYsMCwxLDEsMCwyLjMxWiIgZmlsbD0iI2ZmZiIvPjxwYXRoIGQ9Ik03LjQsMTJhMS4xNSwxLjE1LDAsMCwxLS43Mi0uMjVsLTYuMjUtNUExLjIsMS4yLDAsMCwxLDAsNS44NywxLjE0LDEuMTQsMCwwLDEsLjQ2LDVMNi43LjIzQTEuMTYsMS4xNiwwLDAsMSw4LjEsMi4wOEwzLDUuOTEsOC4xMiwxMEExLjE2LDEuMTYsMCwwLDEsNy40LDEyWiIgZmlsbD0iI2ZmZiIvPjxsaW5lIHgxPSIzMS40NSIgeTE9IjYuMDEiIHgyPSIyMi44OSIgeTI9IjYuMDEiIGZpbGw9IiNmZmYiLz48cGF0aCBkPSJNMzEuNDUsNy4xN0gyMi44OWExLjE2LDEuMTYsMCwxLDEsMC0yLjMxaDguNTZhMS4xNiwxLjE2LDAsMCwxLDAsMi4zMVoiIGZpbGw9IiNmZmYiLz48cGF0aCBkPSJNMjUuOSwxMmExLjE4LDEuMTgsMCwwLDEtLjkxLS40M0ExLjE3LDEuMTcsMCwwLDEsMjUuMTcsMTBsNS4wOS00LjA1TDI1LjIsMi4wOEExLjE2LDEuMTYsMCwwLDEsMjYuNTkuMjNMMzIuODQsNWExLjE2LDEuMTYsMCwwLDEsLjQ1LjkxLDEuMTQsMS4xNCwwLDAsMS0uNDMuOTJsLTYuMjQsNUExLjE3LDEuMTcsMCwwLDEsMjUuOSwxMloiIGZpbGw9IiNmZmYiLz48L2c+PC9nPjwvc3ZnPg==);
  opacity: 0;
  transition-delay: 2.4s;
}

.scroll-hint-icon-wrap.is-active .scroll-hint-icon:after {
  opacity: 1;
}

.scroll-hint-icon-wrap.is-active .scroll-hint-icon:before {
  animation: scroll-hint-appear 1.2s linear;
  animation-iteration-count: 2;
}

.scroll-hint-icon-white {
  background-color: #FFF;
  box-shadow: 0 4px 5px rgba(0, 0, 0, .4);
}

.scroll-hint-icon-white:before {
  background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNS43NyIgaGVpZ2h0PSIzMC41MiIgdmlld0JveD0iMCAwIDI1Ljc3IDMwLjUyIj48dGl0bGU+44Ki44K744OD44OIIDQ8L3RpdGxlPjxnIGlkPSLjg6zjgqTjg6Tjg7xfMiIgZGF0YS1uYW1lPSLjg6zjgqTjg6Tjg7wgMiI+PGcgaWQ9IuODrOOCpOODpOODvF8xLTIiIGRhdGEtbmFtZT0i44Os44Kk44Ok44O8IDEiPjxwYXRoIGQ9Ik0yMS4zMywzMC41Mkg3Ljg1QTEuNTUsMS41NSwwLDAsMSw2LjMsMjlhMTIuNDYsMTIuNDYsMCwwLDAtLjYzLTQuNDIsMjUuMTYsMjUuMTYsMCwwLDAtNC4yNS01bC0uMDYtLjA2QTUsNSwwLDAsMSwwLDE1Ljg2YTMuNjQsMy42NCwwLDAsMSwxLjE3LTIuNjIsMy42MywzLjYzLDAsMCwxLDUuMTQuMDdWMy43N2EzLjc3LDMuNzcsMCwxLDEsNy41NCwwVjguMzNhMy4zNSwzLjM1LDAsMCwxLDEuMjYsMCwzLDMsMCwwLDEsMiwxLjIyLDMuNSwzLjUsMCwwLDEsMi0uMDYsMy4yMSwzLjIxLDAsMCwxLDIsMS41NCwzLjc0LDMuNzQsMCwwLDEsMywuNDdBNC4yMSw0LjIxLDAsMCwxLDI1Ljc0LDE1YzAsLjExLDAsLjI3LDAsLjQ2YTE5LjI2LDE5LjI2LDAsMCwxLS44NCw3Yy0uMTQuMzgtLjM2LjgxLS41NiwxLjIybC0uMTEuMjJjMCwuMDctLjA5LjE0LS4xNC4yMWE3LjEzLDcuMTMsMCwwLDAtMS4xNywyLjE3Yy0uMDYuNTYtLjA2LDIuMTUtLjA1LDIuNzFBMS41NSwxLjU1LDAsMCwxLDIxLjMzLDMwLjUyWk04LjYxLDI4LjIxaDEyYzAtLjcxLDAtMS43MS4wNy0yLjIzYTguNzQsOC43NCwwLDAsMSwxLjU5LTMuMjVsLjA2LS4xMmExMCwxMCwwLDAsMCwuNDYtMSwxNi44LDE2LjgsMCwwLDAsLjctNi4xMmMwLS4yMywwLS40MSwwLS41NGgwYTIsMiwwLDAsMC0uNjQtMS41MiwxLjMzLDEuMzMsMCwwLDAtMS41NS4wOCwxLjEzLDEuMTMsMCwwLDEtMS4xOC4yOCwxLjE1LDEuMTUsMCwwLDEtLjc4LS45NCwxLjI2LDEuMjYsMCwwLDAtLjc1LTEuMTEsMSwxLDAsMCwwLTEuMTEuMjhsLS4xLjFhMS4xNSwxLjE1LDAsMCwxLTEuMTkuMjksMS4xNiwxLjE2LDAsMCwxLS43OC0uOTVjLS4wOS0uNjgtLjIxLS43Ny0uNy0uODdhLjgyLjgyLDAsMCwwLTEsLjQ4LDEuMTYsMS4xNiwwLDAsMS0yLjE2LS41OFYzLjc3YTEuNDYsMS40NiwwLDEsMC0yLjkyLDB2Ny44NWwwLDQuMzNhMS4xNywxLjE3LDAsMCwxLS44MywxLjExLDEuMTUsMS4xNSwwLDAsMS0xLjItLjM1bC0xLS45MWMtLjQ3LS40Mi0uNzMtLjY2LS44NC0uNzdhMS4zNSwxLjM1LDAsMCwwLTItLjEyTDIuNywxNWExLjMyLDEuMzIsMCwwLDAtLjM5LDFBMi41NywyLjU3LDAsMCwwLDMsMTcuODVsMCwwYTI3LjI0LDI3LjI0LDAsMCwxLDQuNyw1LjYyQTEyLjYzLDEyLjYzLDAsMCwxLDguNjEsMjguMjFaTTIzLjIsMjMuMzVaTTYuNTEsMTYuNTlaIi8+PC9nPjwvZz48L3N2Zz4=);
}

.scroll-hint-icon-white:after {
  background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIzMy4yOSIgaGVpZ2h0PSIxMi4wMiIgdmlld0JveD0iMCAwIDMzLjI5IDEyLjAyIj48dGl0bGU+44Ki44K744OD44OIIDI8L3RpdGxlPjxnIGlkPSLjg6zjgqTjg6Tjg7xfMiIgZGF0YS1uYW1lPSLjg6zjgqTjg6Tjg7wgMiI+PGcgaWQ9IuODrOOCpOODpOODvF8xLTIiIGRhdGEtbmFtZT0i44Os44Kk44Ok44O8IDEiPjxsaW5lIHgxPSIxLjg1IiB5MT0iNi4wMSIgeDI9IjEwLjQiIHkyPSI2LjAxIi8+PHBhdGggZD0iTTEwLjQsNy4xN0gxLjg1YTEuMTYsMS4xNiwwLDEsMSwwLTIuMzFIMTAuNGExLjE2LDEuMTYsMCwxLDEsMCwyLjMxWiIvPjxwYXRoIGQ9Ik03LjQsMTJhMS4xNSwxLjE1LDAsMCwxLS43Mi0uMjVsLTYuMjUtNUExLjIsMS4yLDAsMCwxLDAsNS44NywxLjE0LDEuMTQsMCwwLDEsLjQ2LDVMNi43LjIzQTEuMTYsMS4xNiwwLDAsMSw4LjEsMi4wOEwzLDUuOTEsOC4xMiwxMEExLjE2LDEuMTYsMCwwLDEsNy40LDEyWiIvPjxsaW5lIHgxPSIzMS40NSIgeTE9IjYuMDEiIHgyPSIyMi44OSIgeTI9IjYuMDEiLz48cGF0aCBkPSJNMzEuNDUsNy4xN0gyMi44OWExLjE2LDEuMTYsMCwxLDEsMC0yLjMxaDguNTZhMS4xNiwxLjE2LDAsMCwxLDAsMi4zMVoiLz48cGF0aCBkPSJNMjUuOSwxMmExLjE4LDEuMTgsMCwwLDEtLjkxLS40M0ExLjE3LDEuMTcsMCwwLDEsMjUuMTcsMTBsNS4wOS00LjA1TDI1LjIsMi4wOEExLjE2LDEuMTYsMCwwLDEsMjYuNTkuMjNMMzIuODQsNWExLjE2LDEuMTYsMCwwLDEsLjQ1LjkxLDEuMTQsMS4xNCwwLDAsMS0uNDMuOTJsLTYuMjQsNUExLjE3LDEuMTcsMCwwLDEsMjUuOSwxMloiLz48L2c+PC9nPjwvc3ZnPg==);
}

.scroll-hint-icon-white .scroll-hint-text {
  color: #000;
}
/*! destyle.css v4.0.1 | MIT License | https://github.com/nicolas-cusan/destyle.css */

/* Reset box-model and set borders */
/* ============================================ */

*,
::before,
::after {
  box-sizing: border-box;
  border-style: solid;
  border-width: 0;
  min-width: 0;
}

/* Document */
/* ============================================ */

/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 * 3. Remove gray overlay on links for iOS.
 */

html {
  line-height: 1.5; /* 1 */
  -webkit-text-size-adjust: 100%; /* 2 */
  -webkit-tap-highlight-color: transparent; /* 3*/
}

/* Sections */
/* ============================================ */

/**
 * Remove the margin in all browsers.
 */

body {
  margin: 0;
}

/**
 * Render the `main` element consistently in IE.
 */

main {
  display: block;
}

/* Vertical rhythm */
/* ============================================ */

p,
table,
blockquote,
address,
pre,
iframe,
form,
figure,
dl {
  margin: 0;
}

/* Headings */
/* ============================================ */

h1,
h2,
h3,
h4,
h5,
h6 {
  font-size: inherit;
  font-weight: inherit;
  margin: 0;
}

/* Lists (enumeration) */
/* ============================================ */

ul,
ol {
  margin: 0;
  padding: 0;
  list-style: none;
}

/* Lists (definition) */
/* ============================================ */

dt {
  font-weight: bold;
}

dd {
  margin-left: 0;
}

/* Grouping content */
/* ============================================ */

/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */

hr {
  box-sizing: content-box; /* 1 */
  height: 0; /* 1 */
  overflow: visible; /* 2 */
  border-top-width: 1px;
  margin: 0;
  clear: both;
  color: inherit;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */

pre {
  font-family: monospace, monospace; /* 1 */
  font-size: inherit; /* 2 */
}

address {
  font-style: inherit;
}

/* Text-level semantics */
/* ============================================ */

/**
 * Remove the gray background on active links in IE 10.
 */

a {
  background-color: transparent;
  text-decoration: none;
  color: inherit;
}

/**
 * 1. Remove the bottom border in Chrome 57-
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */

abbr[title] {
  text-decoration: underline dotted; /* 2 */
}

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */

b,
strong {
  font-weight: bolder;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */

code,
kbd,
samp {
  font-family: monospace, monospace; /* 1 */
  font-size: inherit; /* 2 */
}

/**
 * Add the correct font size in all browsers.
 */

small {
  font-size: 80%;
}

/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */

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

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

/* Replaced content */
/* ============================================ */

/**
 * Prevent vertical alignment issues.
 */

svg,
img,
embed,
object,
iframe {
  vertical-align: bottom;
}

/* Forms */
/* ============================================ */

/**
 * Reset form fields to make them styleable.
 * 1. Make form elements stylable across systems iOS especially.
 * 2. Inherit text-transform from parent.
 */

button,
input,
optgroup,
select,
textarea {
  /* -webkit-appearance: none;
  appearance: none; */
  vertical-align: middle;
  color: inherit;
  font: inherit;
  background: transparent;
  padding: 0;
  margin: 0;
  /* border-radius: 0; */
  text-align: inherit;
  text-transform: inherit; /* 2 */
}

/**
 * Correct cursors for clickable elements.
 */

button,
[type="button"],
[type="reset"],
[type="submit"] {
  cursor: pointer;
}

button:disabled,
[type="button"]:disabled,
[type="reset"]:disabled,
[type="submit"]:disabled {
  cursor: default;
}

/**
 * Improve outlines for Firefox and unify style with input elements & buttons.
 */

:-moz-focusring {
  outline: auto;
}

select:disabled {
  opacity: inherit;
}

/**
 * Remove padding
 */

option {
  padding: 0;
}

/**
 * Reset to invisible
 */

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

legend {
  padding: 0;
}

/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */

progress {
  vertical-align: baseline;
}

/**
 * Remove the default vertical scrollbar in IE 10+.
 */

textarea {
  overflow: auto;
}

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */

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

/**
 * Correct the outline style in Safari.
 */

[type="search"] {
  outline-offset: -2px; /* 1 */
}

/**
 * Remove the inner padding in Chrome and Safari on macOS.
 */

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

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Fix font inheritance.
 */

::-webkit-file-upload-button {
  -webkit-appearance: button; /* 1 */
  font: inherit; /* 2 */
}

/**
 * Fix appearance for Firefox
 */
[type="number"] {
  -moz-appearance: textfield;
}

/**
 * Clickable labels
 */

label[for] {
  cursor: pointer;
}

/* Interactive */
/* ============================================ */

/*
 * Add the correct display in Edge, IE 10+, and Firefox.
 */

details {
  display: block;
}

/*
 * Add the correct display in all browsers.
 */

summary {
  display: list-item;
}

/*
 * Remove outline for editable content.
 */

[contenteditable]:focus {
  outline: auto;
}

/* Tables */
/* ============================================ */

/**
1. Correct table border color inheritance in all Chrome and Safari.
*/

table {
  border-color: inherit; /* 1 */
  border-collapse: collapse;
}

caption {
  text-align: left;
}

td,
th {
  vertical-align: middle;
  padding: 0;
}

th {
  text-align: left;
  font-weight: bold;
}







/* ==========================
common
========================== */
html {
  background-color: #fff;
  font-size: 16px;
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  min-width: 300px;
  overflow-x: hidden;
  overflow-y: scroll;
  text-rendering: optimizeLegibility;
  -webkit-text-size-adjust: 100%;
     -moz-text-size-adjust: 100%;
      -ms-text-size-adjust: 100%;
          text-size-adjust: 100%;
}
@media screen and (max-width: 1023px){
  html{
    font-size: calc((100vw / 375) * 14);
  }
}

body {
  font-family: "\30D2\30E9\30AE\30CE\89D2\30B4   ProN W3", Hiragino Kaku Gothic ProN, YuGothic, "\30E1\30A4\30EA\30AA", Meiryo, "Helvetica Neue", sans-serif;
  font-weight: 400;
  letter-spacing: 0.04em;
}

h1,
h2,
h3,
h4,
h5,
h6,
dt,
header,
footer,
.font-tbudrgothic {
  font-family: tbudrgothic-std, "\30D2\30E9\30AE\30CE\89D2\30B4   ProN W3", Hiragino Kaku Gothic ProN, YuGothic, "\30E1\30A4\30EA\30AA", Meiryo, "Helvetica Neue", sans-serif;
}

* {
  transition: all 0.15s linear;
}

img{
  max-width: 100%;
  height: auto;
  object-fit: contain;
}
.show-pc{
  display: block;
}
.show-sp{
  display: none;
}
@media screen and (max-width: 1023px){
  .show-pc{
    display: none;
  }
  .show-sp{
    display: block;
  }
}

.csp-body{
  --color-main: #FFB100;
  --color-text: #333;
  --color-sub:#FFFAF0;
  --font-size-p: 14px;
  --width-content:1240px;
  padding-top: 100px;
  color: #333;
}
@media screen and (max-width: 1023px){
  .csp-body{
    padding-top: 0;
  }
}
.csp-navbar-wrapper{
  position: fixed;
  width: 100%;
  top: 0;
  z-index: 1000;
}
@media screen and (max-width: 1023px){
  .csp-navbar-wrapper{
    position: relative;
  }
}
.csp-navbar{
  background-color: #fff;
  padding-top: 28px;
  padding-bottom: 28px;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
/* スクロール時 */
.csp-navbar.scrolled {
  box-shadow: 0 4px 15px rgba(0, 0, 0, 0.2);
  height: auto;
  padding-top: 16px;
  padding-bottom: 16px;
}
.csp-header-logo{
  margin-left: 30px;
  display: block;
  width: 120px;
}
.csp-button-wrapper{
  display: flex;
  flex-shrink: 0;
  padding-right: 40px;
}
@media screen and (max-width: 1023px){
  .csp-navbar{
    display: flex;
    justify-content: space-around;
    padding-top: calc((100vw / 375) *14);
    padding-bottom: calc((100vw / 375) *14);
  }
  .csp-header-logo{
    margin-left: 0;
    width: calc((100vw / 375) *100);
  }
  .csp-button-nav{
    display: none;
  }
  .csp-button-wrapper-sp{
    position: fixed;
    padding-right: 0;
    bottom: 0;
    left: 0;
    background: #fff;
    width: 100%;
    justify-content: center;
    padding-top: calc((100vw / 375) * 10);
    padding-bottom: calc((100vw / 375) * 10);
    z-index: 100;
    box-shadow: 0 -4px 15px rgba(0, 0, 0, 0.2);
  }
}
.csp-button{
  color: #fff;
  background-color: var(--color-main);
  font-size: var(--font-size-p);
  border-radius: 60px;
  padding: 13px 54px 13px 30px;
  line-height: 1;
  border: 1px solid var(--color-main);
  font-weight: bold;
  position: relative;
  display: block;
}
.csp-button::before{
  content: '';
  width: 10px;
  height: 10px;
  display: block;
  background: url(/_astro/icon-arrow.XnRuXra5.svg) no-repeat center center;
  background-size: contain;
  position: absolute;
  top: 50%;
  right: 30px;
  transform: translate(0, -50%);
}
.csp-button:hover{
  background-color: #fff;
  color: var(--color-main);
}
.csp-button:hover::before{
  background: url(/_astro/icon-arrow-yellow.hoDFFZIy.svg) no-repeat center center;
  background-size: contain;
}
.csp-button + .csp-button{
  margin-left: 12px;
}
@media screen and (max-width: 1023px){
  .csp-button{
    padding: calc((100vw / 375) * 10) calc((100vw / 375) * 36) calc((100vw / 375) * 10) calc((100vw / 375) * 20) ;
    font-size: calc((100vw / 375) * 14);
  }
  .csp-button::before{
    width: calc((100vw / 375) * 10);
    height: calc((100vw / 375) * 10);
    position: absolute;
    top: 50%;
    right: calc((100vw / 375) * 16);
    transform: translate(0, -50%);
  }
}
.csp-button-overview::before{
  transform: translate(0, -50%) rotate(270deg);
}
.csp-button-overview-wrapper{
  padding-top: 16px;
  display: flex;
}
@media screen and (max-width: 1023px){
  .csp-button-overview-wrapper{
    padding-top: calc((100vw / 375) * 16);
  }
}
/* ==========================
footer
========================== */

.footer-note-button{
  width:90vw;
  height:25vw;
  text-decoration:none;
  text-align:center;
  padding:0px;
  border:solid #404040;
  border-radius:2.4vw;
  border-width:1px;
  display:block;
}

.footer-note-button img{
width:90vw;
padding-right:20vw;
padding-left:20vw;
}

.footer-note-button:hover{
background-clip: border-box ;
background-color:#9c9c9c;
  border:solid #9c9c9c;
  border-width:1px;

}
.footer-store:hover{
color:white;
background-clip: border-box ;
background-color:#9c9c9c;
  border:solid #9c9c9c;
  border-width:1px;
}
.footer-contact:hover{
color:white;
background-clip: border-box ;
background-color:#9c9c9c;
  border:solid #9c9c9c;
  border-width:1px;
}
.footer-store{
margin:0 0 20px;
}

.footer-store, .footer-contact{
width:100%;
height:70px;
text-decoration:none;
text-align:center;
display:block;
align-items: center;
border:solid #404040;
border-radius:8px;
border-width:1px;
box-sizing: border-box;
display: flex;
flex-direction: column;
justify-content: center;
font-size: 10px;
}

.footer-store span, .footer-contact span{
font-size: 12px;
line-height:1.5;
}
.footer-button{
margin-top: 3.4em;
}

@media (min-width:1024px){
.footer-note-button{
    width:30%;
    height:6.5vw;
    text-decoration:none;
    text-align:center;
    padding:0px;
    border:solid #404040;
    border-radius:0.6vw;
    border-width:1px;
    float:left;
}

.footer-note-button img{
width:13.5vw;
padding-right:0vw;
padding-left:0vw;
}
.footer-store{
  margin:0 30px 0 0;
}

.footer-store, .footer-contact{
  width:140px;
  height:70px;
}
.footer-store-en, .footer-contact-en{
  width:90px;
  height:60px;
}
.footer-store-en{
  margin-right: 10px;
}

.footer-button{
  justify-content: space-between;
  margin-top: 0;
  display:flex;
  justify-content: center;
  align-items: center;
}
}


.footer {
  background: #F5F5F5;
  color: #666666;
  font-size: 12px;
  padding: 4em 0;
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
}

@media (max-width: 1023px) {
  .footer {
    height: auto;
    padding: 20px 0 0;
  }
}

.footer a {
  color: inherit;
}

.footer-container {
  width: 100%;
  height: 100%;
  max-width: 960px;
  margin: 0 auto;
}

@media (max-width: 1023px) {
  .footer-container {
    width: 90%;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
  }
}

.footer-section {
  height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  padding: 2em 0;
}

@media (max-width: 1023px) {
  .footer-section {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}

.footer-section + .footer-section {
  border-top: 1px solid #CCCCCC;
}

.footer-catch {
  font-size: 20px;
  letter-spacing: 2px;
  font-weight: 100;
  margin-bottom: 1em;
}

@media (max-width: 1023px) {
  .footer-catch {
    letter-spacing: -1px;
    margin-bottom: 2em;
  }
}

.footer-company-name,
.footer-company-address {
  line-height: 1.83em;
  letter-spacing: .4px;
}

@media (max-width: 1023px) {
  .footer-company-name,
  .footer-company-address {
    letter-spacing: 0px;
  }
}

.footer-links {
  height: 10em;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
}

@media (max-width: 1023px) {
  .footer-links {
    margin-top: 3em;
    display: block;
    height: auto;
  }
}

.footer-links-site {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin-right: 20px;
}

@media (max-width: 1023px) {
  .footer-links-site {
    width: 100%;
    display: block;
  }
}

.footer-links-site-item {
  line-height: 2.5em;
  letter-spacing: .4px;
}

@media (max-width: 1023px) {
  .footer-links-site-item {
    width: auto;
    display: inline-block;
    margin-right: 8px;
  }
}

.footer-links-socials {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -webkit-box-pack: unset;
      -ms-flex-pack: unset;
          justify-content: unset;
  margin-top: 20px;
}

@media (max-width: 1023px) {
  .footer-links-socials {
    margin-top: 3.4em;
  }
}

.footer-links-socials-item {
  height: 25%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

@media (max-width: 1023px) {
  .footer-links-socials-item {
    height: unset;
    width: unset;
    padding-right: 30px;
  }
}

.footer-links-socials-item a {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.footer-links-socials .footer-social-icon-wrapper {
  width: 2.3em;
  height: 1em;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.footer-note .footer-social-icon-wrapper{
  width: 4em;
}
@media (max-width: 1023px) {
  .footer-links-socials .footer-social-icon-wrapper {
    height: unset;
    width: unset;
  }
}

@media (min-width: 1024px) {
  .footer-links-socials .footer-twitter {
    height: 11.5px;
    width: 14px;
  }

  .footer-links-socials .footer-facebook {
    height: 13px;
    width: 13px;
    padding-left: 0.5px;
    margin-top: -0.5px;
  }

  .footer-links-socials .footer-instagram {
    height: 13px;
    width: 13px;
    padding-left: 0.5px;
    margin-top: -0.5px;
  }

  .footer-links-socials .footer-blog {
    height: 13.5px;
  }
}

@media (max-width: 1023px) {
  .footer-links-socials .footer-twitter {
    width: 20px;
  }

  .footer-links-socials .footer-facebook {
    width: 18px;
  }

  .footer-links-socials .footer-instagram {
    width: 20px;
  }

  .footer-links-socials .footer-note {
    width: 70px;
  }
}

.footer-links-socials .footer-social-name {
  line-height: 1em;
  letter-spacing: 1px;
}

@media (max-width: 1023px) {
  .footer-links-socials .footer-social-name {
    display: none;
  }
}

.footer-section-second {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 45px 0;
}

@media (max-width: 1023px) {
  .footer-section-second {
    -webkit-box-align: unset;
        -ms-flex-align: unset;
            align-items: unset;
    margin: 22px auto 0;
    padding: 50px 0;
  }
}

.footer-languages {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  height: 1em;
}

.footer-languages-item {
  position: relative;
  padding-left: 1.25em;
  height: 1em;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.footer-languages-item a {
  line-height: 1em;
  letter-spacing: 1.2px;
  padding-left: 4px;
}

@media (max-width: 1023px) {
  .footer-languages-item a {
    margin-left: 5px;
  }
}

.footer-languages-item::before {
  position: absolute;
  left: 0;
  top: -1px;
  height: 1em;
  width: 1em;
  content: '';
  border: 1px solid #666666;
  background-color: transparent;
  border-radius: 50%;
  -webkit-transition: all .4s ease-in-out;
  -o-transition: all .4s ease-in-out;
  transition: all .4s ease-in-out;
  -webkit-transform: scale(0.8);
       -o-transform: scale(0.8);
          transform: scale(0.8);
}

.footer-languages-item:hover::before {
  -webkit-transform: scale(1);
       -o-transform: scale(1);
          transform: scale(1);
  background-color: #666666;
}

.footer-languages-item.active::before {
  background-color: #666666;
}

.footer-languages .footer-languages-item + .footer-languages-item {
  margin-left: 2em;
}

@media (max-width: 1023px) {
  .footer-languages .footer-languages-item + .footer-languages-item {
    margin-left: 1.5em;
  }
}

.footer-copyrights {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  height: 2em;
  letter-spacing: .4px;
}

@media (max-width: 1023px) {
  .footer-copyrights {
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    padding: 2em 0;
    letter-spacing: 1px;
  }
}

.footer-scroll-button-wrapper {
  margin-left: 2em;
  height: 2.5em;
  width: 2.5em;
}

#scroll-to-top-button {
  display: block;
  background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAdCAYAAACjbey/AAAA+ElEQVQ4je3VvUoDQRTF8V9C3sFHsbK0FNReK9l0BgUFLfwoFCJI0MbaR7ARRUgl6OOIhcEUKiM3sMTZaFLKHlj27J17/svOhZ1GURQq1MBuLJ3hM9fWqkrjHFvh57Cda2pWhE9LYeFP/go4xF6mvo+D3wDpm4/CP5Xqz3E/xk4VoINu+Fusl9bWoiY2tDMOaKMX/g6rGJYAw6jdx3MvMt9TSG+6irE9RON7Zg9SbQU3WIzMWzNoKdzHMgaZ8EiD6OlH5qIV813AZiJOCI+UepZwiccEuI5rGiXIxvgUZlINqAE14N8AJp1Mr6V/Y/JTA14wj4/wP4UvBDUvk2ewlvYAAAAASUVORK5CYII=);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: auto 50%;
  border: solid 1px #666666;
  border-radius: 50%;
  width: 100%;
  height: 100%;
  float: right;
  -webkit-transition: all 0.1s linear;
  -o-transition: all 0.1s linear;
  transition: all 0.1s linear;
}

#scroll-to-top-button:hover {
  background-position: center 2px;
}



/* ==========================
KV
========================== */
.csp-swiper {
  position: relative;
  padding-bottom: 26px;
}
@media screen and (max-width: 1023px){
  .csp-swiper {
    padding-bottom: calc((100vw / 375) * 40);
    padding-top: calc((100vw / 375) * 4);
  }
}
.csp-swiper .swiper-slide {
  transition: transform 1.6s cubic-bezier(.17,.67,.83,.24);
  width: 71vw;
  padding: 2vw;
  margin: 0 1.6vw;
}
@media screen and (max-width: 1023px){
  .csp-swiper .swiper-slide{
    padding: 5vw 2vw;
  }
}

/* 中央のスライド*/
.swiper-slide-active {
  transform: scale(1.1);
}

.kv-text-wrapper{
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translate(-50%, 0);
  z-index: 1;
  width: var(--width-content);
  padding-right: 20px;
  padding-left: 20px;
  box-sizing: border-box;
  max-width: 100%;
  display: flex;
  justify-content: space-between;
}
@media screen and (max-width: 1023px){
  .kv-text-wrapper{
    bottom: 0;
    left: 0;
    transform: none;
    padding-right: calc((100vw / 375) * 20);
    padding-left: calc((100vw / 375) * 20);
    display: flex;
    flex-direction: column-reverse;
  }
  .kv-text-wrapper img{
    width: 100%;
  }
}
.kv-text{
  text-align: right;
  margin-top: 90px;
  font-size: 14px;
  letter-spacing: 0.04em;
  line-height: 2;
  font-weight: bold;
}
@media screen and (max-width: 1023px){
  .kv-text{
    text-align: left;
    margin-top: 0;
    font-size: calc((100vw / 375) * 12);
    margin-bottom: calc((100vw / 375) * 30);
  }
}
.csp-swiper-pagination-wrapper{
  padding-top: 65px;
  padding-bottom: 60px;
  padding-right: 20px;
  padding-left: 20px;
  box-sizing: border-box;
  display: flex;
  justify-content: space-between;
  width: var(--width-content);
  margin: 0 auto;
  align-items: center;
  max-width: 100%;
}
.swiper-pagination.csp-swiper-pagination{
  position: relative;
  flex-grow: 1;
  display: flex;
  justify-content: flex-end;
  align-items: center;
  bottom: auto;
}
@media screen and (max-width: 1023px){
  .swiper-pagination.csp-swiper-pagination{
    justify-content: center;
  }
}
.swiper-pagination.csp-swiper-pagination .swiper-pagination-bullet{
  width: 6px;
  height: 6px;
  position: relative;
  opacity: 1;
  transition: all 0.3s ease;
  margin-left: 32px;
}
.swiper-pagination.csp-swiper-pagination .swiper-pagination-bullet:first-child{
  margin-left: 0;
}
.swiper-pagination.csp-swiper-pagination .swiper-pagination-bullet::after {
  content: '';
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 30px;             /* クリック範囲を広げる */
  height: 30px;
  background-color: transparent; /* 透明 */
  border-radius: 50%;
  pointer-events: auto;    /* 擬似要素もクリック可能に */
}

.swiper-pagination.csp-swiper-pagination .swiper-pagination-bullet-active{
  background-color: var(--color-main);
}

.circle-pagination {
  position: relative;
}

.circle-pagination .circle-pagination__inner {
  display: flex;
  align-items: center;
  justify-content: center;
  position: absolute;
  top:50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 30px;
  height: 30px;

}

.circle-pagination__inner svg {
  transform: rotate(-90deg);
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%) rotate(-90deg);
}

.circle-pagination__inner circle {
  fill: transparent;
  stroke: var(--color-main);
  stroke-width: 1;
  animation: circle 2s linear forwards;
}

@keyframes circle {
  0% {
    stroke-dasharray: 0 88;
  }

  99.9%,
  to {
    stroke-dasharray: 88 88;
  }
}

.circle-pagination:not(.swiper-pagination-bullet-active) .circle-pagination__inner svg {
  /* 非アクティブ時なサークルのsvgは非表示に */
  display: none;
}

/* ==========================
section common
========================== */
.sec-subtitle{
  text-align: center;

}
.sec-title{
  font-weight: bold;
  text-align: center;
  font-size: 34px;
  padding-top: 10px;
  letter-spacing: 0.08em;
}
@media screen and (max-width: 1023px){
  .sec-title{
    font-size: calc((100vw / 375) * 24);
    letter-spacing: 0.03em;
    padding-top: calc((100vw / 375) * 10);
  }
}
.sec-content{
  width: var(--width-content);
  padding-right: 20px;
  padding-left: 20px;
  max-width: 100%;
  margin-right: auto;
  margin-left: auto;
}
@media screen and (max-width: 1023px){
  .sec-content{
    padding-right: calc((100vw / 375) * 20);
    padding-left: calc((100vw / 375) * 20);
  }
}

/* ==========================
event
========================== */
.event{
  background: var(--color-sub);
  padding-top: 80px;
  padding-bottom: 120px;
}
@media screen and (max-width: 1023px){
  .event{
    padding-top: calc((100vw / 375) * 60);
    padding-bottom: calc((100vw / 375) * 60);
  }
}
.event-content{
  display: flex;
  justify-content: center;
  padding-top: 60px;
  gap: 30px;
  align-items: center;
}
@media screen and (max-width: 1023px){
  .event-content{
    flex-direction: column;
    padding-top: calc((100vw / 375) * 30);
    padding-bottom: calc((100vw / 375) * 30);
  }
}
.event-content-img{
  max-width: 40%;
}
.event-content-img img{
  border-radius: 5px;
}
@media screen and (max-width: 1023px){
  .event-content-img{
    max-width: 100%;
  }
}
.event-info-title{
  font-size: 22px;
  font-weight: bold;
  padding-bottom: 40px;
  text-align: center;
}
@media screen and (max-width: 1023px){
  .event-info-title{
    font-size: calc((100vw / 375) * 20);
    padding-bottom: calc((100vw / 375) * 20);
  }
}
.event-info-list{
  margin-bottom:40px;
}
@media screen and (max-width: 1023px){
  .event-info-list{
    margin-bottom:calc((100vw / 375) * 20);
  }
}
.event-info-list-inner{
  display: flex;
  padding: 10px 0;
  margin-bottom: 20px;
  border-bottom: 1px solid #CCC;
  align-items: center;
}
@media screen and (max-width: 1023px){
  .event-info-list-inner{
    flex-direction: column;
    padding-top: 0;
    padding-bottom: calc((100vw / 375) * 10);
    margin-bottom: calc((100vw / 375) * 20);
  }
}
.event-info-dt{
  flex-shrink: 0;
  padding-right: 20px;
  position: relative;
}
@media screen and (max-width: 1023px){
  .event-info-dt{
    padding-right: 0;
  }
}
.event-info-dt::after{
  content: '';
  width: 1px;
  height: 20px;
  background-color: #ccc;
  display: block;
  position: absolute;
  right: 10px;
  top: 50%;
  transform: translate(0 , -50%);
}
@media screen and (max-width: 1023px){
  .event-info-dt::after{
    content: none;
  }
}
.event-info-dd{
  flex-grow: 1;
}
@media screen and (max-width: 1023px){
  .event-info-dd{
    padding: calc((100vw / 375) * 4) 0 0;
    margin-bottom: 0;
  }
}
.event-info-button{
  display: flex;
  justify-content: center;
}
.next-button{
  color: #fff;
  background-color: var(--color-main);
  font-size: var(--font-size-p);
  border-radius: 60px;
  padding: 13px 54px 13px 30px;
  line-height: 1;
  border: 1px solid var(--color-main);
  font-weight: bold;
  position: relative;
  display: block;
}
.next-button::before{
  content: '';
  width: 10px;
  height: 10px;
  display: block;
  background: url(/_astro/icon-arrow.XnRuXra5.svg) no-repeat center center;
  background-size: contain;
  position: absolute;
  top: 50%;
  right: 30px;
  transform: translate(0, -50%) rotate(-90deg);
}
.next-button:hover{
  background-color: #fff;
  color: var(--color-main);
}
.next-button:hover::before{
  background: url(/_astro/icon-arrow-yellow.hoDFFZIy.svg) no-repeat center center;
  background-size: contain;
}
/* ==========================
difficult
========================== */
.difficult{
  padding-top: 80px;
  background: var(--color-main);
  margin-bottom: 100px;
  position: relative;
}
@media screen and (max-width: 1023px){
  .difficult{
    padding-top: calc((100vw / 375) * 60);
    margin-bottom: calc((100vw / 375) * 60);
  }
}
.difficult::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 50%;
  border-style: solid;
  border-width: 100px 125px 0 125px;
  border-color: var(--color-main) transparent transparent;
  translate: -50% 100%;
}
@media screen and (max-width: 1023px){
  .difficult::after {
    border-width: calc((50 / 375) * 100vw) calc((60 / 375) * 100vw) 0 calc((60 / 375) * 100vw);
  }
}
.difficult .sec-title{
  color: #fff;
  margin-bottom: 60px;
  font-size: 40px;
}
@media screen and (max-width: 1023px){
  .difficult .sec-title{
    font-size: calc((100vw / 375) * 24);
    margin-bottom: calc((100vw / 375) * 30);
  }
}
.difficult-speech-wrapper{
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  padding-bottom: 20px;
}
@media screen and (max-width: 1023px){
  .difficult-speech-wrapper{
    flex-direction: column;
    padding-bottom: calc((100vw / 375) * 10);
  }
}
.difficult-speech-wrapper.is-result{
  padding-bottom: 120px;
}
@media screen and (max-width: 1023px){
  .difficult-speech-wrapper.is-result{
    padding-bottom: calc((100vw / 375) * 10);
  }
}
.difficult-speech {
  position: relative;
  display: block;
  width: 439px;
  max-width: 100%;
  margin-bottom: 20px;
  border-radius: 10px;
  background-color: #ffffff;
  margin-right: 10px;
  margin-left: 10px;
  box-sizing: border-box;
}
@media screen and (max-width: 1023px){
  .difficult-speech{
    width: 100%;
    margin-right: 0;
    margin-left: 0;
  }
}
.difficult-speech.is-result{
  margin-bottom: 0;
  margin-top: 20px;
  background-color: var(--color-main);
}
@media screen and (max-width: 1023px){
  .difficult-speech.is-result{
    margin-top: 0;
    margin-bottom: 20px;
  }
}
.difficult-speech::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 85%;
  border-style: solid;
  border-width: 20px 0 0 20px;
  border-color: #ffffff transparent transparent;
  translate: calc(-50% + 0.4px) 100%;
}
@media screen and (max-width: 1023px){
  .difficult-speech::after {
    left: 30%;
  }
}
.difficult-speech.is-result::after {
  content: "";
  position: absolute;
  bottom: auto;
  left: 85%;
  top: 0;
  border-style: solid;
  border-width: 0 0 20px 20px;
  border-color: transparent transparent var(--color-main) ;
  translate: calc(-50% + 0.4px) -100%;
}
@media screen and (max-width: 1023px){
  .difficult-speech.is-result::after{
    bottom: 0;
    left: 30%;
    top: auto;
    border-style: solid;
    border-width: 20px 0 0 20px;
    border-color: var(--color-main)  transparent transparent;
    translate: calc(-50% + 0.4px) 100%;
  }
}
.difficult-speech.type2::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: auto;
  right: 85%;
  border-style: solid;
  border-width: 20px 20px 0 0;
  border-color: #ffffff transparent transparent;
  translate: calc(-50% + 0.4px) 100%;
}
@media screen and (max-width: 1023px){
  .difficult-speech.type2::after{
    right: 30%;
  }
}
.difficult-speech.type2.is-result::after {
  content: "";
  position: absolute;
  bottom: auto;
  left: auto;
  right: 85%;
  top: 0;
  border-style: solid;
  border-width: 0 20px 20px 0;
  border-color: transparent transparent var(--color-main) ;
  translate: calc(-50% - 0.4px) -100%;
}
@media screen and (max-width: 1023px){
  .difficult-speech.type2.is-result::after{
    bottom: 0;
    left: 70%;
    right: auto;
    top: auto;
    border-style: solid;
    border-width: 20px 20px 0 0;
    border-color: var(--color-main)  transparent transparent;
    translate: calc(-50% - 0.4px) 100%;
  }
}
@media screen and (max-width: 1023px){
  .difficult-speech.type2{
    margin-top: 10px;
  }
}
@media screen and (max-width: 1023px){
  .difficult-speech.type2.is-result{
    margin-top: 10px;
  }
}
.difficult-tag{
  background: var(--color-main);
  font-size: 14px;
  font-weight: bold;
  color: #fff;
  padding: 4px 8px 2px;
  border-radius: 30px;
  display:block;
  position: absolute;
  top: 8px;
  left: 8px;
}
@media screen and (max-width: 1023px){
  .difficult-tag{
    font-size: calc((100vw / 375) * 12);
    padding: calc((100vw / 375) * 2) calc((100vw / 375) * 8) calc((100vw / 375) * 2);
    top: calc((100vw / 375) * 8);
    left: 50%;
    transform: translate(-50%, 0);
    white-space: nowrap;
  }

}
.difficult-tag.is-result{
  background: #fff;
  color: var(--color-text);
}
.difficult-text{
  padding: 40px 0;
  font-weight: bold;
  font-size: 24px;
  line-height: 1.6;
  text-align: center;
}
@media screen and (max-width: 1023px){
  .difficult-text{
    font-size: calc((100vw / 375) * 16);
    padding-top: calc((100vw / 375) * 38);
    padding-bottom: calc((100vw / 375) * 14);
  }
}
.difficult-text.is-result{
  color: #fff;
}
.difficult-img-wrapper{
  display: flex;
  justify-content: center;
  align-items: flex-start;
  padding-bottom: 56px;
}
@media screen and (max-width: 1023px){
  .difficult-img-wrapper{
    flex-wrap: wrap;
    justify-content: space-between;
  }
}
.difficult-img-wrapper.is-result{
  align-items: flex-end;
  padding-bottom: 10px;
}
@media screen and (max-width: 1023px){
  .difficult-img-wrapper.is-result{
    padding-bottom: calc((100vw / 375) * 60);
  }
}
@media screen and (max-width: 1023px){
  .difficult-img-item01{ order: 2; }
  .difficult-img-item02{
     order: 1;
     width: 100%;
     text-align: center;
     margin-bottom: 10px;
    }
  .difficult-img-item03{ order: 3; }
  .difficult-img-item02 img{
    width: 100%;
  }
}
.difficult-speech-small {
  position: relative;
  display: inline-block;
  width: 260px;
  max-width: 100%;
  margin-right: 20px;
  border-radius: 10px;
  background-color: #ffffff;
}
@media screen and (max-width: 1023px){
  .difficult-speech-small {
    position: relative;
    width: calc((100vw / 375) * 155);
    margin-right: 0;
    margin-top: 20px;
  }
}
.difficult-speech-small.is-result{
  background-color: var(--color-main);
}
.difficult-speech-small.type2{
  margin-right: 0;
  margin-left: 20px;
}
@media screen and (max-width: 1023px){
  .difficult-speech-small.type2{
    margin-left: 0;
    margin-top: 20px;
  }
}
.difficult-speech-small::after {
  content: "";
  position: absolute;
  top: 70%;
  right: 0;
  border-style: solid;
  border-width: 10px 0 10px 20px;
  border-color: transparent transparent transparent #ffffff;
  translate: 100% -50%;
}
@media screen and (max-width: 1023px){
  .difficult-speech-small::after {
    top: 0;
    right: auto;
    left: 30%;
    border-style: solid;
    border-width: 0 0 20px 20px;
    border-color: transparent transparent #ffffff;
    translate: calc(-50% + 0.4px) -100%;
  }
}
.difficult-speech-small.is-result::after {
  top: 30%;
  border-color: transparent transparent transparent var(--color-main);
}
@media screen and (max-width: 1023px){
  .difficult-speech-small.is-result::after{
    top: 0;
    right: auto;
    left: 30%;
    border-style: solid;
    border-width: 0 0 20px 20px;
    border-color: transparent transparent var(--color-main);
    translate: calc(-50% + 0.4px) -100%;
  }
}
.difficult-speech-small.type2::after {
  content: "";
  position: absolute;
  top: 70%;
  right: auto;
  left: 0;
  border-style: solid;
  border-width: 10px 20px 10px 0;
  border-color: transparent #ffffff transparent transparent;
  translate: -100% -50%;
}
@media screen and (max-width: 1023px){
  .difficult-speech-small.type2::after {
    top: 0;
    left: 70%;
    border-style: solid;
    border-width: 0 20px 20px 0;
    border-color: transparent transparent #ffffff;
    translate: calc(-50% - 0.4px) -100%;
  }
}
.difficult-speech-small.type2.is-result::after{
  top: 30%;
  border-color: transparent var(--color-main) transparent transparent;
}
@media screen and (max-width: 1023px){
  .difficult-speech-small.type2.is-result::after{
    top: 0;
    left: 60%;
    border-style: solid;
    border-width: 0 20px 20px 0;
    border-color: transparent transparent var(--color-main);
    translate: calc(-50% - 0.4px) -100%;
  }
}
.difficult-text-small{
  padding: 40px 0 30px;
  font-weight: bold;
  font-size: 20px;
  line-height: 1.6;
  text-align: center;
}
@media screen and (max-width: 1023px){
  .difficult-text-small{
    padding-top: calc((100vw / 375) * 38);
    padding-bottom: calc((100vw / 375) * 14);
    font-size: calc((100vw / 375) * 12);
  }
}
.difficult-text-small.is-result{
  color: #fff;
}
.difficult-next{
  text-align: center;
  padding-bottom: 95px;
}
@media screen and (max-width: 1023px){
  .difficult-next{
    padding-bottom: calc((100vw / 375) * 60);
  }
  .difficult-next img{
    width: 100%;
  }
}
.difficult-arrow{
  display: block;
  position: absolute;
  bottom: -60px;
  left: 50%;
  transform: translate(-50%, 0);
  z-index: 1;
}
@media screen and (max-width: 1023px){
  .difficult-arrow{
    width: calc((100vw / 375) * 48);
    bottom: calc((100vw / 375) * -20);
  }
  .difficult-arrow img{
    width: 100%;
  }
}
.result{
  padding-top: 28px;
}
@media screen and (max-width: 1023px){
  .result{
    padding-top: 0;
  }

}
@media screen and (max-width: 1023px){
  .difficult-result-wrapper{
    display: flex;
    flex-direction: column-reverse;
  }
}

/* ==========================
enthusiasm
========================== */
.enthusiasm{
  background: var(--color-sub);
  padding-top: 120px;
  padding-bottom: 120px;
}
@media screen and (max-width: 1023px){
  .enthusiasm{
    padding-top: calc((100vw / 375) * 60);
    padding-bottom: calc((100vw / 375) * 60);
  }
}
.enthusiasm-content{
  display: flex;
  justify-content: space-between;
  padding-top: 60px;
  gap: 38px;
}
@media screen and (max-width: 1023px){
  .enthusiasm-content{
    flex-direction: column;
    padding-top: calc((100vw / 375) * 30);
    padding-bottom: calc((100vw / 375) * 30);
  }
}
.enthusiasm-article{
  width: 408px;
  max-width: 100%;
}
@media screen and (max-width: 1023px){
  .enthusiasm-article{
    width: 100%;
  }
}
.enthusiasm-logo{
  padding-bottom: 56px;
}
@media screen and (max-width: 1023px){
  .enthusiasm-logo{
    text-align: center;
    padding-bottom: calc((100vw / 375) * 30);
  }
  .enthusiasm-logo img{
    width: 100%;
  }
}
.enthusiasm-article-title{
  font-size: 22px;
  font-weight: bold;
  padding-bottom: 40px;
}
@media screen and (max-width: 1023px){
  .enthusiasm-article-title{
    font-size: calc((100vw / 375) * 20);
    padding-bottom: calc((100vw / 375) * 20);
  }
}
.enthusiasm-article-text{
  font-size: 16px;
  line-height: 1.7;
}
@media screen and (max-width: 1023px){
  .enthusiasm-article-text{
    font-size: calc((100vw / 375) * 14);
  }
}
.enthusiasm-article-text + .enthusiasm-article-text{
  padding-top: 24px;
}
@media screen and (max-width: 1023px){
  .enthusiasm-article-text + .enthusiasm-article-text{
    padding-top: calc((100vw / 375) * 16);
  }
}
.enthusiasm-article-button{
  padding-top: 32px;
  display: flex;
}
@media screen and (max-width: 1023px){
  .enthusiasm-article-button{
    padding-top: calc((100vw / 375) * 40);
  }
  .enthusiasm-article-button a{
    width: 100%;
    text-align: center;
  }
}
@media screen and (max-width: 1023px){
  .enthusiasm-img{
    text-align: center;
    width: 100%;
    padding-bottom: calc((100vw / 375) * 30);
  }
  .enthusiasm-img img{
    width: 100%;
  }
}


/* ==========================
message
========================== */
.message-content{
  display: flex;
  justify-content: space-between;
  padding-top: 120px;
  padding-bottom: 120px;
  align-items: center;
  gap: 38px;
}
@media screen and (max-width: 1023px){
  .message-content{
    flex-direction: column-reverse;
    padding-top: calc((100vw / 375) * 60);
    padding-bottom: calc((100vw / 375) * 60);
    gap: 0;
  }
}
.message-img{
  width: 472;
  max-width: 100%;
}
@media screen and (max-width: 1023px){
  .message-img{
    width: 100%;
    padding-top: calc((100vw / 375) * 40);
    text-align: center;
  }
}
.message-article{
  width: 574px;
}
@media screen and (max-width: 1023px){
  .message-article{
    width: 100%;
  }
}
.message-quote{
  padding-top: 40px;
  padding-bottom: 24px;
  font-size: 24px;
  text-align: center;
}
@media screen and (max-width: 1023px){
  .message-quote{
    font-size: calc((100vw / 375) * 20);
    padding-top: calc((100vw / 375) * 40);
    padding-bottom: calc((100vw / 375) *30);
  }
}
.message-quote span{
  display: inline-block;
  position: relative;
}
.message-quote span::before{
  content: '';
  display: block;
  width: 20px;
  height: 20px;
  background: url(/_astro/message_quote_left.C_0rtCTW.svg) center top no-repeat;
  position: absolute;
  top: 0;
  left: -20px;
}
@media screen and (max-width: 1023px){
  .message-quote span::before{
    width: calc((100vw / 375) * 20);
    height: calc((100vw / 375) * 20);
    font-size: calc((100vw / 375) * 40);
    left: calc((100vw / 375) * -30);
  }
}
.message-quote span::after{
  content: '';
  background: url(/_astro/message_quote_right.DMDUtL_b.svg) center bottom no-repeat;
  display: block;
  width: 20px;
  height: 20px;
  position: absolute;
  bottom: 0;
  right: -20px;
}
@media screen and (max-width: 1023px){
  .message-quote span::after{
    width: calc((100vw / 375) * 20);
    height: calc((100vw / 375) * 20);
    font-size: calc((100vw / 375) * 40);
    right: calc((100vw / 375) * -20);
  }
}
.message-name{
  padding-top: 16px;
  text-align: right;
}
@media screen and (max-width: 1023px){
  .message-name{
    padding-top: calc((100vw / 375) * 16);
  }
}

/* ==========================
overview
========================== */
.overview{
  padding-bottom: 120px;
}
@media screen and (max-width: 1023px){
  .overview{
    padding-bottom: calc((100vw / 375) * 60);
  }
}
.overview-list{
  padding-top: 60px;
}
@media screen and (max-width: 1023px){
  .overview-list{
    padding-top: calc((100vw / 375) * 40);
  }
}
.overview-item{
  display: flex;
  align-items: center;
  gap: 38px;
}
@media screen and (max-width: 1023px){
  .overview-item{
    flex-direction: column;
    gap: calc((100vw / 375) * 30);
  }
}
.overview-item:nth-child(2n){
  flex-direction: row-reverse;
}
@media screen and (max-width: 1023px){
  .overview-item:nth-child(2n){
    flex-direction: column;
  }
}
.overview-item + .overview-item{
  padding-top: 80px;
}
@media screen and (max-width: 1023px){
  .overview-item + .overview-item{
    padding-top: calc((100vw / 375) * 60);
  }
}
.overview-item-article{
  width: 380px;
  max-width: 100%;
}
@media screen and (max-width: 1023px){
  .overview-item-article{
    width: 100%;
  }
}
.overview-item-title{
  font-size: 24px;
  font-weight: bold;
  letter-spacing: 0.06em;
  display: flex;
  align-items: center;
  gap: 8px;
  padding-bottom: 20px;
}
@media screen and (max-width: 1023px){
  .overview-item-title{
    font-size: calc((100vw / 375) * 20);
    padding-bottom: calc((100vw / 375) * 20);
  }
}
.overview-item-title span{
  line-height: 1;
  padding-right: 10px;
}
@media screen and (max-width: 1023px){
  .overview-item-title span{
    padding-right: calc((100vw / 375) * 10);
  }
}
.overview-item-text{
  font-size: 14px;
  line-height: 1.7;
}
@media screen and (max-width: 1023px){
  .overview-item-text{
    font-size: calc((100vw / 375) * 14);
  }
}
.overview-item-text + .overview-item-text{
  padding-top: 16px;
}
@media screen and (max-width: 1023px){
  .overview-item-text + .overview-item-text{
    padding-top: calc((100vw / 375) * 16);
  }
}

/* ==========================
case
========================== */
.case{
  background: var(--color-main);
  padding-top: 120px;
  padding-bottom: 120px;
}
@media screen and (max-width: 1023px){
  .case{
    padding-top: calc((100vw / 375) * 60);
    padding-bottom: calc((100vw / 375) * 60);
    text-align: center;
  }
}
.case .sec-title{
  color: #fff;
  margin-bottom: 60px;
}
@media screen and (max-width: 1023px){
  .case .sec-title{
    margin-bottom: calc((100vw / 375) * 40);
  }
}
.case-content{
  display: flex;
  justify-content: space-between;
  gap: 30px;
}
@media screen and (max-width: 1023px){
  .case-content{
    flex-direction: column;
  }
}
.case-list{
  width: 574px;
  max-width: 100%;
}
@media screen and (max-width: 1023px){
  .case-list{
    width: 100%;
  }
}
.case-item{
  position: relative;
}
.case-img img{
  width: 100%;
}
@media screen and (max-width: 1023px){
  .case-data-title-wrapper{
    background: #fff;
    padding: calc((100vw / 375) * 20) calc((100vw / 375) * 20) 0;
  }
}
.case-data-title{
  background: var(--color-main);
  color: #fff;
  display: inline-block;
  padding: 20px;
  position: absolute;
  bottom: 0;
  left: 0;
  font-size: 24px;
  border-radius: 0 5px 0 0;
}
@media screen and (max-width: 1023px){
  .case-data-title{
    font-size: calc((100vw / 375) * 20);
    padding: calc((100vw / 375) * 10);
    position: relative;
    bottom: auto;
    left: auto;
    display: block;
    border-radius: 5px;
  }
}
.case-data-title span{
  font-size: 12px;
  font-weight: bold;
  line-height: 1;
  display: block;
}
@media screen and (max-width: 1023px){
  .case-data-title span{
    font-size: calc((100vw / 375) * 12);
    padding-bottom: calc((100vw / 375) * 6);
  }
}
.case-data-text{
  background: #fff;
  border-radius: 0 0 5px 5px;
  padding: 40px;
  line-height: 1.7;
}
@media screen and (max-width: 1023px){
  .case-data-text{
    padding: calc((100vw / 375) * 20);
    text-align: left;
  }
}
/* ==========================
recommend
========================== */
.recommend{
  padding-top: 120px;
  padding-bottom: 120px;
}
@media screen and (max-width: 1023px){
  .recommend{
    padding-top: calc((100vw / 375) * 60);
    padding-bottom: calc((100vw / 375) * 60);
  }
}
.recommend .sec-title{
  padding-top: 0;
  padding-bottom: 10px;
  font-size: 24px;
}
@media screen and (max-width: 1023px){
  .recommend .sec-title{
    font-size: calc((100vw / 375) * 20);
    padding-bottom: calc((100vw / 375) * 10);
  }
}
.recommend-text{
  text-align: center;
  font-size: 18px;
  font-weight: bold;
  padding-bottom: 30px;
}
@media screen and (max-width: 1023px){
  .recommend-text{
    font-size: calc((100vw / 375) * 16);
    padding-bottom: calc((100vw / 375) * 20);
  }
}
.recommend-img img{
  width: 100%;
}
/* ==========================
olan
========================== */
.plan{
  padding-top: 120px;
  padding-bottom: 120px;
  background: var(--color-sub);
}
@media screen and (max-width: 1023px){
  .plan{
    padding-top: calc((100vw / 375) * 60);
    padding-bottom: calc((100vw / 375) * 60);
  }
}
.plan-text{
  text-align: center;
  padding-top: 40px;
  padding-bottom: 32px;
  font-size: 24px;
}
@media screen and (max-width: 1023px){
  .plan-text{
    font-size: calc((100vw / 375) * 20);
    padding-top: calc((100vw / 375) * 40);
    padding-bottom: calc((100vw / 375) * 32);
  }
}
.plan-basic-title{
  font-size: 20px;
  font-weight: bold;
  border-radius: 5px;
  background: var(--color-main);
  padding-top: 10px;
  padding-bottom: 10px;
  text-align: center;
  color: #fff;
}
@media screen and (max-width: 1023px){
  .plan-basic-title{
    font-size: calc((100vw / 375) * 18);
    padding-top: calc((100vw / 375) * 10);
    padding-bottom: calc((100vw / 375) * 10);
  }
}
.plan-table-wrapper{
  width: var(--width-content);
  padding-right: 20px;
  padding-left: 20px;
  max-width: 100%;
  margin-right: auto;
  margin-left: auto;
}
@media screen and (max-width: 1023px){
  .plan-table-wrapper{
    width: 100%;
    padding-right: calc((100vw / 375) * 20);
    padding-left: calc((100vw / 375) * 20);
    margin-top: calc((100vw / 375) * 20);
    overflow-x: auto;
    -webkit-overflow-scrolling: touch; /* iOSでスムーズスクロール */
  }
}
.plan-table{
  width: 100%;
  margin-top: 24px;
  border-collapse: separate;
  border-spacing: 0;
}
@media screen and (max-width: 1023px){
  .plan-table{
    width: 200vw;
    margin-top: calc((100vw / 375) * 20);
    margin-right: auto;
    margin-left: auto;
    margin-bottom: calc((100vw / 375) * 20);
    padding-right: calc((100vw / 375) * 20);
  }
}

.plan-table th, .plan-table td {
  text-align: center;
  font-size: 20px;
  letter-spacing: 0.08em;
  font-weight: bold;
}
@media screen and (max-width: 1023px){
  .plan-table th, .plan-table td {
    font-size:calc((100vw / 375) * 16);
  }
}

.plan-table th {
  color: #fff;
}
.plan-table td{
  background: #fff;
  padding-top: 20px;
  padding-bottom: 20px;
  box-shadow: 0 0 0 1px #ccc;
}
@media screen and (max-width: 1023px){
  .plan-table td{
    padding-top:calc((100vw / 375) * 20) ;
    padding-bottom:calc((100vw / 375) * 20) ;
  }
}
.plan-table td.plan-empty-cell{
  background: transparent;
  box-shadow: none;
}
.plan-table-corner-lefttop{
  border-radius: 5px 0 0 0;
}
.plan-table-corner-righttop{
  border-radius: 0 5px 0 0;
}
.plan-table-corner-leftbottom{
  border-radius: 0 0 0 5px;
}
.plan-table-corner-rightbottom{
  border-radius: 0 0 5px 0;
}
.plan-table-corner-top{
  border-radius: 5px 5px 0 0;
}
.plan-table-corner-bottom{
  border-radius: 0 0 5px 5px ;
}
.plan-table-header {
  background-color: var(--color-text);
  box-shadow: 0 0 0 1px #ccc;
}
.plan-table-header.type2{
  border-right: none;
}
.plan-table-detail {
  background: #fff;
  color: var(--color-text);
  padding-top: 20px;
  padding-bottom: 20px;
}
@media screen and (max-width: 1023px){
  .plan-table-detail{
    padding-top:calc((100vw / 375) * 20) ;
    padding-bottom:calc((100vw / 375) * 20) ;
  }
}
.plan-table-detail.type2{
  border-left: none;
}
.plan-table-title{
  padding-top: 20px;
  padding-bottom: 20px;
}
@media screen and (max-width: 1023px){
  .plan-table-title{
    padding-top:calc((100vw / 375) * 20) ;
    padding-bottom:calc((100vw / 375) * 20) ;
  }
}
.plan-empty-cell{
  background-color: transparent;
  border: none;
}
.plan-icon-plus{
  text-align: center;
  padding-top: 32px;
  padding-bottom: 32px;
}
@media screen and (max-width: 1023px){
  .plan-icon-plus{
    padding-top:calc((100vw / 375) * 32) ;
    padding-bottom:calc((100vw / 375) * 32) ;
  }
}
.plan-table-option-wrapper{
  display: flex;
  justify-content: center;
  gap: 38px;
  padding-bottom: 16px;
}
@media screen and (max-width: 1023px){
  .plan-table-option-wrapper{
    flex-direction: column;
    gap: 0;
  }
  .plan-table-option-wrapper .plan-table{
    width: 100%;
    padding-right: 0;
  }
}
.plan-table-option td{
  font-size: 16px;
  font-weight: normal;
  padding-right: 40px;
  padding-left: 40px;
}
@media screen and (max-width: 1023px){
  .plan-table-option td{
    font-size: calc((100vw / 375) * 16);
    padding-right: calc((100vw / 375) * 20);
    padding-left: calc((100vw / 375) * 20);
    text-align: left;
  }
}
.plan-attention{
  font-size: 12px;
  text-align: right;
}
@media screen and (max-width: 1023px){
  .plan-attention{
    font-size: calc((100vw / 375) * 12);
    text-align: left;
  }
}
/* @media screen and (max-width: 1023px){
  .plan-table-fixed{
    position: sticky;
    left: 0;
  }
} */


/* ==========================
contact
========================== */
.csp-contact{
  padding-top: 120px;
  padding-bottom: 120px;
}
@media screen and (max-width: 1023px){
  .csp-contact{
    padding-top: calc((100vw / 375) * 60);
    padding-bottom: calc((100vw / 375) * 60);
  }
}
.csp-contact-content{
  width: 840px;
  max-width: 100%;
  padding-top: 60px;
  padding-right: 20px;
  padding-left: 20px;
  box-sizing: border-box;
}

.csp-contact form p{
  padding: 10px 0 30px;
  position: relative;
  display: flex;
}
@media screen and (max-width: 1023px){
  .csp-contact form p{
    padding: calc((100vw / 375) * 10) 0 calc((100vw / 375) * 20);
    flex-direction: column;
  }
}
.csp-contact .wpcf7-form-control-wrap{
  flex-grow: 1;
}
.csp-contact form p.contactForm__item--fullwidth {
  width: 100%;
  display: block;
}

/* .csp-contact form .selectWrapper .wpcf7-form-control-wrap::after {
  content: "";
  background-image: url(data:image/png;base64,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);
  height: 20px;
  width: 20px;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
  position: absolute;
  right: 0;
  top: 10px;
  pointer-events: none;
} */

/* .csp-contact form select {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  height: 50px;
  font-size: 16px;
  width: 100%;
  border-radius: 0;
  margin: 0;
  padding: 10px 0;
  vertical-align: middle;
  color: #999999;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  position: relative;
  border: none;
  outline: 0;
  border-bottom: 1px solid #CCCCCC;
  background: #fff;
} */

.csp-contact form select.wpcf7-not-valid{
  border-bottom: 1px solid #ff6666;
}

.csp-contact form input[type="text"],
.csp-contact form input[type="mail"],
.csp-contact form input[type="email"],
.csp-contact form input[type="tel"]{
  height: 50px;
  font-size: 16px;
  width: 100%;
  padding: 10px 0 20px 0;
  vertical-align: top;
  border: none;
  outline: 0;
  border-bottom: 1px solid #CCCCCC;
  border-radius:0;
}

.csp-contact form input[type="text"].wpcf7-not-valid,
.csp-contact form input[type="mail"].wpcf7-not-valid,
.csp-contact form input[type="email"].wpcf7-not-valid{
  border-bottom: 1px solid #ff6666;
}

.csp-contact form input[type="text"]:focus,
.csp-contact form input[type="mail"]:focus,
.csp-contact form input[type="email"]:focus{
  border-bottom: 1px solid #000000;
}

.csp-contact form textarea{
  min-height: 200px;
  background-color: #ffffff;
  border: solid 1px #cccccc;
  outline: 0;
  height: 2em;
  font-size: 16px;
  width: 100%;
  padding: 10px;
  margin-top: 15px;
  border-radius: 5px;
}
.csp-contact label{
  width: 200px;
  max-width: 100%;
}
@media screen and (max-width: 1023px){
  .csp-contact label{
    width: 100%;
  }
}
.csp-contact label[for="checkbox"]{
  display: flex;
}
.csp-contact .contactForm__label--required{
  margin-left: 10px;
}
.csp-contact .wpcf7-checkbox{
  display: flex;
  flex-direction: column;
}
.csp-contact form textarea.wpcf7-not-valid{
  border: 1px solid #ff6666;
}

.csp-contact form textarea:focus{
  border: solid 1px #000000;
}

.csp-contact form .contactForm__label--required {
  color: #ff6666;
}

.csp-contact .contactForm__item--submit {
  text-align: center;
}
.csp-contact .button-wrapper{
  display: inline-block;
  position: relative;
}
.csp-contact .contactForm__submitButton{
  color: #fff;
  background-color: var(--color-main);
  font-size: var(--font-size-p);
  border-radius: 60px;
  padding: 13px 54px 13px 30px;
  line-height: 1;
  border: 1px solid var(--color-main);
  font-weight: bold;
  position: relative;
  display: inline-block;
}
.csp-contact .contactForm__submitButton:hover{
  background-color: #fff;
  color: var(--color-main);
}
@media screen and (max-width: 1023px){
  .csp-contact .contactForm__submitButton{
    font-size: calc((100vw / 375) * 16);
    padding: calc((100vw / 375) * 13) calc((100vw / 375) * 54) calc((100vw / 375) * 13) calc((100vw / 375) * 30) ;
  }
}
.csp-contact .right-arrow{
  display: block;
  width: 10px;
  height: 10px;
  position: absolute;
  top: 50%;
  right: 30px;
  transform: translate(0, -50%);
}
@media screen and (max-width: 1023px){
  .csp-contact .right-arrow{
    width: calc((100vw / 375) * 10);
    height: calc((100vw / 375) * 10);
    right: calc((100vw / 375) * 30);
  }
}

.csp-contact .right-arrow::before{
  content: '';
  width: 10px;
  height: 10px;
  display: block;
  background: url(/_astro/icon-arrow.XnRuXra5.svg) no-repeat center center;
  background-size: contain;
  rotate: 270deg;
}
.csp-contact .button-wrapper:hover .right-arrow::before{
  background: url(/_astro/icon-arrow-yellow.hoDFFZIy.svg) no-repeat center center;
  background-size: contain;
}
@media screen and (max-width: 1023px){
  .csp-contact .right-arrow::before{
    width: calc((100vw / 375) * 10);
    height: calc((100vw / 375) * 10);
  }
}
.csp-contact .wpcf7-spinner{
  position: absolute;
  bottom: 10px;
  right: -100px;
}
.csp-contact span.wpcf7-not-valid-tip{
  margin-top: -1px;
  color: #ff6666;
  font-size: 14px;
  line-height: 1;
  padding-top: 16px;
}

@media (max-width: 1023px) {
  .csp-contact span.wpcf7-not-valid-tip{
    display: block;
    margin-bottom: -5px;
  }
}

.csp-contact .response-output-wrap{
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 100%;
}

.csp-contact .response-output-wrap .wpcf7-response-output{
  font-size: 14px;
  padding: 0 0 0 30px;
  position: relative;
  margin-top: 1em;
}

@media (max-width: 1023px) {
  .csp-contact .response-output-wrap .wpcf7-response-output {
    padding: 25px 0 0 0;
    text-align: center;
  }
}

.csp-contact .response-output-wrap .wpcf7-response-output::before {
  content: "";
  height: 20px;
  width: 20px;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
  position: absolute;
  left: 0;
  top: 0;
  pointer-events: none;
}

@media (max-width: 1023px) {
  .csp-contact .response-output-wrap .wpcf7-response-output::before{
    right: 0;
    margin: auto;
  }
}

.csp-contact .response-output-wrap .wpcf7-mail-sent-ok {
  color: #22ac38;
  border: none;
  letter-spacing: 1.2px;
}

.csp-contact .response-output-wrap .wpcf7-mail-sent-ok::before {
  background-image: url(data:image/png;base64,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);
}

.csp-contact .response-output-wrap .wpcf7-validation-errors,
.csp-contact .response-output-wrap div.wpcf7-acceptance-missing{
  color: #ff6666;
  border: none;
}

.csp-contact .response-output-wrap .wpcf7-validation-errors::before,
.csp-contact .response-output-wrap div.wpcf7-acceptance-missing::before {
  background-image: url(data:image/png;base64,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);
}

/* ==========================
animation
========================== */
.js-fadein {
  opacity: 0;
  transform: translateY(50px);
  transition: opacity 0.6s ease-out, transform 0.6s ease-out;
}

.js-fadein.is-visible {
  opacity: 1;
  transform: translateY(0);
}

.csp-button-wrapper.js-fadeout.hidden {
  opacity: 0;
}


/* ==========================
table scroll
========================== */
/* ScrollHintのデフォルトアイコンを非表示 */
.scroll-hint-icon::before {
  display: none;
}

/* オリジナルのアイコンを追加 */
.scroll-hint-icon {
  width: calc((100vw / 375) * 210);
  height: calc((100vw / 375) * 254);
  border: 5px solid var(--color-main);
  border-radius: 5px;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  padding-top: calc((100vw / 375) * 35);
}
.scroll-hint-icon:before{
  display: inline-block;
  content: '';
  background-image: url(/_astro/icon_scroll.QJFhP6-p.svg);  /* オリジナルアイコンのパス */
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  width:  calc((100vw / 375) * 150);
  height: calc((100vw / 375) * 147);
}
.scroll-hint-icon-white:after{
  display: none;
}
.scroll-hint-text{
  font-size: calc((100vw / 375) * 24);
  position: absolute;
  bottom: 2vw;
  left: 50%;
  transform: translateX(-50%);
  font-weight: bold;
  font-family: tbudrgothic-std, "\30D2\30E9\30AE\30CE\89D2\30B4   ProN W3", Hiragino Kaku Gothic ProN, YuGothic, "\30E1\30A4\30EA\30AA", Meiryo, "Helvetica Neue", sans-serif;
}
