/*!*************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].use[1]!./node_modules/swiper/swiper-bundle.min.css ***!
  \*************************************************************************************************************************/
/**
 * Swiper 8.0.7
 * Most modern mobile touch slider and framework with hardware accelerated transitions
 * https://swiperjs.com
 *
 * Copyright 2014-2022 Vladimir Kharlampidi
 *
 * Released under the MIT License
 *
 * Released on: March 4, 2022
 */

@font-face{font-family:swiper-icons;src:url('data:application/font-woff;charset=utf-8;base64, d09GRgABAAAAAAZgABAAAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABGRlRNAAAGRAAAABoAAAAci6qHkUdERUYAAAWgAAAAIwAAACQAYABXR1BPUwAABhQAAAAuAAAANuAY7+xHU1VCAAAFxAAAAFAAAABm2fPczU9TLzIAAAHcAAAASgAAAGBP9V5RY21hcAAAAkQAAACIAAABYt6F0cBjdnQgAAACzAAAAAQAAAAEABEBRGdhc3AAAAWYAAAACAAAAAj//wADZ2x5ZgAAAywAAADMAAAD2MHtryVoZWFkAAABbAAAADAAAAA2E2+eoWhoZWEAAAGcAAAAHwAAACQC9gDzaG10eAAAAigAAAAZAAAArgJkABFsb2NhAAAC0AAAAFoAAABaFQAUGG1heHAAAAG8AAAAHwAAACAAcABAbmFtZQAAA/gAAAE5AAACXvFdBwlwb3N0AAAFNAAAAGIAAACE5s74hXjaY2BkYGAAYpf5Hu/j+W2+MnAzMYDAzaX6QjD6/4//Bxj5GA8AuRwMYGkAPywL13jaY2BkYGA88P8Agx4j+/8fQDYfA1AEBWgDAIB2BOoAeNpjYGRgYNBh4GdgYgABEMnIABJzYNADCQAACWgAsQB42mNgYfzCOIGBlYGB0YcxjYGBwR1Kf2WQZGhhYGBiYGVmgAFGBiQQkOaawtDAoMBQxXjg/wEGPcYDDA4wNUA2CCgwsAAAO4EL6gAAeNpj2M0gyAACqxgGNWBkZ2D4/wMA+xkDdgAAAHjaY2BgYGaAYBkGRgYQiAHyGMF8FgYHIM3DwMHABGQrMOgyWDLEM1T9/w8UBfEMgLzE////P/5//f/V/xv+r4eaAAeMbAxwIUYmIMHEgKYAYjUcsDAwsLKxc3BycfPw8jEQA/gZBASFhEVExcQlJKWkZWTl5BUUlZRVVNXUNTQZBgMAAMR+E+gAEQFEAAAAKgAqACoANAA+AEgAUgBcAGYAcAB6AIQAjgCYAKIArAC2AMAAygDUAN4A6ADyAPwBBgEQARoBJAEuATgBQgFMAVYBYAFqAXQBfgGIAZIBnAGmAbIBzgHsAAB42u2NMQ6CUAyGW568x9AneYYgm4MJbhKFaExIOAVX8ApewSt4Bic4AfeAid3VOBixDxfPYEza5O+Xfi04YADggiUIULCuEJK8VhO4bSvpdnktHI5QCYtdi2sl8ZnXaHlqUrNKzdKcT8cjlq+rwZSvIVczNiezsfnP/uznmfPFBNODM2K7MTQ45YEAZqGP81AmGGcF3iPqOop0r1SPTaTbVkfUe4HXj97wYE+yNwWYxwWu4v1ugWHgo3S1XdZEVqWM7ET0cfnLGxWfkgR42o2PvWrDMBSFj/IHLaF0zKjRgdiVMwScNRAoWUoH78Y2icB/yIY09An6AH2Bdu/UB+yxopYshQiEvnvu0dURgDt8QeC8PDw7Fpji3fEA4z/PEJ6YOB5hKh4dj3EvXhxPqH/SKUY3rJ7srZ4FZnh1PMAtPhwP6fl2PMJMPDgeQ4rY8YT6Gzao0eAEA409DuggmTnFnOcSCiEiLMgxCiTI6Cq5DZUd3Qmp10vO0LaLTd2cjN4fOumlc7lUYbSQcZFkutRG7g6JKZKy0RmdLY680CDnEJ+UMkpFFe1RN7nxdVpXrC4aTtnaurOnYercZg2YVmLN/d/gczfEimrE/fs/bOuq29Zmn8tloORaXgZgGa78yO9/cnXm2BpaGvq25Dv9S4E9+5SIc9PqupJKhYFSSl47+Qcr1mYNAAAAeNptw0cKwkAAAMDZJA8Q7OUJvkLsPfZ6zFVERPy8qHh2YER+3i/BP83vIBLLySsoKimrqKqpa2hp6+jq6RsYGhmbmJqZSy0sraxtbO3sHRydnEMU4uR6yx7JJXveP7WrDycAAAAAAAH//wACeNpjYGRgYOABYhkgZgJCZgZNBkYGLQZtIJsFLMYAAAw3ALgAeNolizEKgDAQBCchRbC2sFER0YD6qVQiBCv/H9ezGI6Z5XBAw8CBK/m5iQQVauVbXLnOrMZv2oLdKFa8Pjuru2hJzGabmOSLzNMzvutpB3N42mNgZGBg4GKQYzBhYMxJLMlj4GBgAYow/P/PAJJhLM6sSoWKfWCAAwDAjgbRAAB42mNgYGBkAIIbCZo5IPrmUn0hGA0AO8EFTQAA');font-weight:400;font-style:normal}:root{--swiper-theme-color:#007aff}.swiper{margin-left:auto;margin-right:auto;position:relative;overflow:hidden;list-style:none;padding:0;z-index:1}.swiper-vertical>.swiper-wrapper{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}.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:after,.swiper-button-prev:after{font-family:swiper-icons;font-size:var(--swiper-navigation-size);text-transform:none!important;letter-spacing:0;text-transform:none;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-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-horizontal>.swiper-scrollbar{position:absolute;left:1%;bottom:3px;z-index:50;height:5px;width:98%}.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-slide-visible .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{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}
/*!****************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].use[1]!./src/assets/css/justice/style.css ***!
  \****************************************************************************************************************/
@charset "UTF-8";

/****************/
/**  font設定   **/
/****************/
@font-face {
  font-family: "ZenMaruGothic";
  font-weight: 400;
  src: url("/assets/fonts/justice/ZenMaruGothic-Regular.woff2") format("woff2");
}
@font-face {
  font-family: "ZenMaruGothic";
  font-weight: 700;
  src: url("/assets/fonts/justice/ZenMaruGothic-Bold.woff2") format("woff2");
}

/******************/
/** バリアブル設定 **/
/******************/
:root {
  --Font: "ZenMaruGothic";
  --txt-xxl: 32px;
  --txt-xl: 24px;
  --txt-ll: 20px;
  --txt-lg: 18px;
  --txt-base: 16px;
  --txt-sml: 14px;
  --txt-sm: 12px;
  --txt-xs: 10px;
  --red600: #f8203d;
  --red500: #eb3f47;
  --red400: #ff5c63;
  --orange500: #ed6b5d;
  --orange200: #ffbab2;
  --orange100: #f5dad1;
  --orange50: #fff4f0;
  --blue500: #1587a8;
  --gray: #3c3c3c;
  --black: #000000;
  --white: #ffffff;
}

/****************/
/**  基本設定   **/
/****************/
html {
  scroll-behavior: smooth;
}
body {
  position: relative;
  width: 100%;
  font-family: "ZenMaruGothic", sans-serif;
  font-weight: normal;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  color: #444444;
  -webkit-print-color-adjust: exact;
  font-feature-settings: "palt" on;
  font-size: 16px;
  line-height: 1.3;
}

a,
button {
  text-decoration: none;
  transition: 0.2s;
  cursor: pointer;
}

a.underline {
  text-decoration: underline;
}

a:hover {
  opacity: 0.5;
}

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

img {
  max-width: 100%;
}

/*レスポンシブ対応共通タグ*/
.br_sp {
  display: none;
}
.br_pc {
  display: inline-block;
}
.pc_view {
  display: block;
}
.sp_view {
  display: none;
}

@media only screen and (max-width: 999px) {
  .br_sp {
    display: inline-block;
  }
  .br_pc {
    display: none;
  }
  .pc_view {
    display: none;
  }
  .sp_view {
    display: block;
  }
}

/***************/
/** 共通パーツ **/
/****************/
.action_wrapper {
  display: flex;
  justify-content: center;
  background-color: var(--orange100);
  padding: 80px 0;
}
.action_wrapper.sp_view {
  display: none;
}
.action_wrapper.action_wrapper--type01 {
  background-color: var(--white);
  padding: 80px 0 0;
}
.action {
  position: relative;
  top: 0;
  left: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 480px;
  height: 78px;
  border-radius: 999px;
  background: var(--white);
  border: 4px solid var(--red600);
  box-shadow: 0px 6px 4px 0px #00000040;
  color: var(--black);
  font-size: var(--txt-xl);
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0.04em;
  text-align: center;
  animation: 1.6s linear 0.1s infinite actionBtn;
  transition: all 0.3s;
}
.action .action__img {
  position: absolute;
  left: -25px;
  top: 50%;
  transform: translateY(-50%);
}
.action .action_br {
  display: none;
}
.action:hover {
  top: 0 !important;
  transform: translateY(6px);
  background: var(--red600);
  border: 4px solid var(--gray);
  color: var(--white);
  box-shadow: 0px 3px 4px 0px #00000040;
  opacity: 1;
}

.action.action--sm {
  width: 290px;
  height: 44px;
  border-width: 3px;
  font-size: var(--txt-base);
  letter-spacing: 0;
}
.action.action--sm .action__img {
  left: -52px;
  width: 100px;
  height: auto;
}

/* heading title */
h2 {
  font-size: var(--txt-xxl);
  font-weight: 700;
  line-height: 1.1;
  letter-spacing: 0.04em;
}
h3 {
  font-size: var(--txt-xl);
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0.04em;
}

/* price */
.price h3 {
  margin-bottom: 16px;
  color: var(--red400);
  text-align: center;
}
.price__search {
  display: flex;
  align-items: start;
  justify-content: center;
  gap: 24px;
}
.selectbox {
  position: relative;
  width: 400px;
  height: 80px;
}
.selectbox::before,
.selectbox::after {
  position: absolute;
  content: "";
  pointer-events: none;
}
.selectbox::before {
  right: 0;
  display: inline-block;
  width: 80px;
  height: 80px;
  border-radius: 0 8px 8px 0;
  background-color: var(--orange500);
  content: "";
}
.selectbox::after {
  position: absolute;
  top: 50%;
  right: 40px;
  transform: translate(50%, -50%) rotate(45deg);
  width: 10px;
  height: 10px;
  border-bottom: 3px solid var(--white);
  border-right: 3px solid var(--white);
  content: "";
}
.selectbox select {
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  width: 400px;
  height: 80px;
  padding: 0 80px 0 20px;
  border: 4px solid var(--orange500);
  border-radius: 8px;
  background-color: var(--white);
  color: var(--black);
  font-size: var(--txt-lg);
  cursor: pointer;
  font-family: "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN",
    "Hiragino Sans", Meiryo, sans-serif;
}
.selectbox select:focus {
  outline: 1px solid var(--orange500);
}
.price__action {
  position: relative;
  margin-top: 24px;
  width: 291px;
  height: 56px;
  border-color: transparent;
  border-radius: 999px;
  background: #00000033;
}
.price__action span {
  position: absolute;
  bottom: 14px;
  left: 50%;
  transform: translateX(-50%);
  display: flex;
  align-items: center;
  justify-content: center;
  width: 274px;
  height: 66px;
  border-radius: 999px;
  border: 2px solid var(--orange200);
  background-color: var(--orange500);
  font-size: var(--txt-lg);
  font-weight: 700;
  line-height: 1.3;
  letter-spacing: 0.04em;
  text-align: center;
  color: var(--orange50);
  box-shadow: 0px 8px 0px 0px #be5842;
  transition: all 0.2s linear;
}
.price__action:hover span {
  bottom: 11px;
  box-shadow: 0px 5px 0px 0px #be5842;
}
.price__action img {
  position: absolute;
  bottom: -68px;
  right: -80px;
  animation: 2.4s linear 0.1s infinite actionPriceHand;
}

/****************/
/** ヘッダー設定 **/
/****************/
.header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0 24px;
  height: 70px;
}
.header__left {
  display: flex;
  align-items: center;
  gap: 20px;
}
.header__logo img {
  display: block;
  height: 36px;
  width: auto;
}

/********************/
/** メインコンテンツ **/
/********************/
.kv {
  padding-top: 48px;
  padding-bottom: 80px;
  background-color: var(--orange100);
  color: var(--red500);
  line-height: 1;
  text-align: center;
}
.kv__eyecach {
  display: flex;
  justify-content: center;
  margin: 0 auto 16px;
}
.kv__desc {
  font-weight: 700;
  letter-spacing: 0.04em;
}
.kv__feature {
  position: relative;
  margin-top: -40px;
  margin-bottom: 40px;
  height: 465px;
  background-image: url("/assets/images/justice/kv.svg");
  background-repeat: no-repeat;
  background-position: center top 0;
  background-size: contain;
  overflow-x: clip;
}
.kv__bg__puzzle1 {
  position: absolute;
  top: 78px;
  left: 50%;
  transform: translateX(calc(-100% - 604px)) rotate(30deg);
  width: 47px;
  height: 66px;
}
.kv__bg__puzzle2 {
  position: absolute;
  top: 148px;
  left: 50%;
  transform: translateX(calc(-100% - 501px)) rotate(-153.33deg);
  width: 77px;
  height: 74px;
}
.kv__bg__puzzle3 {
  position: absolute;
  bottom: -69px;
  left: 50%;
  transform: translateX(calc(-100% - 561px)) rotate(-23.69deg);
  width: 144px;
  height: 132px;
}
.kv__bg__puzzle4 {
  position: absolute;
  top: 82px;
  right: 50%;
  transform: translateX(calc(100% + 652px)) rotate(71.75deg);
  width: 140px;
  height: 194px;
}
.kv__bg__puzzle5 {
  position: absolute;
  top: 165px;
  right: 50%;
  transform: translateX(calc(100% + 526px)) rotate(7.54deg);
  width: 62px;
  height: 65px;
}
.kv__puzzle {
  position: absolute;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  font-size: 16px;
  font-weight: 700;
  color: var(--white);
  text-align: center;
  background-repeat: no-repeat;
  line-height: 1.2;
}
.kv__puzzle.kv__puzzle--left1 {
  bottom: 73px;
  left: 50%;
  transform: translateX(calc(-100% - 327px));
  width: 180px;
  height: 180px;
  background-image: url("/assets/images/justice/kv_puzzle_blue1.svg");
  background-size: contain;
}
.kv__puzzle.kv__puzzle--left2 {
  top: 88px;
  left: 50%;
  transform: translateX(calc(-100% - 245px));
  width: 154px;
  height: 164px;
  background-image: url("/assets/images/justice/kv_puzzle_red1.svg");
  background-size: contain;
}
.kv__puzzle.kv__puzzle--right1 {
  top: 88px;
  right: 50%;
  transform: translateX(calc(100% + 244px));
  width: 177px;
  height: 177px;
  background-image: url("/assets/images/justice/kv_puzzle_blue2.svg");
  z-index: 1;
  background-size: contain;
}
.kv__puzzle.kv__puzzle--right2 {
  bottom: 69px;
  right: 50%;
  transform: translateX(calc(100% + 308px));
  width: 206px;
  height: 192px;
  background-image: url("/assets/images/justice/kv_puzzle_red2.svg");
  background-size: contain;
}
.kv__puzzle img {
  margin-top: -7px;
}

.lead-wrapper {
  display: flex;
  justify-content: center;
  background-color: var(--orange100);
  margin-top: 48px;
}
.lead {
  position: relative;
  padding: 40px 60px 20px;
  font-size: 12px;
  font-weight: 400;
  line-height: 1.2;
  text-align: left;
  color: var(--orange500);
  border: 4px solid var(--orange500);
  border-radius: 20px;
  z-index: 5;
}
.lead h2 {
  position: absolute;
  top: 0;
  left: 50%;
  transform: translate(-50%, -50%);
  width: max-content;
  padding-left: 7px;
  color: var(--orange500);
}
.lead h2::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: var(--orange100);
  z-index: -1;
}
.lead__price {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 20px;
  margin-bottom: 16px;
  margin-left: -20px;
}

/* problem */
.problem {
  display: flex;
  flex-direction: column;
  align-items: center;
  background-color: var(--orange50);
  padding: 80px 0;
  line-height: 1.6;
  overflow-x: clip;
}
.problem h2 {
  color: var(--orange500);
}
.problem > ul > li {
  display: flex;
  justify-content: center;
  gap: 8px;
  color: var(--gray);
  font-size: var(--txt-lg);
  font-weight: 700;
  letter-spacing: 0.04em;
  margin-top: 40px;
}
.problem > ul > li:nth-child(2n) {
  margin-right: 100px;
}
.problem > ul > li:nth-child(2n + 1) {
  margin-left: 100px;
}
.problem > ul > li .small {
  font-size: var(--txt-sml);
  font-weight: 400;
}
.problem > ul > li .annotation {
  color: var(--orange500);
}
.problem__inner {
  display: flex;
  justify-content: center;
  flex-direction: column;
  gap: 8px;
}
.problem__speech-balloons {
  display: flex;
  align-items: center;
  justify-content: center;
  background-image: url("/assets/images/justice/problem_speech_balloons.svg");
  background-repeat: no-repeat;
  background-position: center top 0;
  background-size: contain;
  width: 264px;
  height: 67px;
  color: var(--white);
  font-size: var(--txt-lg);
}
.problem__annotation {
  font-weight: 400;
  font-size: 12px;
  color: var(--orange500);
  line-height: 1.2;
  letter-spacing: 0;
}
.problem__annotation a {
  color: var(--orange500);
}
.problem__desc {
  display: flex;
  align-items: center;
  flex-direction: column;
  gap: 8px;
  margin-top: 40px;
  color: var(--orange500);
  font-weight: 700;
  font-size: var(--txt-xl);
  line-height: 1.3;
  letter-spacing: 0.04em;
  text-align: center;
}

/* feature */
.feature {
  position: relative;
  padding: 137px 0 0;
  background-color: var(--orange100);
  text-align: center;
  overflow-x: clip;
  overflow-y: visible;
}
.feature h2 {
  margin-bottom: 20px;
  color: var(--orange500);
}
.feature__inner {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  gap: 20px;
  background-image: radial-gradient(
    circle,
    #fff0f1 calc(960px / 2 - 1px),
    transparent calc(960px / 2)
  );
  min-width: 960px;
  min-height: 960px;
  margin: 0 auto 97px;
  background-size: 960px 960px;
  background-repeat: no-repeat;
  background-position: center;
}
.feature-point {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 8px;
}
.feature-point__inner {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: 8px;
  text-align: left;
  width: 650px;
}
.feature-point__label {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 80px;
  height: 80px;
  background-color: var(--red500);
  border-radius: 999px;
  font-weight: 900;
  font-size: var(--txt-ll);
  color: var(--white);
  line-height: 100%;
  letter-spacing: 0.04em;
}
.feature-point__label .num {
  letter-spacing: 0.1em;
}
.feature-point h3 {
  color: var(--red500);
}
.feature-point__desc {
  margin-top: 8px;
  font-size: var(--txt-lg);
  line-height: 1.6;
  letter-spacing: 0.04em;
  font-weight: 700;
}
.feature__graph {
  width: 594px;
}
.feature-point ul {
  font-size: var(--txt-xs);
  font-weight: 400;
  line-height: 1.6;
  text-align: left;
  width: 520px;
}
.feature-point ul li {
  letter-spacing: 0.04em;
}
.feature-point ul li + li {
  margin-top: 2px;
}
.feature-point ul li span {
  font-weight: 700;
  color: var(--orange500);
}
.feature__illust {
  width: 220px;
}

.feature table {
  max-width: 667px;
  width: 100%;
  margin: auto;
  padding: 0 4px;
  font-size: 16px;
  font-weight: 700;
  line-height: 1.2;
  letter-spacing: 0.04em;
  text-align: center;
}
.feature table thead tr:first-child th:first-child {
  border-radius: 16px 0 0 0;
}
.feature table thead tr:first-child th:last-child {
  border-radius: 0 16px 0 0;
}
.feature table tbody tr:first-child th:first-child {
  border-radius: 0 0 0 16px;
}
.feature table tbody tr:last-child td:last-child {
  border-radius: 0 0 16px 0;
}
.feature table tr {
  height: 32px;
}
.feature table thead {
  background: #f4fdff;
}
.feature table tbody {
  background: #fffceb;
  word-break: keep-all;
}
.feature table .men {
  color: #0f6e89;
}
.feature table .woman {
  color: #ff5c63;
}
.feature table .num {
  font-size: 16px;
  line-height: 1.2;
}
.feature table .annotation {
  color: var(--orange500);
}
.feature table .unit {
  font-size: 12px;
}
.feature table thead th {
  font-size: var(--txt-sml);
  font-weight: 700;
  line-height: 1.2;
  letter-spacing: 0.04em;
}
.feature table thead tr:first-child th:nth-child(n + 2) {
  font-size: 16px;
}
.feature table tbody th {
  font-size: var(--txt-sml);
  font-weight: 700;
  line-height: 1.2;
  letter-spacing: 0.04em;
}
.feature table tbody td {
  font-size: 16px;
}
.feature table + p {
  display: flex;
  flex-direction: column;
  gap: 4px;
  justify-content: center;
  margin-top: 8px;
  padding-bottom: 40px;
  font-size: 12px;
  font-weight: 400;
  line-height: 1.3;
  color: var(--orange500);
}

/* assurance */
.assurance {
  position: relative;
  background-color: var(--orange100);
  padding: 100px 0 0;
  overflow-x: clip;
}
.assurance::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 1656px;
  height: 1656px;
  border-radius: 9999px;
  background: var(--orange50);
  box-shadow: 0px 20px 40px 0px #ab979066 inset;
}
.assurance__inner {
  position: relative;
  z-index: 5;
  display: flex;
  align-items: center;
  flex-direction: column;
}
.assurance h2 {
  color: var(--orange500);
}
.assurance__risk {
  display: flex;
  align-items: center;
  flex-direction: column;
  width: 794px;
  height: 352px;
  padding-top: 53px;
  margin-right: 100px;
  margin-top: 60px;
  background-image: url("/assets/images/justice/assurance_risk_illust.svg");
  background-repeat: no-repeat;
  background-size: contain;
}
.assurance__risk ul {
  margin-top: 10px;
  color: var(--gray);
  text-align: center;
}
.assurance__risk li::before {
  content: "・";
}
.assurance__insurance {
  display: flex;
  align-items: center;
  flex-direction: column;
  width: 780px;
  height: 350px;
  padding-top: 36px;
  margin-top: -23px;
  margin-left: 106px;
  background-image: url("/assets/images/justice/assurance_insurance_illust.svg");
  background-repeat: no-repeat;
  background-size: contain;
}
.assurance__insurance ul {
  margin-top: 10px;
  color: var(--blue500);
  text-align: center;
}
.assurance__insurance li::before {
  content: "・";
}
.assurance__text {
  margin-top: -18px;
}
.assurance__list {
  margin-top: 80px;
}
.assurance__list li {
  position: relative;
  display: flex;
  justify-content: space-between;
  width: 750px;
  padding: 24px 57px 24px 97px;
  border-radius: 60px;
  background: var(--white);
  border: 8px solid var(--orange100);
}
.assurance__list li + li {
  margin-top: 20px;
}
.assurance__list__num {
  position: absolute;
  top: 50%;
  left: -30px;
  transform: translateY(-50%);
}
.assurance__list__title {
  display: inline-flex;
  flex-direction: column;
  color: var(--orange500);
  font-weight: 700;
  font-size: var(--txt-xl);
  line-height: 1.3;
  letter-spacing: 0.04em;
}
.assurance__list__label {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 45px;
  margin-top: 4px;
  background: var(--red500);
  border-radius: 4px;
  color: var(--white);
  font-size: var(--txt-lg);
  line-height: 1.6;
}
.assurance__list__desc {
  margin-top: 10px;
  font-size: var(--txt-lg);
  line-height: 1.6;
  letter-spacing: 0.04em;
  color: var(--gray);
}
.assurance__list__desc .emphasis {
  position: relative;
  font-weight: 700;
  font-size: var(--txt-xl);
  line-height: 1.3;
}
.assurance__list__desc .emphasis::before {
  content: "";
  display: block;
  position: absolute;
  left: 0;
  bottom: 2px;
  width: 100%;
  height: 8px;
  background-color: var(--orange200);
  opacity: 0.6;
  mix-blend-mode: darken;
}
.assurance__list__desc .caption {
  font-size: 10px;
  line-height: 1.2;
  letter-spacing: 0;
  text-align: center;
}
.assurance__list__desc__inner {
  display: flex;
  align-items: flex-end;
}
.assurance__desc {
  margin: 20px 0 60px;
  font-size: var(--txt-lg);
  line-height: 1.6;
  letter-spacing: 0.04em;
  text-align: center;
}
.assurance__desc span {
  font-weight: 700;
}

/* recommend */
.recommend {
  display: flex;
  align-items: center;
  flex-direction: column;
  padding: 80px 0;
  background-color: var(--orange100);
}
.recommend h2 {
  color: var(--red500);
  margin-bottom: 40px;
}
.recommend__item {
  display: flex;
  align-items: center;
}
.recommend__item + .recommend__item {
  margin-top: 40px;
}
.recommend__item__desc {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 330px;
  height: 127px;
  padding-bottom: 29px;
  background-image: url("/assets/images/justice/recommend_fukidashi.svg");
  background-repeat: no-repeat;
  background-size: contain;
  font-size: var(--txt-lg);
  line-height: 1.6;
  letter-spacing: 0.04em;
  text-align: center;
  color: var(--gray);
}
.recommend__item__inner {
  position: relative;
  width: 330px;
  display: flex;
  align-items: center;
  flex-direction: column;
}
.recommend__item__inner.recommend__item__inner--decrease {
  right: -6px;
}
.recommend__item__text {
  font-size: var(--txt-sml);
  line-height: 1.6;
  letter-spacing: 0.04em;
  text-align: center;
  color: #3487d9;
}
.recommend__item__text span {
  font-weight: 700;
}
.recommend__item__text.recommend__item__text--marriage {
  color: #ef8a90;
}
.recommend__item__hint {
  position: absolute;
  top: -7px;
  right: -42px;
  width: 196px;
  height: 132px;
  display: flex;
  align-items: center;
  justify-content: center;
  background-image: url("/assets/images/justice/recommend_decrease_hint_bg.svg");
  background-repeat: no-repeat;
  background-size: contain;
  font-weight: 700;
  font-size: var(--txt-sml);
  line-height: 1.2;
  letter-spacing: 0.04em;
  color: var(--white);
}
.recommend__item__inner.recommend__item__inner--decrease > img {
  z-index: 5;
}
.recommend__item__hint > span {
  transform: rotate(7.89deg);
}
.recommend__item__hint .small {
  font-size: var(--txt-sm);
}
.recommend-data-wrapper {
  max-width: 960px;
  margin: 40px auto 0;
}
.recommend-data {
  display: flex;
  gap: 40px;
}
.recommend-data h3 {
  color: var(--gray);
  font-size: var(--txt-lg);
  line-height: 1.6;
  margin-bottom: 8px;
  text-align: center;
}
.recommend-data__inner {
  display: flex;
  align-items: center;
  gap: 20px;
}
.recommend-data__inner.recommend-data__inner--type02 {
  position: relative;
}
.recommend-data table {
  border-collapse: collapse;
  text-align: center;
}
.recommend-data table th,
.recommend-data table td {
  border: 2px solid var(--orange100);
}
.recommend-data table thead tr:first-child th:nth-child(2) {
  background: #ceefff;
  border-top-left-radius: 16px;
  border-right-width: 6px;
}
.recommend-data table thead tr:first-child th:last-child {
  background: #ffc3c7;
  border-top-right-radius: 16px;
}
.recommend-data table thead tr:nth-child(2) th {
  background: #ffecec;
}
.recommend-data table thead tr .small {
  font-size: 12px;
}
.recommend-data table thead tr .thin {
  font-weight: 400;
}
.recommend-data table tbody tr th,
.recommend-data table tbody tr td {
  height: 32px;
  background: var(--white);
  color: #6b6b6b;
}
.recommend-data table tbody tr th {
  width: 50px;
  font-weight: 400;
  font-size: 14px;
}
.recommend-data table tbody tr:first-child th {
  border-top-left-radius: 16px;
}
.recommend-data table tbody tr:last-child th {
  border-bottom-left-radius: 16px;
}
.recommend-data table tbody tr td {
  width: 80px;
  font-weight: 700;
  font-size: 16px;
}
.recommend-data table tbody tr th:nth-child(1) {
  border-right-width: 1px;
}
.recommend-data table tbody tr td:nth-child(2) {
  border-left-width: 0;
  border-right-width: 6px;
}
.recommend-data .recommend-data__inner table tbody tr:last-child td:last-child {
  border-bottom-right-radius: 16px;
}
.recommend-data .recommend-data__inner table tbody tr .small {
  font-size: 10px;
}
.recommend-data
  .recommend-data__inner.recommend-data__inner--type02
  table
  tbody
  tr:last-child
  td:last-child {
  border-bottom-right-radius: 0;
}
.recommend-data
  .recommend-data__inner.recommend-data__inner--type02
  table
  tbody
  tr:first-child
  td:last-child {
  border-bottom-right-radius: 16px;
}
.recommend-data-toge {
  position: absolute;
  right: -5px;
  bottom: -86px;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 160px;
  height: 104px;
  padding-bottom: 4px;
  background-image: url("/assets/images/justice/recommend_toge.svg");
  background-repeat: no-repeat;
  background-size: contain;
  color: var(--white);
  font-weight: 700;
  font-size: var(--txt-sml);
  line-height: 1.2;
  letter-spacing: 0.04em;
  text-align: center;
  transform: rotate(7.89deg);
}
.recommend-data-caption {
  margin-top: 20px;
  font-size: 10px;
  line-height: 1.6;
  letter-spacing: 0.04em;
  color: var(--black);
}

/* projects */
.projects {
  position: relative;
  background-color: var(--orange100);
  padding: 150px 0 55px;
  overflow-x: clip;
}
.projects::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 1600px;
  height: 100%;
  border-radius: 600px 600px 0px 0px;
  background-color: #afe6f0;
  background-image: url("/assets/images/justice/projects_bg.svg");
  background-repeat: no-repeat;
  background-size: contain;
  box-shadow: 0px 20px 40px 0px #49707b4d inset;
}
.projects::after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 593px;
  height: 270px;
  background-image: url("/assets/images/justice/projects_illust.svg");
  background-repeat: no-repeat;
  background-size: contain;
  z-index: 15;
}
.projects__inner {
  position: relative;
  margin: 0 0 155px;
  padding: 180px 0 0;
  text-align: center;
}
.projects__inner::before {
  content: "";
  display: block;
  position: absolute;
  width: 1200px;
  height: 1200px;
  border-radius: 9999px;
  background: var(--blue500);
  box-shadow: 0px 20px 40px 0px #49707b66;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
}
.projects h2 {
  position: relative;
  color: var(--orange200);
  margin-bottom: 16px;
}
.projects h3 {
  position: relative;
  color: var(--orange200);
  margin-bottom: 10px;
}
.projects__inner > p {
  position: relative;
  margin-bottom: 48px;
  font-size: var(--txt-base);
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.04em;
  text-align: center;
  color: var(--white);
}
.projects__inner .projects__inner-emphasis {
  color: var(--orange200);
}
.projects__inner ul {
  position: relative;
  display: flex;
  align-items: stretch;
  justify-content: center;
  flex-wrap: wrap;
  gap: 20px;
  max-width: 800px;
  margin: 0 auto 72px;
}
.projects__inner ul > li {
  width: 180px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-start;
  gap: 6px;
  font-size: var(--txt-lg);
  font-weight: 700;
  line-height: 1.3;
  letter-spacing: 0.04em;
  text-align: center;
  color: var(--white);
}
.projects__inner ul > li > img {
  width: 130px;
  height: 130px;
}
.projects__inner ul > li > p {
  font-size: var(--txt-sm);
  font-weight: 400;
  letter-spacing: normal;
}
.projects__swiper {
  position: relative;
  width: 100vw;
  max-width: 1200px;
  height: calc(160px + 44px);
  left: 50%;
  transform: translateX(-50%);
}
.projects__swiper__inner {
  position: absolute;
  width: 100%;
  height: 160px;
  padding: 26px 0;
  border-radius: 999px;
  border: 4px solid var(--blue500);
  background-color: var(--white);
  overflow: hidden;
  box-shadow: 0px 10px 10px 0px #49707b66 inset;
  isolation: isolate;
}
.projects__swiper__nav {
  position: absolute;
  left: 50%;
  bottom: 0;
  transform: translate(-50%, 0);
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
}
.swiper-wrapper .swiper-slide {
  padding: 0 20px;
}
.swiper-wrapper .swiper-slide img {
  display: block;
  width: 137px;
  height: 98px;
  object-fit: contain;
  margin: auto;
}
.swiper-button-next,
.swiper-button-prev {
  position: static;
  width: 44px;
  height: 44px;
  margin: unset;
  display: flex;
  align-items: center;
  justify-content: center;
}
.swiper-button-prev::after,
.swiper-button-next::after {
  content: "";
  display: block;
  width: 15px;
  height: 26px;
  background-image: url("/assets/images/justice/icon_arrow_pink.svg");
  background-repeat: no-repeat;
  background-size: contain;
}
.swiper-button-prev::after {
  transform: rotate(180deg);
}
.swiper-pagination {
  position: static;
  width: auto !important;
}
.swiper-pagination-bullet {
  margin: 0 5px !important;
  width: 10px;
  height: 10px;
  border-radius: 99px;
  background: #d9d9d9;
  opacity: 1;
}
.swiper-pagination-bullet-active {
  background: var(--orange200);
}

.logo_justice {
  position: relative;
  margin: auto;
}

/* note */
.note {
  max-width: 800px;
  margin: 0 auto;
  padding: 40px 20px;
}
.note__text {
  display: flex;
  gap: 4px;
  font-family: Noto Sans JP, sans-serif;
  font-size: 10px;
  font-weight: 500;
}
.note__downloads {
  display: flex;
  gap: 20px;
  margin-top: 40px;
}
.note__downloads__btn {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  padding: 12px 20px;
  background: #f6f3ee;
  border-radius: 24px;
  font-weight: 700;
  font-size: 14px;
  line-height: 1;
  color: #544d41;
  transition: 0.2s;
}
.note__downloads__btn::before {
  content: "";
  display: block;
  width: 14px;
  height: 18px;
  background-image: url(/assets/images/smart/icon_document.svg);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
}
.note__downloads__btn::after {
  content: "";
  display: block;
  width: 24px;
  height: 24px;
  background-image: url(/assets/images/smart/icon_arrow_right.svg);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
}
.note__downloads__btn:hover {
  opacity: 0.5;
}

@media only screen and (max-width: 999px) {
  .action.action--sm {
    display: none;
  }
  .action_wrapper_fixed {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 80px;
    padding-bottom: 6px;
    position: fixed;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    background: #ffffffe5;
    backdrop-filter: blur(4px);
    z-index: 100;
  }
  .action_wrapper_fixed .action {
    display: flex;
  }
  .action {
    font-size: 20px;
  }
  .action_wrapper {
    padding: 56px 45px 68px;
  }
  .action_wrapper.pc_view {
    display: none;
  }
  .action_wrapper.sp_view {
    display: flex;
  }
  .action_wrapper.action_wrapper--type01 {
    padding: 40px 40px 64px;
  }
  .action_wrapper.action_wrapper--type02 {
    padding: 20px 45px 32px;
  }

  h2 {
    font-size: 20px;
  }
  h3 {
    font-size: 20px;
  }

  .price {
    padding: 0 24px 80px;
  }
  .price--type01 {
    padding: 40px 24px 80px;
    margin-bottom: 20px;
  }
  .price__action img {
    width: 121px;
    right: -29px;
  }
  .price h3 {
    margin-bottom: 8px;
  }
  .price__search {
    flex-direction: column;
    gap: 16px;
    align-items: center;
  }
  .selectbox {
    width: 100%;
    max-width: 400px;
    height: 60px;
  }
  .selectbox::before {
    width: 60px;
    height: 60px;
  }
  .selectbox::after {
    right: 30px;
  }
  .selectbox select {
    width: 100%;
    max-width: 400px;
    height: 60px;
    font-size: 16px;
  }

  .header {
    justify-content: center;
    height: 60px;
  }

  .kv {
    padding: 32px 0 80px;
  }
  .kv__eyecach {
    width: 342px;
    height: auto;
  }
  .kv__desc {
    font-size: 14px;
  }
  .kv__feature {
    height: 261px;
    margin-top: 0;
    margin-bottom: 0;
    background-size: 279px 155px;
    background-position: center top 45px;
  }
  .kv__puzzle.kv__puzzle--left1 {
    bottom: 23px;
    transform: translateX(calc(-100% - 61px));
    width: 114px;
    height: 114px;
    font-size: 10px;
  }
  .kv__puzzle.kv__puzzle--left1 img {
    width: 48px;
    margin-top: -5px;
  }
  .kv__puzzle.kv__puzzle--left2 {
    top: 17px;
    transform: translateX(calc(-100% - 54px));
    width: 98px;
    height: 105px;
    font-size: 10px;
  }
  .kv__puzzle.kv__puzzle--left2 img {
    width: 47px;
    margin-top: -5px;
  }
  .kv__puzzle.kv__puzzle--right1 {
    top: 19px;
    transform: translateX(calc(100% + 50px));
    width: 111px;
    height: 112px;
    font-size: 10px;
  }
  .kv__puzzle.kv__puzzle--right2 {
    bottom: 7px;
    transform: translateX(calc(100% + 59px));
    width: 130px;
    height: 121px;
    font-size: 10px;
  }

  .lead-wrapper {
    padding: 0 20px;
  }
  .lead {
    max-width: 350px;
    padding: 24px 18px 20px;
  }
  .lead__price {
    gap: 5px;
    margin-left: 0;
  }
  .lead__price img {
    margin: auto;
    max-width: 151px;
    width: 100%;
    height: auto;
    font-size: 10px;
  }
  .lead__price + p {
    margin: auto;
    width: 100%;
    height: auto;
    font-size: 12px;
  }

  .problem h2 {
    font-size: 22px;
  }
  .problem > ul {
    padding: 0 40px;
  }
  .problem > ul > li {
    font-size: 16px;
    text-align: center;
  }
  .problem > ul > li:nth-child(2n) {
    margin-right: 0;
  }
  .problem > ul > li:nth-child(2n + 1) {
    margin-left: 0;
  }
  .problem__inner {
    gap: 16px;
    align-items: center;
  }
  .problem__illust {
    width: 200px;
  }
  .problem__speech-balloons {
    width: 254px;
    height: 75px;
    padding-bottom: 8px;
    background-image: url(/assets/images/justice/problem_speech_balloons-sp.svg);
    font-size: 16px;
  }
  .problem__annotation {
    margin-top: -8px;
    text-align: left;
  }
  .problem__desc {
    font-size: 20px;
  }

  .feature {
    padding: 0 0 40px;
  }
  .feature h2 {
    margin-top: 35px;
    margin-bottom: 0;
    font-size: 22px;
    color: var(--orange500);
  }
  .feature__inner {
    gap: 40px;
    padding: 58px 24px 50px;
    margin-bottom: 0;
    background-image: radial-gradient(
      circle,
      #fff0f1 calc(1278px / 2 - 1px),
      transparent calc(1278px / 2)
    );
    min-width: unset;
    min-height: unset;
    background-size: 1278px 1278px;
  }
  .feature-point {
    max-width: 360px;
  }
  .feature-point__inner {
    width: auto;
    flex-direction: column;
    text-align: center;
  }
  .feature-point__desc {
    font-size: 16px;
  }
  .feature-point ul {
    width: auto;
    text-align: left;
  }
  .feature table {
    margin-top: 20px;
  }
  .feature table thead th {
    font-size: 12px;
  }
  .feature table tbody th {
    font-size: 10px;
  }
  .feature table thead tr:first-child th:nth-child(n + 2) {
    font-size: 14px;
  }
  .feature table .num {
    font-size: 12px;
  }

  .assurance {
    padding-bottom: 0;
  }
  .assurance::before {
    width: 1945px;
    height: 1945px;
  }
  .assurance__risk {
    width: 548px;
    height: 243px;
    background-size: contain;
    padding-top: 30px;
    margin-right: 0;
    margin-top: 20px;
  }
  .assurance__risk img {
    width: 124px;
  }
  .assurance__risk ul {
    margin-top: 4px;
    font-size: 12px;
  }
  .assurance__insurance {
    width: 548px;
    height: 242px;
    background-size: contain;
    padding-top: 30px;
    margin-top: -15px;
    margin-left: 0;
  }
  .assurance__insurance img {
    width: 256px;
  }
  .assurance__insurance ul {
    margin-top: 4px;
    font-size: 12px;
  }
  .assurance__text {
    margin-top: -25px;
  }
  .assurance__list {
    padding: 0 20px;
  }
  .assurance__list li {
    flex-direction: column;
    gap: 20px;
    width: auto;
    padding: 72px 24px 32px;
  }
  .assurance__list li + li {
    margin-top: 56px;
  }
  .assurance__list__num {
    top: 0;
    left: 50%;
    transform: translate(-50%, -50%);
  }
  .assurance__list__title {
    width: 100%;
    text-align: center;
    font-size: 20px;
  }
  .assurance__list__label {
    height: 42px;
  }
  .assurance__list__desc {
    width: fit-content;
    margin: 10px auto 0;
    font-size: 16px;
  }
  .assurance__list__desc.assurance__list__desc--type01 {
    text-align: center;
  }
  .assurance__list__desc .emphasis {
    font-size: 20px;
  }
  .assurance__list__illust {
    width: 260px;
  }
  .assurance__desc {
    font-size: 16px;
  }

  .recommend__item {
    flex-direction: column;
  }
  .recommend__item:nth-of-type(1) .recommend__item__inner {
    margin-top: -29px;
  }
  .recommend__item:nth-of-type(2) .recommend__item__inner {
    margin-top: -38px;
  }
  .recommend__item:nth-of-type(3) .recommend__item__inner {
    margin-top: -49px;
  }
  .recommend__item__hint {
    top: -1px;
    right: -18px;
    width: 170px;
    height: 110px;
    font-size: 12px;
  }
  .recommend-data-wrapper {
    padding: 0 24px;
  }
  .recommend-data {
    flex-direction: column;
  }
  .recommend-data__inner {
    flex-direction: column;
    max-width: 342px;
    margin: auto;
  }
  .recommend-data-toge {
    right: 35px;
    bottom: -40px;
    width: 135px;
    height: 91px;
    font-size: 12px;
  }
  .recommend-data-caption {
    margin-top: 40px;
  }

  .projects {
    padding-top: 88px;
  }
  .projects::after {
    width: 356px;
    height: 162px;
    background-size: contain;
  }
  .projects h3 {
    color: var(--blue500);
    font-size: 24px;
  }
  .projects__inner {
    padding-top: 114px;
    margin-bottom: 52px;
  }
  .projects__inner::before {
    width: 1400px;
    height: 1400px;
  }
  .projects h2 {
    width: 100vw;
  }
  .projects__inner > p {
    width: 100vw;
    padding: 0 20px;
    margin-bottom: 40px;
    line-height: 1.3;
    font-size: 14px;
  }
  .projects__inner ul {
    gap: 32px 20px;
    max-width: 500px;
    padding-bottom: calc((38 / 390) * 100vw);
    margin: 0 auto calc((42 / 390) * 100vw);
  }
  .projects__inner ul > li {
    width: 160px;
    gap: 4px;
  }
  .projects__inner ul > li > img {
    width: 104px;
    height: 104px;
  }
  _::-webkit-full-page-media,
  _:future,
  :root .projects__inner ul > li > p {
    padding: 1px 0;
  }
  .projects__swiper {
    width: calc(100vw - 40px);
    height: calc(140px + 44px);
  }
  .projects__swiper__inner {
    height: 140px;
    padding: 16px 0;
  }
  .swiper-wrapper .swiper-slide {
    padding: 0 16px;
  }
  .swiper-button-prev::after,
  .swiper-button-next::after {
    background-image: url("/assets/images/justice/icon_arrow_blue.svg");
  }
  .swiper-pagination-bullet {
    background: #c0c0c0;
  }
  .swiper-pagination-bullet-active {
    background: var(--blue500);
  }
  .logo_justice {
    width: 56px;
    height: auto;
  }

  .note {
    padding: 0 20px 40px 20px;
  }
  .note__downloads {
    display: block;
  }
  .note__downloads__btn:first-child {
    margin-bottom: 8px;
  }

  footer {
    padding-bottom: 100px;
  }
}

@media only screen and (max-width: 509px) {
  .action .action__img {
    top: 4px;
    left: -17px;
    transform: translateY(0);
  }
  .action .action_br {
    display: block;
  }
}

@media only screen and (max-width: 389px) {
  .action {
    font-size: calc((20 / 390) * 100vw);
  }
  .action.action--sm .action__img {
    width: calc((90 / 390) * 100vw);
    left: calc((-44 / 390) * 100vw);
  }
  .action.action--sm {
    width: calc((290 / 390) * 100vw);
    height: calc((44 / 390) * 100vw);
    font-size: calc((16 / 390) * 100vw);
  }
  .action_wrapper {
    padding: calc((40 / 390) * 100vw) calc((40 / 390) * 100vw)
      calc((64 / 390) * 100vw);
  }
  .action_wrapper.action_wrapper--type01 {
    padding: calc((40 / 390) * 100vw) calc((35 / 390) * 100vw)
      calc((64 / 390) * 100vw);
  }
  .action_wrapper_fixed {
    height: calc((80 / 390) * 100vw);
    padding-bottom: calc((6 / 390) * 100vw);
  }

  h2 {
    font-size: calc((20 / 390) * 100vw);
  }
  h3 {
    font-size: calc((20 / 390) * 100vw);
  }

  .price {
    padding: 0 calc((24 / 390) * 100vw) calc((80 / 390) * 100vw);
  }
  .price--type01 {
    padding: calc((40 / 390) * 100vw) calc((24 / 390) * 100vw)
      calc((80 / 390) * 100vw);
    margin-bottom: calc((20 / 390) * 100vw);
  }
  .price__action img {
    width: calc((121 / 390) * 100vw);
    right: calc((-29 / 390) * 100vw);
  }
  .price h3 {
    margin-bottom: calc((8 / 390) * 100vw);
  }
  .price__search {
    gap: calc((16 / 390) * 100vw);
  }
  .selectbox {
    max-width: calc((400 / 390) * 100vw);
    height: calc((60 / 390) * 100vw);
  }
  .selectbox::before {
    width: calc((60 / 390) * 100vw);
    height: calc((60 / 390) * 100vw);
  }
  .selectbox::after {
    right: calc((30 / 390) * 100vw);
  }
  .selectbox select {
    max-width: calc((400 / 390) * 100vw);
    height: calc((60 / 390) * 100vw);
    font-size: calc((16 / 390) * 100vw);
  }

  .header {
    height: calc((60 / 390) * 100vw);
  }

  .kv {
    padding: calc((32 / 390) * 100vw) 0 80px;
  }
  .kv__eyecach {
    width: calc((342 / 390) * 100vw);
  }
  .kv__desc {
    font-size: calc((14 / 390) * 100vw);
  }
  .kv__feature {
    height: calc((261 / 390) * 100vw);
    background-size: calc((342279 / 390) * 100vw) calc((155 / 390) * 100vw);
    background-position: center top calc((45 / 390) * 100vw);
  }
  .kv__puzzle.kv__puzzle--left1 {
    bottom: calc((23 / 390) * 100vw);
    transform: translateX(calc(-100% - calc((61 / 390) * 100vw)));
    width: calc((114 / 390) * 100vw);
    height: calc((114 / 390) * 100vw);
    font-size: 10px;
  }
  .kv__puzzle.kv__puzzle--left1 img {
    width: calc((48 / 390) * 100vw);
    margin-top: calc((-5 / 390) * 100vw);
  }
  .kv__puzzle.kv__puzzle--left2 {
    top: calc((17 / 390) * 100vw);
    transform: translateX(calc(-100% - calc((54 / 390) * 100vw)));
    width: calc((98 / 390) * 100vw);
    height: calc((105 / 390) * 100vw);
  }
  .kv__puzzle.kv__puzzle--left2 img {
    width: calc((47 / 390) * 100vw);
    margin-top: calc((-5 / 390) * 100vw);
  }
  .kv__puzzle.kv__puzzle--right1 {
    top: calc((19 / 390) * 100vw);
    transform: translateX(calc(100% + calc((50 / 390) * 100vw)));
    width: calc((111 / 390) * 100vw);
    height: calc((112 / 390) * 100vw);
  }
  .kv__puzzle.kv__puzzle--right2 {
    bottom: calc((7 / 390) * 100vw);
    transform: translateX(calc(100% + calc((59 / 390) * 100vw)));
    width: calc((130 / 390) * 100vw);
    height: calc((121 / 390) * 100vw);
  }

  .lead-wrapper {
    padding: 0 calc((20 / 390) * 100vw);
  }
  .lead {
    padding: calc((24 / 390) * 100vw) calc((18 / 390) * 100vw)
      calc((20 / 390) * 100vw);
  }
  .lead__price {
    gap: calc((5 / 390) * 100vw);
    margin-bottom: calc((16 / 390) * 100vw);
  }
  .lead__price img {
    max-width: calc((151 / 390) * 100vw);
  }
  .lead__price + p {
    max-width: calc((280 / 390) * 100vw);
    font-size: calc((12 / 390) * 100vw);
  }

  .problem h2 {
    font-size: calc((22 / 390) * 100vw);
  }
  .problem > ul {
    padding: 0 calc((40 / 390) * 100vw);
  }
  .problem > ul > li {
    font-size: calc((16 / 390) * 100vw);
  }
  .problem__inner {
    gap: calc((16 / 390) * 100vw);
  }
  .problem__illust {
    width: calc((209 / 390) * 100vw);
  }
  .problem__speech-balloons {
    width: calc((254 / 390) * 100vw);
    height: calc((75 / 390) * 100vw);
    padding-bottom: calc((8 / 390) * 100vw);
    font-size: calc((16 / 390) * 100vw);
  }
  .problem__annotation {
    margin-top: calc((-8 / 390) * 100vw);
  }
  .problem__desc {
    font-size: calc((20 / 390) * 100vw);
  }

  .feature {
    padding: 0 0 calc((40 / 390) * 100vw);
  }
  .feature h2 {
    font-size: calc((22 / 390) * 100vw);
  }
  .feature__inner {
    gap: calc((32 / 390) * 100vw);
    padding: calc((58 / 390) * 100vw) calc((24 / 390) * 100vw)
      calc((50 / 390) * 100vw);
    background-image: radial-gradient(
      circle,
      #fff0f1 calc(calc((1278 / 390) * 100vw) / 2 - 1px),
      transparent calc(calc((1278 / 390) * 100vw) / 2)
    );
    background-size: calc((1278 / 390) * 100vw) calc((1278 / 390) * 100vw);
  }
  .feature-point {
    gap: calc((8 / 390) * 100vw);
  }
  .feature-point__inner {
    gap: calc((8 / 390) * 100vw);
  }
  .feature-point__label {
    width: calc((80 / 390) * 100vw);
    height: calc((80 / 390) * 100vw);
    font-size: calc((20 / 390) * 100vw);
  }
  .feature-point__desc {
    margin-top: calc((8 / 390) * 100vw);
    font-size: calc((16 / 390) * 100vw);
  }
  .feature table {
    margin-top: calc((20 / 390) * 100vw);
  }
  .feature table thead th {
    font-size: calc((12 / 390) * 100vw);
  }
  .feature table tbody th {
    font-size: calc((10 / 390) * 100vw);
  }
  .feature table thead tr:first-child th:nth-child(n + 2) {
    font-size: calc((14 / 390) * 100vw);
  }
  .feature table .num {
    font-size: calc((12 / 390) * 100vw);
  }

  .assurance::before {
    width: calc((1945 / 390) * 100vw);
    height: calc((1945 / 390) * 100vw);
  }
  .assurance__risk {
    width: calc((548 / 390) * 100vw);
    height: calc((243 / 390) * 100vw);
    padding-top: calc((30 / 390) * 100vw);
    margin-top: calc((20 / 390) * 100vw);
  }
  .assurance__risk img {
    width: calc((124 / 390) * 100vw);
  }
  .assurance__risk ul {
    margin-top: calc((4 / 390) * 100vw);
    font-size: calc((12 / 390) * 100vw);
  }
  .assurance__insurance {
    width: calc((548 / 390) * 100vw);
    height: calc((242 / 390) * 100vw);
    background-size: contain;
    padding-top: calc((30 / 390) * 100vw);
    margin-top: calc((-15 / 390) * 100vw);
  }
  .assurance__insurance img {
    width: calc((256 / 390) * 100vw);
  }
  .assurance__insurance ul {
    margin-top: calc((4 / 390) * 100vw);
    font-size: calc((12 / 390) * 100vw);
  }
  .assurance__text {
    margin-top: calc((-25 / 390) * 100vw);
  }
  .assurance__list {
    padding: 0 calc((20 / 390) * 100vw);
  }
  .assurance__list li {
    gap: calc((20 / 390) * 100vw);
    padding: calc((72 / 390) * 100vw) calc((24 / 390) * 100vw)
      calc((32 / 390) * 100vw);
  }
  .assurance__list li + li {
    margin-top: calc((56 / 390) * 100vw);
  }
  .assurance__list__title {
    font-size: calc((20 / 390) * 100vw);
  }
  .assurance__list__label {
    height: calc((42 / 390) * 100vw);
  }
  .assurance__list__desc {
    margin: calc((10 / 390) * 100vw) auto 0;
    font-size: calc((16 / 390) * 100vw);
  }
  .assurance__list__desc .emphasis {
    font-size: calc((20 / 390) * 100vw);
  }
  .assurance__list__illust {
    width: calc((260 / 390) * 100vw);
  }
  .assurance__desc {
    font-size: calc((16 / 390) * 100vw);
  }

  .recommend__item:nth-of-type(1) .recommend__item__inner {
    margin-top: calc((-29 / 390) * 100vw);
  }
  .recommend__item:nth-of-type(2) .recommend__item__inner {
    margin-top: calc((-38 / 390) * 100vw);
  }
  .recommend__item:nth-of-type(3) .recommend__item__inner {
    margin-top: calc((-49 / 390) * 100vw);
  }
  .recommend__item__hint {
    top: calc((-1 / 390) * 100vw);
    right: calc((-18 / 390) * 100vw);
    width: calc((170 / 390) * 100vw);
    height: calc((110 / 390) * 100vw);
    font-size: calc((12 / 390) * 100vw);
  }
  .recommend-data-wrapper {
    padding: 0 calc((24 / 390) * 100vw);
  }
  .recommend-data__inner {
    max-width: calc((342 / 390) * 100vw);
  }
  .recommend-data-toge {
    right: calc((35 / 390) * 100vw);
    bottom: calc((-40 / 390) * 100vw);
    width: calc((135 / 390) * 100vw);
    height: calc((91 / 390) * 100vw);
    font-size: calc((12 / 390) * 100vw);
  }
  .recommend-data-caption {
    margin-top: calc((40 / 390) * 100vw);
  }

  .projects {
    padding-top: calc((88 / 390) * 100vw);
  }
  .projects::after {
    width: calc((356 / 390) * 100vw);
    height: calc((162 / 390) * 100vw);
  }
  .projects h2 {
    margin-bottom: calc((16 / 390) * 100vw);
  }
  .projects h3 {
    font-size: calc((24 / 390) * 100vw);
  }
  .projects__inner {
    padding-top: calc((114 / 390) * 100vw);
    margin-bottom: calc((52 / 390) * 100vw);
  }
  .projects__inner::before {
    width: calc((1400 / 390) * 100vw);
    height: calc((1400 / 390) * 100vw);
  }
  .projects__inner > p {
    padding: 0 calc((20 / 390) * 100vw);
    margin-bottom: calc((40 / 390) * 100vw);
    font-size: calc((14 / 390) * 100vw);
  }
  _::-webkit-full-page-media,
  _:future,
  :root .projects__inner > p {
    letter-spacing: -0.02em;
  }
  .projects__inner ul {
    gap: calc((32 / 390) * 100vw) calc((20 / 390) * 100vw);
    max-width: calc((500 / 390) * 100vw);
    padding-bottom: calc((38 / 390) * 100vw);
    margin: 0 auto calc((42 / 390) * 100vw);
  }
  .projects__inner ul > li {
    width: calc((160 / 390) * 100vw);
    gap: calc((4 / 390) * 100vw);
    font-size: calc((18 / 390) * 100vw);
  }
  .projects__inner ul > li > img {
    width: calc((104 / 390) * 100vw);
    height: calc((104 / 390) * 100vw);
  }
  .projects__inner ul > li > p {
    font-size: calc((12 / 390) * 100vw);
  }
  _::-webkit-full-page-media,
  _:future,
  :root .projects__inner ul > li > p {
    letter-spacing: -0.02em;
  }
  .projects__swiper {
    width: calc(100vw - calc((40 / 390) * 100vw));
    height: calc((calc(140px + 44px) / 390) * 100vw);
  }
  .projects__swiper__inner {
    height: calc((140 / 390) * 100vw);
    padding: calc((16 / 390) * 100vw) 0;
  }
  .swiper-wrapper .swiper-slide {
    padding: 0 calc((16 / 390) * 100vw);
  }
  .logo_justice {
    width: calc((56 / 390) * 100vw);
  }

  .note {
    padding: 0 calc((20 / 390) * 100vw) calc((40 / 390) * 100vw)
      calc((20 / 390) * 100vw);
  }

  footer {
    padding-bottom: calc((100 / 390) * 100vw);
  }
}

/******************/
/** animation設定 **/
/******************/
@keyframes actionBtn {
  0% {
    top: 0;
  }

  50% {
    top: 6px;
  }

  100% {
    top: 0;
  }
}
@keyframes actionPriceHand {
  0% {
    bottom: -68px;
  }

  50% {
    bottom: -51px;
  }

  100% {
    bottom: -68px;
  }
}

/*!*****************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].use[1]!./src/assets/css/components/_service-footer.css ***!
  \*****************************************************************************************************************************/
/****************/
/** フッター設定 **/
/****************/
a {
  text-decoration: none;
  transition: 0.5s;
  cursor: pointer;
}

footer {
  font-family: "Noto Sans JP", sans-serif;
  /* 差額ベッド代保険のスタイルをリセットする用 */
  line-height: inherit;
  font-size: inherit;
  letter-spacing: 0;
  font-weight: 600;
  color: #313131;
}
.agency-section {
  width: 100%;
  padding: 56px 0;
  background: #f4f4f4;
  box-sizing: border-box;
}
.agency-section .items {
  max-width: 1024px;
  margin-left: auto;
  margin-right: auto;
  text-align: left;
  line-height: 1.5rem;
}

.agency-section .item {
  margin: 2rem 0;
}

.agency-section .item .item-title {
  font-weight: bold;
  margin-bottom: 0.5rem;
}

.agency-section .item .item-content {
  font-weight: normal;
  padding: 0 1em;
}

.agency-section .item .item-content p {
  margin: 0;
}

.footer {
  width: 100%;
  padding: 40px 0 0;
  background: linear-gradient(to right, #ee8100 0%, #ed8e18 30%, #f5b66b 100%);
}

.footer .footer__inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  max-width: 1024px;

  margin-left: auto;
  margin-right: auto;
  color: #ffffff;
  text-align: left;
}

.footer .footer__title {
  font-size: 18px;
  font-weight: 700;
  letter-spacing: 0.035em;
}

.footer .footer__text {
  margin-top: 10px;
  padding-left: 18px;
  font-size: 18px;
  line-height: 1.7;
}

.footer .footer__text-emphasis {
  font-size: 21px;
  font-weight: 700;
}

.footer .footer__left {
  padding: 20px 0 0 53px;
}

.footer .footer__right {
  max-width: 325px;
  width: 100%;
  height: auto;
  padding: 20px 53px 0 0;
}

.footer_navi_wrapper {
}

.footer_navi {
  margin: 20px auto 0;
  border-top: 1px solid #fff;
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  max-width: 1200px;
  padding: 0 15px;
  /* margin: 0 auto; */
  list-style: none;
}

.footer_navi li {
  margin: 1em 0;
  text-align: center;
}

.footer_navi a {
  display: block;
  padding: 7px 1em 7px 0;
  font-weight: 500;
  color: #fff;
  font-size: 16px;
}

.footer_navi li:last-child a {
  padding-right: 0;
}

.footer_navi a:hover {
  color: #333;
}

.footer_navi li:not(:last-child) a::after {
  content: "";
  margin-left: 1em;
  border-right: solid 1px #fff;
}

.footer.footer--plus_olive_smile {
  background: linear-gradient(to left, #ee8100 0%, #ed8e18 30%, #f5b66b 100%);
}

.footer.footer--plus_olive_smile .footer__inner {
  max-width: 918px;
}

.footer.footer--plus_olive_smile .footer__left {
  padding: 0 40px;
}

.footer.footer--plus_olive_smile .footer__text {
  margin-top: 20px;
  padding-left: 0;
  font-size: 14px;
  line-height: 1.6;
  font-weight: normal;
}

.footer.footer--plus_olive_smile .footer__text-emphasis {
  font-size: 16px;
}

.footer.footer--plus_olive_smile .footer__text__list {
  display: flex;
  gap: 40px;
}

.footer.footer--plus_olive_smile .footer_navi {
  max-width: unset;
}

.copyright_wrapper {
  padding: 10px 15px;
  background: #fff;
  font-family: "Roboto";
  font-weight: 400;
  font-size: 16px;
  color: #ee8100;
  text-align: center;
}

@media (max-width: 768px) {
  .agency-section {
    padding: 56px 22px;
  }
  .footer__inner {
    flex-direction: column;
  }
  .footer .footer__left {
    font-size: 14px;
    padding: 0;
  }
  .footer .footer__title,
  .footer .footer__text,
  .footer .footer__text-emphasis {
    font-size: 16px;
  }
  .footer .footer__right {
    margin-top: 45px;
    padding: 0;
    box-sizing: border-box;
  }
  .footer.footer--plus_olive_smile .footer__text {
    margin-top: 40px;
  }
  .footer.footer--plus_olive_smile .footer__text__list {
    gap: 8px;
    flex-direction: column;
    margin-bottom: 20px;
  }
  .footer.footer--plus_olive_smile .footer_navi_wrapper {
    background: linear-gradient(
      to right,
      #ee8100 0%,
      #ed8e18 30%,
      #f5b66b 100%
    );
  }
}

@media only screen and (max-width: 599px) {
  .agency-section {
    padding: 20px 20px;
  }
  .footer_navi li {
    margin: 0.5em 0;
  }
  .footer_navi a {
    font-size: 10px;
  }
  .footer.footer--plus_olive_smile .footer__left {
    padding: 0 20px;
  }
  .copyright_wrapper {
    font-size: 12px;
  }
}

