@charset "UTF-8";
/* ==========================================================================
	transition
========================================================================== */
/* ==========================================================================
	行数でトリミング
========================================================================== */
/* ==========================================================================
	コンテナクエリ
========================================================================== */
@import url("https://fonts.googleapis.com/css2?family=LINE+Seed+JP:wght@100;400;700&display=swap");
:root {
  --base-max-width:1920;
  --base-pc-width:1500;
  --base-sp-width:400;
  --vwPC: calc(100vw / 1500);
  --vwSP: calc(100vw / 400);
  --easeInQuad:cubic-bezier(.55, .085, .68, .53);
  --easeInQuint:cubic-bezier(0.0, 0, 0.99, 0);
  --easeOutQuad:cubic-bezier(0.23, 1, 0.32, 1);
  --easeOutQuint:cubic-bezier(.25, .46, .45, .94);
  --easeOutSine:cubic-bezier(0.39, 0.575, 0.565, 1);
  --easeOutCubic:cubic-bezier(0.215, 0.61, 0.355, 1);
  --easeInOutQuad:cubic-bezier(0.45, 0, 0.55, 1);
  --easeInOutCubic:cubic-bezier(0.65, 0, 0.35, 1);
  --easePopUp:cubic-bezier(0.17, 0.88, 0.30, 1.28);
  --easeInCirc:cubic-bezier(0.55, 0, 1, 0.45);
  --theme-color:#b93937;
  --base-text-color:#29221f;
  --base-text-color02:#1e525a;
  --base-text-color03:#383838;
  --base-text-color04:#3a3939;
  --base-bg-color:#e8ebed;
  --base-bg-color02:#fafcfd;
  --base-bg-color03:#c3ced5;
  --base-bg-color04:#f5f5f5;
  --base-bg-color05:#c5fcfd;
  --base-bg-color06:#e6f0f2;
  --base-bg-color07:#f1f1f1;
  --base-bg-color08:#f6f6f6;
  --base-bg-color09:#eee;
  --base-bg-color10:#c9d9dc;
  --base-bg-color11:#b9fbfc;
  --base-bg-color12:#0c405b;
  --base-color-green:#32929e;
  --base-color-green02:#9dd1d0;
  --base-color-green03:#2c6c76;
  --base-color-green04:#2c6c76;
  --base-color-green05:#309c9d;
  --base-color-green06:#207372;
  --base-color-green07:#27989b;
  --base-color-green08:#4eb0b2;
  --base-color-green09:#2b9594;
  --base-color-green10:#5eb195;
  --base-color-green11:#cbedef;
  --base-color-green12:#d7f1f1;
  --base-color-green13:#3da4a3;
  --base-color-green14:#58a783;
  --base-color-green15:#206e81;
  --base-color-wood:#6d240e;
  --base-color-blue:#14a5b6;
  --base-color-blue02:#32a4ab;
  --base-color-blue03:#37a9af;
  --base-color-mizu:#00b4b2;
  --base-color-orange:#e78a14;
  --base-color-black:#29221f;
  --base-color-black02:#131313;
  --base-color-white:#fff;
  --base-color-white02:#f1f3f4;
  --base-color-gray:#888;
  --base-color-gray02:#777;
  --base-color-gray03:#8a979f;
  --base-color-gray04:#e5e5e5;
  --base-color-gray05:#a4a4a4;
  --base-color-gray06:#ccc;
  --base-color-gray07:#b4c0c8;
  --base-color-gray08:#e4e4e4;
  --base-color-gray09:#a7a7a7;
  --base-color-gold:#977f4b;
  --base-color-silver:#97a4ad;
  --base-color-bronze:#664e1a;
  --base-border-color:#000;
  --base-border-color02:#d2d2d2;
  --base-border-color03:#a8a9a8;
  --base-border-color04:#d3d9dd;
  --base-border-color05:#eaeaea;
  --base-border-color06:#ddd;
  --base-border-color07:#e6e6e6;
  --base-border-color08:#188383;
  --base-border-color09:#1c0604;
  --base-shadow-color:#ade2e3;
  --base-color-uchi:#c13e02;
  --base-color-soto:#32a4ab;
  --base-btn-color01:#1f858b;
  --base-btn-color01-hv:#136a80;
  --base-btn-color02:#c93c02;
  --base-btn-color02-hv:#a22200;
  --base-btn-color03:#3da4a3;
  --base-btn-color01-hv:#137a80;
  --insta-color-hv:#f7228c;
  --base-bubble-bg:#dbe2e2;
  --base-bubble-bg02:#cff0f1;
  --base-bubble-bg03:#a8c4c4;
  --hanten:scale(-1, -1);
  --hantenX:scale(-1, 1);
  --hantenY:scaleY(-1);
  --transition-scale:transform 0.8s var(--easeOutCubic);
  --en: "Marcellus", sans-serif;
  --gothic: "Zen Kaku Gothic New","Zen Kaku Gothic Antique",sans-serif;
  --line-seed:"LINE Seed JP", sans-serif;
  --delay: 0s;
}

:root {
  --head-mt:100px;
}

@media screen and (max-width: 800px) {
  :root {
    --head-mt:80px;
  }
}
@media screen and (min-width: 801px) {
  :root {
    --vwPC: calc(100vw / 1500);
    --fz8: max(.8rem, 8px);
    --fz9: max(.9rem, 9px);
    --fz10: max(1rem, 9px);
    --fz11: max(1.1rem, 10px);
    --fz12: max(1.2rem, 11px);
    --fz13: max(1.3rem, 12px);
    --fz14: max(1.4rem, 12px);
    --fz15: max(1.5rem, 13px);
    --fz16: max(1.6rem, 14px);
    --fz17: max(1.7rem, 15px);
    --fz18: max(1.8rem, 16px);
    --fz19: max(1.9rem, 17px);
    --fz20: max(2.0rem, 18px);
    --fz21: max(2.1rem, 18px);
    --fz22: max(2.2rem, 18px);
    --fz23: max(2.3rem, 20px);
    --fz24: max(2.4rem, 20px);
    --fz25: max(2.5rem, 21px);
    --fz26: max(2.6rem, 22px);
    --fz27: max(2.7rem, 23px);
    --fz28: max(2.8rem, 24px);
    --fz29: max(2.9rem, 25px);
    --fz30: max(3rem, 26px);
    --fz32: max(3.2rem, 28px);
    --fz33: max(3.3rem, 29px);
    --fz34: max(3.4rem, 30px);
    --fz35: max(3.5rem, 31px);
    --fz36: max(3.6rem, 32px);
    --fz37: max(3.7rem, 33px);
    --fz38: max(3.8rem, 34px);
    --fz39: max(3.9rem, 35px);
    --fz40: max(4rem, 36px);
    --fz41: max(4.1rem, 37px);
    --fz42: max(4.2rem, 38px);
    --fz44: max(4.4rem, 40px);
    --fz45: max(4.5rem, 41px);
    --fz46: max(4.6rem, 42px);
    --fz48: max(4.8rem, 44px);
    --fz50: max(5rem, 48px);
    --fz52: max(5.2rem, 48px);
    --fz54: max(5.4rem, 50px);
    --fz55: max(5.5rem, 51px);
    --fz56: max(5.6rem, 52px);
    --fz58: max(5.8rem, 54px);
    --fz59: max(5.9rem, 55px);
    --fz60: max(6rem, 56px);
    --fz64: max(6.4rem, 60px);
    --fz72: max(7.2rem, 68px);
    --fz78: max(7.8rem, 74px);
    --fz96: max(9.6rem, 90px);
  }
}
@media screen and (max-width: 800px) {
  :root {
    --vwSP: calc(100vw / 400);
    --fz6: clamp(.6rem, calc(6 * var(--vwSP)), .8rem);
    --fz7: clamp(.7rem, calc(7 * var(--vwSP)), .9rem);
    --fz8: clamp(.8rem, calc(8 * var(--vwSP)), 1rem);
    --fz9: clamp(.9rem, calc(9 * var(--vwSP)), 1.1rem);
    --fz10: clamp(1rem, calc(10 * var(--vwSP)), 1.2rem);
    --fz11: clamp(1.1rem, calc(11 * var(--vwSP)), 1.3rem);
    --fz12: clamp(1.2rem, calc(12 * var(--vwSP)), 1.4rem);
    --fz13: clamp(1.3rem, calc(13 * var(--vwSP)), 1.4rem);
    --fz14: clamp(1.4rem, calc(14 * var(--vwSP)), 1.6rem);
    --fz15: clamp(1.5rem, calc(15 * var(--vwSP)), 1.7rem);
    --fz16: clamp(1.6rem, calc(16 * var(--vwSP)), 1.8rem);
    --fz17: clamp(1.7rem, calc(17 * var(--vwSP)), 1.9rem);
    --fz18: clamp(1.8rem, calc(18 * var(--vwSP)), 2rem);
    --fz19: clamp(1.9rem, calc(19 * var(--vwSP)), 2.1rem);
    --fz20: clamp(2rem, calc(20 * var(--vwSP)), 2.2rem);
    --fz21: clamp(2.1rem, calc(21 * var(--vwSP)), 2.3rem);
    --fz22: clamp(2.2rem, calc(22 * var(--vwSP)), 2.4rem);
    --fz23: clamp(2.3rem, calc(23 * var(--vwSP)), 2.5rem);
    --fz24: clamp(2.4rem, calc(24 * var(--vwSP)), 2.6rem);
    --fz25: clamp(2.5rem, calc(25 * var(--vwSP)), 2.7rem);
    --fz26: clamp(2.6rem, calc(26 * var(--vwSP)), 2.8rem);
    --fz27: clamp(2.7rem, calc(27 * var(--vwSP)), 2.9rem);
    --fz28: clamp(2.8rem, calc(28 * var(--vwSP)), 3rem);
    --fz30: clamp(3rem, calc(30 * var(--vwSP)), 3.2rem);
    --fz31: clamp(3.1rem, calc(31 * var(--vwSP)), 3.3rem);
    --fz32: clamp(3.2rem, calc(32 * var(--vwSP)), 3.5rem);
    --fz33: clamp(3.3rem, calc(33 * var(--vwSP)), 3.5rem);
    --fz34: clamp(3.4rem, calc(34 * var(--vwSP)), 3.7rem);
    --fz35: clamp(3.5rem, calc(35 * var(--vwSP)), 3.9rem);
    --fz37: clamp(3.7rem, calc(37 * var(--vwSP)), 4.1rem);
    --fz36: clamp(3.6rem, calc(36 * var(--vwSP)), 4rem);
    --fz38: clamp(3.8rem, calc(38 * var(--vwSP)), 4.2rem);
    --fz40: clamp(4rem, calc(40 * var(--vwSP)), 4.4rem);
    --fz42: clamp(4.2rem, calc(42 * var(--vwSP)), 4.6rem);
    --fz44: clamp(4.4rem, calc(44 * var(--vwSP)), 4.8rem);
    --fz45: clamp(4.5rem, calc(45 * var(--vwSP)), 4.9rem);
    --fz47: clamp(4.7rem, calc(47 * var(--vwSP)), 5.1rem);
    --fz48: clamp(4.8rem, calc(48 * var(--vwSP)), 5.2rem);
    --fz49: clamp(4.9rem, calc(49 * var(--vwSP)), 5.3rem);
    --fz51: clamp(5.1rem, calc(51 * var(--vwSP)), 5.6rem);
    --fz56: clamp(5.6rem, calc(56 * var(--vwSP)), 6rem);
    --fz64: clamp(6.4rem, calc(64 * var(--vwSP)), 6.8rem);
  }
}
/* ==========================================================================
	fv
========================================================================== */
.fv {
  position: relative;
  padding-top: var(--head-mt);
}
.fv .inr h1 {
  width: 35.7638888889%;
  min-width: 515px;
}
@media screen and (min-width: 1051px) {
  .fv .inr .cloud.-right {
    bottom: 40px;
  }
}
@media screen and (max-width: 1050px) {
  .fv .inr h1 {
    width: clamp(310px, 84.7297297297%, 515px);
    min-width: 310px;
  }
}

/* ==========================================================================
	intro
========================================================================== */
.intro {
  position: relative;
  background: -webkit-gradient(linear, left top, left bottom, from(#fff), color-stop(30%, #f3fefe), color-stop(80%, #befafb), to(#fff));
  background: linear-gradient(to bottom, #fff 0%, #f3fefe 30%, #befafb 80%, #fff 100%);
}
.intro .inr {
  container-type: inline-size;
  z-index: 20;
}
.intro .inr .text_wrap {
  position: relative;
  padding-top: 22.9166666667cqw;
  padding-bottom: 44.1666666667cqw;
  padding-bottom: 530px;
  width: 45.8333333333%;
  z-index: 15;
}
.intro .inr .text_wrap h2 {
  width: max(400px, 35%);
  margin-bottom: 4.5833333333cqw;
}
.intro .inr .text_wrap p {
  font-size: max(13px, 1.3333333333cqw);
  font-weight: 500;
  color: var(--base-text-color02);
  line-height: 2.25;
  letter-spacing: -0.04em;
}
.intro .inr .intro-loop {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: nowrap;
      flex-wrap: nowrap;
  width: 100%;
  z-index: 20;
}
.intro .inr .intro-loop__inner {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  gap: 30px;
  will-change: transform;
  -webkit-animation: LoopX 70s infinite linear 1s both;
          animation: LoopX 70s infinite linear 1s both;
}
.intro .inr .intro-loop__img {
  display: block;
  width: 320px;
  height: auto;
  -webkit-box-flex: 0;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
  border-radius: 30px;
}
.intro .inr .intro-loop__img:last-child {
  margin-right: 30px;
}
.intro .inr .intro-loop__img:nth-child(even) {
  margin-top: 70px;
}
.intro .inr .about_wrap {
  position: absolute;
  right: 0;
  top: 15cqw;
  width: 52.5%;
  aspect-ratio: 630/480;
}
.intro .inr .about_wrap .line {
  display: block;
  position: absolute;
  left: 50%;
  top: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  font-size: 8.3333333333cqw;
  color: var(--base-color-white);
  font-weight: 100;
  font-family: var(--line-seed);
  z-index: 10;
  margin: auto;
}
.intro .inr .about_wrap .circle_box {
  position: absolute;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 55.5555555556%;
  aspect-ratio: 1/1;
  border-radius: 50%;
}
.intro .inr .about_wrap .circle_box:before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  border-radius: 50%;
  opacity: 0.8;
}
.intro .inr .about_wrap .circle_box:after {
  content: "";
  position: absolute;
  inset: 0;
  background-image: url(../img/common/bg-pattern.webp);
  background-repeat: repeat;
  background-size: cover;
  opacity: 0.2;
  mix-blend-mode: soft-light;
  pointer-events: none;
  border-radius: 50%;
  z-index: 2;
}
.intro .inr .about_wrap .circle_box h3 {
  position: relative;
  margin-bottom: 1.6666666667cqw;
  z-index: 10;
}
.intro .inr .about_wrap .circle_box p {
  position: relative;
  font-size: 1.5cqw;
  line-height: 2;
  color: var(--base-color-white);
  text-align: center;
  z-index: 10;
}
.intro .inr .about_wrap .circle_box p span {
  display: inline;
  background-image: -webkit-gradient(linear, left top, left bottom, from(#7fbdbf), to(#7fbdbf));
  background-image: linear-gradient(#7fbdbf, #7fbdbf);
  background-repeat: no-repeat;
  background-position: 0 100%;
  background-size: 100% 1px;
  -webkit-box-decoration-break: clone;
  box-decoration-break: clone;
}
.intro .inr .about_wrap .circle_box.-reform {
  position: absolute;
  left: 0;
  top: 0;
}
.intro .inr .about_wrap .circle_box.-reform:before {
  background: var(--base-color-green13);
}
.intro .inr .about_wrap .circle_box.-reform h3 {
  width: 34.2857142857%;
}
.intro .inr .about_wrap .circle_box.-renovation {
  position: absolute;
  right: 0;
  bottom: 0;
}
.intro .inr .about_wrap .circle_box.-renovation:before {
  background: var(--base-color-green14);
}
.intro .inr .about_wrap .circle_box.-renovation h3 {
  width: 48.8571428571%;
}
.intro .inr .about_wrap .circle_box.-renovation p span {
  background-image: -webkit-gradient(linear, left top, left bottom, from(#8bc0ac), to(#8bc0ac));
  background-image: linear-gradient(#8bc0ac, #8bc0ac);
}
.intro .inr .about_wrap .bird {
  position: absolute;
  width: 41.9047619048%;
  right: -4.1666666667cqw;
  top: -14.1666666667cqw;
  z-index: 20;
  -webkit-animation: bird-float 6s ease-in-out infinite;
          animation: bird-float 6s ease-in-out infinite;
}
.intro .inr .about_wrap .bird img {
  -webkit-animation: bird-sway 4.6s ease-in-out infinite;
          animation: bird-sway 4.6s ease-in-out infinite;
  will-change: transform;
  -webkit-transform-origin: 50% 60%;
          transform-origin: 50% 60%;
}
.intro .inr .kumonchu {
  position: absolute;
  width: min(431px, 35.9166666667cqw);
  z-index: 10;
  -webkit-animation: bird-float 6s ease-in-out infinite;
  animation: bird-float 6s ease-in-out infinite;
}
.intro .inr .kumonchu.-kumonchu {
  bottom: -12.0833333333cqw;
  left: max(-255px, -21.25%);
  z-index: 10;
  -webkit-animation-delay: -0.5s;
  animation-delay: -0.5s;
  --W:431;
  --H:623;
}
.intro .inr .kumonchu.-kumonchu:after {
  --bW:127;
  --bT:70;
  --bL:308;
  --imgURL: url("../img/reform/intro-kumonchu-sb.png");
  aspect-ratio: 127/68;
  -webkit-transition-delay: 1.2s;
          transition-delay: 1.2s;
}
.intro .inr .kumonchu.-duck {
  width: min(185px, 15.4166666667cqw);
  bottom: 2.3333333333cqw;
  left: 4.1666666667%;
  --W:185;
  --H:178;
}
.intro .inr .kumonchu.-duck:after {
  --bW:187;
  --bT:-75;
  --bL:108;
  --imgURL: url("../img/reform/intro-duck-sb.png");
  aspect-ratio: 187/68;
  -webkit-transition-delay: 1.6s;
          transition-delay: 1.6s;
}
.intro .town-bg {
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 392px;
  z-index: 5;
  background: url(../img/reform/intro-town_bg.webp) center bottom repeat;
  background-size: 3540px 392px;
}
.intro .btm_risu {
  position: absolute;
  width: 340px;
  right: -35px;
  bottom: -170px;
  z-index: 20;
}
@media screen and (min-width: 2000px) {
  .intro .btm_risu {
    right: auto;
    left: calc(50% + 690px);
  }
}
.intro .btm_cloud {
  position: absolute;
  z-index: 15;
  width: 2319px;
  left: calc(50% - 1175px);
  bottom: -60px;
  z-index: 8;
}
@media screen and (max-width: 1050px) {
  .intro {
    padding-bottom: 78.25vw;
    margin-bottom: 71.25vw;
  }
  .intro .inr {
    width: 90%;
  }
  .intro .inr .text_wrap {
    position: relative;
    padding-top: 30.5555555556cqw;
    padding-bottom: 8.3333333333cqw;
    width: 81.9444444444%;
    margin-inline: auto;
  }
  .intro .inr .text_wrap h2 {
    width: clamp(273px, 75.8333333333%, 546px);
    margin-bottom: 11.1111111111cqw;
    margin-inline: auto;
  }
  .intro .inr .text_wrap p {
    font-size: min(18px, 3.8888888889cqw);
    line-height: 2.3571428571;
  }
  .intro .inr .text_wrap p br {
    display: none;
  }
  .intro .inr .about_wrap {
    position: relative;
    right: auto;
    top: auto;
    width: 100%;
    max-width: 720px;
    margin: 0 auto;
    aspect-ratio: 720/400;
  }
  .intro .inr .about_wrap .line {
    font-size: min(100px, 15.8333333333cqw);
  }
  .intro .inr .about_wrap .circle_box {
    width: 55.5555555556%;
  }
  .intro .inr .about_wrap .circle_box h3 {
    margin-bottom: 2.7777777778cqw;
  }
  .intro .inr .about_wrap .circle_box p {
    position: relative;
    font-size: min(18px, 3.3333333333cqw);
    line-height: 1.9166666667;
  }
  .intro .inr .about_wrap .circle_box.-reform {
    position: absolute;
    left: 0;
    top: 0;
  }
  .intro .inr .about_wrap .circle_box.-reform:before {
    background: var(--base-color-green13);
  }
  .intro .inr .about_wrap .circle_box.-reform h3 {
    width: 37%;
  }
  .intro .inr .about_wrap .circle_box.-renovation h3 {
    width: 53.25%;
  }
  .intro .inr .kumonchu {
    width: min(659px, 91.5277777778cqw);
  }
  .intro .inr .kumonchu.-kumonchu {
    bottom: -156.9444444444cqw;
    left: -37.5%;
    --W:659;
    --H:895;
  }
  .intro .inr .kumonchu.-kumonchu:after {
    --bW:228;
    --bT:-34;
    --bL:450;
    --imgURL: url("../img/reform/intro-kumonchu-sb-sp.png");
    aspect-ratio: 228/110;
  }
  .intro .inr .kumonchu.-duck {
    width: 43.4722222222cqw;
    bottom: -104.1666666667cqw;
    left: 63.8888888889%;
    --W:313;
    --H:320;
  }
  .intro .inr .kumonchu.-duck img {
    -webkit-transform: var(--hantenX);
            transform: var(--hantenX);
  }
  .intro .inr .kumonchu.-duck:after {
    --bW:328;
    --bT:-143;
    --bL:-182;
    --imgURL: url("../img/reform/intro-duck-sb-sp.png");
    aspect-ratio: 328/110;
  }
  .intro .town-bg {
    height: 49vw;
    background-size: 292.5vw 49vw;
  }
  .intro .btm_risu {
    position: absolute;
    width: 340px;
    right: -35px;
    bottom: -170px;
    z-index: 20;
  }
}
@media screen and (max-width: 1050px) and (min-width: 2000px) {
  .intro .btm_risu {
    right: auto;
    left: calc(50% + 690px);
  }
}
@media screen and (max-width: 1050px) {
  .intro .btm_cloud {
    position: absolute;
    z-index: 15;
    width: 2319px;
    left: calc(50% - 1175px);
    bottom: -60px;
    z-index: 8;
  }
}

/* ==========================================================================
	feature
========================================================================== */
.feature {
  position: relative;
  background: -webkit-gradient(linear, left top, left bottom, color-stop(50%, transparent), to(#e5fefe));
  background: linear-gradient(to bottom, transparent 50%, #e5fefe);
  padding-bottom: min(650px, 39.33vw);
}
.feature .feature-intro {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin-bottom: 18rem;
}
.feature .feature-intro .img {
  width: 64%;
}
.feature .feature-intro .img img {
  border-radius: 1rem;
}
.feature .feature-intro h2 {
  width: 17.68%;
  margin-right: 4.8%;
}
.feature .feature-box_wrap {
  position: relative;
  container-type: inline-size;
}
.feature .feature-box_wrap .feature-box {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  width: 86.6666666667%;
  margin-inline: auto;
}
.feature .feature-box_wrap .feature-box.-rev {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
}
.feature .feature-box_wrap .text_area {
  position: relative;
  width: 49.6153846154%;
  margin-left: 3.8461538462%;
  z-index: 10;
}
.feature .feature-box_wrap .text_area.-v2 {
  width: 42.3076923077%;
  margin-left: 0;
}
.feature .feature-box_wrap .text_area.-v2 .line {
  color: var(--base-color-green10);
}
.feature .feature-box_wrap .num {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  gap: 1rem;
  font-size: 1.2cqw;
  margin-bottom: 4cqw;
  color: var(--base-text-color03);
  z-index: 10;
  margin-bottom: 2.3333333333cqw;
}
.feature .feature-box_wrap .line {
  position: relative;
  font-family: var(--line-seed);
  font-size: 4.4cqw;
  color: var(--base-btn-color03);
  font-style: italic;
  font-weight: 100;
  -webkit-transform: translateY(10px);
          transform: translateY(10px);
  z-index: 10;
}
.feature .feature-box_wrap h2 {
  margin-left: 2.6666666667cqw;
  margin-bottom: 5.3333333333cqw;
}
.feature .feature-box_wrap h2 span {
  position: relative;
  display: block;
}
.feature .feature-box_wrap h2 span img {
  position: relative;
  z-index: 10;
}
.feature .feature-box_wrap h2 span.tab_on {
  display: none;
}
.feature .feature-box_wrap h2 span:after {
  content: "";
  display: block;
  position: absolute;
  left: 10px;
  top: 10px;
  width: 100%;
  height: 100%;
  background: var(--base-bubble-bg02);
  z-index: 1;
}
.feature .feature-box_wrap .n_txt {
  font-size: max(14px, 1.0666666667cqw);
  line-height: 2.5;
  font-weight: 500;
  letter-spacing: -0.08em;
}
.feature .feature-box_wrap .img_area.-v1 {
  position: relative;
  margin-right: 0.6666666667cqw;
  width: 35.3846153846%;
}
.feature .feature-box_wrap .img_area.-v1 img {
  border-radius: 10px;
}
.feature .feature-box_wrap .img_area.-v1:after {
  content: "";
  display: block;
  position: absolute;
  left: 7.3333333333cqw;
  bottom: -8.6666666667cqw;
  width: 100%;
  aspect-ratio: 920/620;
  border-radius: 10px 0 0 10px;
  background: url(../img/reform/feature-img_bg01.webp);
  background-size: cover;
  opacity: 0.3;
  z-index: 1;
}
.feature .feature-box_wrap .img_area.-v2 {
  position: relative;
  -webkit-transform: translateX(-7.3333333333cqw);
          transform: translateX(-7.3333333333cqw);
  width: 55.3846153846%;
}
.feature .feature-box_wrap .img_area.-v2:after {
  content: "";
  display: block;
  position: absolute;
  right: 8cqw;
  bottom: -8cqw;
  width: 83.3333333333%;
  aspect-ratio: 1200/600;
  border-radius: 0 10px 10px 0;
  background: url(../img/reform/feature-img_bg02.webp);
  background-size: cover;
  opacity: 0.3;
  z-index: 1;
}
.feature .feature-box_wrap .img_area.-v2 img {
  border-radius: 0 10px 10px 0;
}
.feature .feature-box_wrap .img_area img {
  position: relative;
  display: block;
  z-index: 10;
}
.feature .feature-box_wrap.-box01 {
  z-index: 30;
}
.feature .feature-box_wrap.-box01 .img_area .risu {
  position: absolute;
  width: 46.0869565217%;
  left: 66.9565217391%;
  top: -10.5333333333cqw;
  z-index: 10;
  -webkit-animation-delay: -0.5s;
  animation-delay: -0.5s;
  --W:212;
  --H:185;
}
.feature .feature-box_wrap.-box01 .img_area .risu:after {
  --bW:157;
  --bT:-88;
  --bL:-4;
  --imgURL: url("../img/reform/feature01-risu-sb.png");
  aspect-ratio: 157/68;
  -webkit-transition-delay: 1.2s;
          transition-delay: 1.2s;
}
.feature .feature-box_wrap.-box01 .cloud {
  position: absolute;
  width: 72.8%;
  bottom: -18.6666666667cqw;
  right: 60.9230769231%;
}
.feature .feature-box_wrap.-box03 {
  z-index: 30;
}
.feature .feature-box_wrap.-box03 .cloud {
  position: absolute;
  width: 64.0666666667%;
  bottom: -15.3333333333cqw;
  left: 63.8461538462%;
  z-index: 20;
}
.feature .feature-box_wrap.-box03 .duck {
  position: absolute;
  width: 12.3333333333%;
  left: 3.3333333333%;
  bottom: -26.6666666667cqw;
  z-index: 10;
  -webkit-animation-delay: -0.5s;
  animation-delay: -0.5s;
  --W:212;
  --H:185;
}
.feature .feature-box_wrap.-box03 .duck:after {
  --bW:207;
  --bT:-75;
  --bL:109;
  --imgURL: url("../img/reform/feature-duck-sb.webp");
  aspect-ratio: 207/68;
  -webkit-transition-delay: 1.2s;
          transition-delay: 1.2s;
}
.feature .feature-box_wrap.-box05 .kumonchu {
  position: absolute;
  width: 28.7333333333%;
  left: -6.6666666667%;
  bottom: -30.6666666667cqw;
  z-index: 10;
  -webkit-animation-delay: -0.5s;
  animation-delay: -0.5s;
  --W:431;
  --H:587;
}
.feature .feature-box_wrap.-box05 .kumonchu:after {
  --bW:177;
  --bT:24;
  --bL:311;
  --imgURL: url("../img/reform/feature-kumonchu-sb.png");
  aspect-ratio: 177/68;
  -webkit-transition-delay: 1.2s;
          transition-delay: 1.2s;
}
.feature .feature-box_wrap.-box05 .risu {
  position: absolute;
  width: 14.1333333333%;
  left: 16%;
  bottom: -15.3333333333cqw;
  z-index: 10;
  -webkit-animation-delay: -0.5s;
  animation-delay: -0.5s;
  --W:212;
  --H:186;
}
.feature .feature-box_wrap.-box05 .risu:after {
  --bW:142;
  --bT:-78;
  --bL:101;
  --imgURL: url("../img/reform/feature05-risu-sb.png");
  aspect-ratio: 142/68;
  -webkit-transition-delay: 1.6s;
          transition-delay: 1.6s;
}
.feature .feature-box_wrap.-box05 .cloud {
  position: absolute;
  width: 90.1333333333%;
  bottom: -25.3333333333cqw;
  left: 58.4615384615%;
  z-index: 20;
}
.feature .-box01 {
  margin-bottom: min(230px, 15.33vw);
}
.feature .-box01 h2 {
  width: 66.71875%;
}
.feature .-box02 {
  margin-bottom: min(290px, 19.33vw);
}
.feature .-box02 h2 {
  width: 51.09375%;
}
.feature .-box03 {
  margin-bottom: min(350px, 23.33vw);
}
.feature .-box03 h2 {
  width: 66.71875%;
}
.feature .-box04 {
  margin-bottom: min(300px, 20vw);
}
.feature .-box04 h2 {
  width: 53.125%;
}
.feature .-box05 {
  margin-bottom: 0;
}
.feature .-box05 h2 {
  width: 75.78125%;
}
@media screen and (max-width: 1050px) {
  .feature {
    padding-bottom: 129.5vw;
  }
  .feature .feature-intro {
    display: block;
    margin-bottom: 11.5rem;
    width: 37.875%;
    margin-inlie: auto;
  }
  .feature .feature-intro h2 {
    width: 100%;
    margin: 0;
  }
  .feature .feature-box_wrap {
    width: 80%;
    margin-bottom: min(350px, 42.5vw);
  }
  .feature .feature-box_wrap .feature-box {
    display: block;
    width: 100%;
  }
  .feature .feature-box_wrap .text_area {
    width: 92.1875%;
    margin: 0 auto 15.625cqw;
  }
  .feature .feature-box_wrap .text_area.-v2 {
    width: 92.1875%;
    margin: 0 auto 15.625cqw;
  }
  .feature .feature-box_wrap .num {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    gap: 0.5rem;
    font-size: 5.3125cqw;
    margin-bottom: 6.25cqw;
  }
  .feature .feature-box_wrap .line {
    font-size: 11.25cqw;
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
  .feature .feature-box_wrap h2 {
    margin: 0 auto 12.5cqw;
  }
  .feature .feature-box_wrap h2 span {
    position: relative;
    display: block;
    margin-inline: auto;
  }
  .feature .feature-box_wrap h2 span:after {
    left: 5px;
    top: 5px;
  }
  .feature .feature-box_wrap h2 span + span {
    margin-top: 1px;
  }
  .feature .feature-box_wrap h2 span.tab_on {
    display: block;
  }
  .feature .feature-box_wrap .n_txt {
    font-size: min(22px, 4.375cqw);
    line-height: 2.3571428571;
  }
  .feature .feature-box_wrap .img_area.-v1 {
    margin: 0 auto;
    width: 100%;
  }
  .feature .feature-box_wrap .img_area.-v1 img {
    border-radius: 5px;
  }
  .feature .feature-box_wrap .img_area.-v1:after {
    left: -14.84375cqw;
    bottom: -14.0625cqw;
    width: 84.375%;
    aspect-ratio: 540/364;
    border-radius: 0 5px 5px 0;
  }
  .feature .feature-box_wrap .img_area.-v2 {
    -webkit-transform: translateX(0);
            transform: translateX(0);
    width: 100%;
  }
  .feature .feature-box_wrap .img_area.-v2:after {
    right: -14.84375cqw;
    bottom: -14.0625cqw;
    width: 93.75%;
    border-radius: 5px 0 0 5px;
  }
  .feature .feature-box_wrap .img_area.-v2 img {
    border-radius: 5px 0 0 5px;
  }
  .feature .feature-box_wrap.-box01 .img_area .risu {
    width: 45.5882352941%;
    left: 63.2352941176%;
    top: 120.3125cqw;
    --W:155;
    --H:142;
  }
  .feature .feature-box_wrap.-box01 .img_area .risu:after {
    --bW:157;
    --bT:-75;
    --bL:-68;
    --imgURL: url("../img/reform/feature01-risu-sb-sp.png");
    aspect-ratio: 278/110;
  }
  .feature .feature-box_wrap.-box01 .cloud {
    position: absolute;
    width: 170.625%;
    bottom: -23.4375cqw;
    right: 38.28125%;
    z-index: 30;
  }
  .feature .feature-box_wrap.-box03 .cloud {
    width: 150.15625%;
    bottom: -9.375cqw;
    left: 48.4375%;
  }
  .feature .feature-box_wrap.-box03 .duck {
    width: 48.90625%;
    left: -23.4375%;
    bottom: -46.875cqw;
    --W:313;
    --H:320;
  }
  .feature .feature-box_wrap.-box03 .duck:after {
    --bW:372;
    --bT:-141;
    --bL:194;
    --imgURL: url("../img/reform/feature-duck-sb.webp");
    aspect-ratio: 372/114;
    -webkit-transition-delay: 1.2s;
            transition-delay: 1.2s;
  }
  .feature .feature-box_wrap.-box05 .kumonchu {
    width: 105.46875%;
    left: -60.9375%;
    bottom: -128.125cqw;
    --W:431;
    --H:587;
  }
  .feature .feature-box_wrap.-box05 .kumonchu:after {
    --bW:177;
    --bT:24;
    --bL:311;
    --imgURL: url("../img/reform/feature-kumonchu-sb.png");
    aspect-ratio: 177/68;
  }
  .feature .feature-box_wrap.-box05 .risu {
    position: absolute;
    width: 48.4375%;
    left: 70.78125%;
    bottom: -78.125cqw;
    --W:310;
    --H:284;
  }
  .feature .feature-box_wrap.-box05 .risu img {
    -webkit-transform: var(--hantenX);
            transform: var(--hantenX);
  }
  .feature .feature-box_wrap.-box05 .risu:after {
    --bW:238;
    --bT:-150;
    --bL:-85;
    --imgURL: url("../img/reform/feature05-risu-sb-sp.png");
    aspect-ratio: 238/110;
  }
  .feature .-box01 h2 {
    width: 71.875%;
  }
  .feature .-box01 h2 span:first-child {
    width: 73.9130434783%;
  }
  .feature .-box02 h2 {
    width: 78.125%;
  }
  .feature .-box03 h2 {
    width: 79.6875%;
  }
  .feature .-box03 h2 span:first-child {
    width: 41.1764705882%;
  }
  .feature .-box04 h2 {
    width: 82.8125%;
  }
  .feature .-box05 {
    margin-bottom: 0;
  }
  .feature .-box05 h2 {
    width: 79.6875%;
  }
  .feature .-box05 h2 span:first-child {
    width: 62.7450980392%;
  }
}

/* ==========================================================================
	process
========================================================================== */
.process {
  background: -webkit-gradient(linear, left top, left bottom, from(#e5fefe), to(#c7fcfd));
  background: linear-gradient(to bottom, #e5fefe 0%, #c7fcfd 100%);
}
.process .inr {
  container-type: inline-size;
}
.process .inr h2 {
  position: relative;
  width: 54.1666666667cqw;
  margin: 0 auto 2.0833333333cqw;
}
.process .inr .en-tit {
  display: block;
  text-align: center;
  font-size: 1.6666666667cqw;
  margin: 0 auto 12.5cqw;
  color: var(--base-color-green15);
}
.process .inr .process_list {
  position: relative;
}
.process .inr li {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
  padding: 2.5cqw 1.6666666667cqw 2.5cqw 13.3333333333cqw;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  background: var(--base-color-white);
  border-radius: 30px;
}
.process .inr li + li {
  margin-top: 10px;
}
.process .inr li:not(:first-child)::before {
  content: "";
  display: block;
  position: absolute;
  width: 1px;
  height: 110px;
  left: 4.1666666667cqw;
  top: 0;
  background: var(--base-color-green08);
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
.process .inr .text_area {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 58%;
}
.process .inr h3 {
  margin-bottom: 2.5cqw;
}
.process .inr .n_txt {
  font-size: 1.3333333333cqw;
  line-height: 2.25;
  font-weight: 500;
  letter-spacing: -0.04em;
}
.process .inr .img_area {
  width: 36%;
}
.process .inr .img_area img {
  border-radius: 30px;
}
.process .inr li:nth-child(2n) .num_box {
  -webkit-transform: translateX(-10px) rotate(5deg);
          transform: translateX(-10px) rotate(5deg);
  background: var(--base-color-green10);
}
.process .inr .num_box {
  position: absolute;
  width: 8.3333333333cqw;
  height: 8.3333333333cqw;
  aspect-ratio: 1/1;
  display: block;
  left: 0;
  top: 0;
  bottom: 0;
  margin: auto;
  -webkit-transform: translateX(-10px) rotate(-5deg);
          transform: translateX(-10px) rotate(-5deg);
  padding-top: 2.0833333333cqw;
  z-index: 10;
  text-align: center;
  background: var(--base-color-green08);
}
.process .inr .num_box:after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  pointer-events: none;
  background: url(../img/common/texture.webp);
  background-size: cover;
  opacity: 0.5;
  mix-blend-mode: soft-light;
}
.process .inr .num_box .en {
  position: relative;
  font-weight: 500;
  color: var(--base-color-white);
  font-size: max(13px, 1.25cqw);
  z-index: 5;
}
.process .inr .num_box .num {
  font-size: 3.5cqw;
}
.process .inr .list01 h3 {
  width: 26.724137931%;
}
.process .inr .list02 h3 {
  width: 44.8275862069%;
}
.process .inr .list03 h3 {
  width: 42.4137931034%;
}
.process .inr .list04 h3 {
  width: 12.0689655172%;
}
.process .inr .list05 h3 {
  width: 8.1034482759%;
}
.process .inr .list06 h3 {
  width: 20.3448275862%;
}
.process .inr .list07 h3 {
  width: 43.1034482759%;
}
@media screen and (max-width: 1050px) {
  .process .inr {
    width: 90%;
  }
  .process .inr h2 {
    width: 71.6666666667cqw;
    margin: 0 auto 8.3333333333cqw;
  }
  .process .inr .en-tit {
    font-size: 3.3333333333cqw;
    margin: 0 auto 27.7777777778cqw;
  }
  .process .inr li {
    padding: 5.5555555556cqw 5.5555555556cqw 11.1111111111cqw;
    border-radius: 15px;
  }
  .process .inr li + li {
    margin-top: 20px;
  }
  .process .inr li:not(:first-child)::before {
    height: 197px;
    left: 5.5555555556cqw;
    -webkit-transform: translateY(-100%);
            transform: translateY(-100%);
  }
  .process .inr .text_area {
    display: block;
    width: 100%;
    padding-left: 16.3888888889cqw;
    padding-right: 2.0833333333cqw;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
  }
  .process .inr h3 {
    margin-bottom: 6.9444444444cqw;
  }
  .process .inr .n_txt {
    font-size: 3.8888888889cqw;
    line-height: 2.0714285714;
  }
  .process .inr .img_area {
    width: 100%;
    margin-bottom: 11.1111111111cqw;
  }
  .process .inr .img_area img {
    border-radius: 15px;
  }
  .process .inr li:nth-child(2n) .num_box {
    -webkit-transform: translateX(-1.3888888889cqw) rotate(-5deg);
            transform: translateX(-1.3888888889cqw) rotate(-5deg);
  }
  .process .inr .num_box {
    width: 18.0555555556cqw;
    height: 18.0555555556cqw;
    top: 49.3055555556cqw;
    bottom: auto;
    -webkit-transform: translateX(-2.7777777778cqw) rotate(-5deg);
            transform: translateX(-2.7777777778cqw) rotate(-5deg);
    padding-top: 4.1666666667cqw;
    z-index: 30;
  }
  .process .inr .num_box .en {
    position: relative;
    font-weight: 500;
    color: var(--base-color-white);
    font-size: max(13px, 2.0833333333cqw);
    z-index: 5;
  }
  .process .inr .num_box .num {
    font-size: 8.0555555556cqw;
  }
  .process .inr .list01 h3 {
    width: 41.6666666667%;
  }
  .process .inr .list02 h3 {
    width: 69.7916666667%;
  }
  .process .inr .list03 h3 {
    width: 73.125%;
  }
  .process .inr .list04 h3 {
    width: 18.75%;
  }
  .process .inr .list05 h3 {
    width: 12.7083333333%;
  }
  .process .inr .list06 h3 {
    width: 31.6666666667%;
  }
  .process .inr .list07 h3 {
    width: 66.4583333333%;
  }
}

/* ==========================================================================
	works
========================================================================== */
.works {
  background: -webkit-gradient(linear, left top, left bottom, from(#c7fcfd), to(var(--base-bg-color05)));
  background: linear-gradient(to bottom, #c7fcfd 0%, var(--base-bg-color05) 100%);
  padding-top: 13.33vw;
}
.works .inr {
  position: relative;
  container-type: inline-size;
}
.works .inr .title_area {
  position: relative;
  margin-bottom: 7.6923076923cqw;
}
.works .inr h2 {
  width: 32.3076923077%;
  margin-bottom: 1.9230769231cqw;
}
.works .inr .en-tit {
  display: block;
  font-size: 1.5384615385cqw;
  color: var(--base-color-green15);
}
.works .inr .link_wrap {
  position: absolute;
  right: 0;
  top: 0;
}
.works .inr .works_list-wrap {
  position: relative;
}
.works .inr .works_list-wrap .duck {
  position: absolute;
  width: 7.4615384615%;
  right: 18.8461538462%;
  top: -5.7692307692cqw;
  z-index: 1;
  -webkit-transition-delay: 0.8s;
          transition-delay: 0.8s;
  --W:97;
  --H:113;
  pointer-events: none;
}
.works .inr .works_list-wrap .duck:after {
  --bW:177;
  --bT:-87;
  --bL:-133;
  --imgURL: url("../img/reform/works-duck-sb.png");
  aspect-ratio: 177/68;
  -webkit-transition-delay: 1.2s;
          transition-delay: 1.2s;
}
.works .inr .works_list {
  position: relative;
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: minmax(0, 1fr) 3.4615384615cqw minmax(0, 1fr) 3.4615384615cqw minmax(0, 1fr);
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 3.4615384615cqw;
  width: 100%;
  margin: 0 auto;
  z-index: 10;
}
.works .inr .card {
  -webkit-transition: -webkit-transform 0.35s ease;
  transition: -webkit-transform 0.35s ease;
  transition: transform 0.35s ease;
  transition: transform 0.35s ease, -webkit-transform 0.35s ease;
  will-change: transform;
  position: relative;
  width: 100%;
}
@media screen and (min-width: 801px) {
  .works .inr .card .card__link:hover .card__photo {
    -webkit-transform: rotate(5deg);
            transform: rotate(5deg);
  }
  .works .inr .card .card__link:hover .card__title {
    font-weight: 600;
  }
  .works .inr .card .card__link:hover .card__tags a:hover {
    font-weight: 600;
    color: var(--base-color-blue);
  }
  .works .inr .card .card__link:hover .card__area:hover {
    background: var(--base-color-blue);
  }
  .works .inr .card .card__link:hover .card__area.uchi:hover {
    background: var(--base-btn-color02);
  }
}
.works .inr .card__link {
  position: relative;
}
.works .inr .link {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
}
.works .inr .card__photo {
  position: relative;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  margin-bottom: 2.3076923077cqw;
  width: 100%;
  aspect-ratio: 350/230;
  -webkit-transition: -webkit-transform 0.4s var(--easeOutSine);
  transition: -webkit-transform 0.4s var(--easeOutSine);
  transition: transform 0.4s var(--easeOutSine);
  transition: transform 0.4s var(--easeOutSine), -webkit-transform 0.4s var(--easeOutSine);
}
.works .inr .card__photo img {
  border: 12px solid var(--base-bg-color08);
}
.works .inr .card__photo:after {
  content: "";
  display: block;
  position: absolute;
  width: 25%;
  aspect-ratio: 90/49;
  left: 77.1428571429%;
  top: 83.9130434783%;
  background-size: cover;
  z-index: 10;
}
.works .inr .card__photo.uchi:after {
  background-image: url(../img/common/icon_uchirino.png);
}
.works .inr .card__photo.soto:after {
  background-image: url(../img/common/icon_sotorino.png);
}
.works .inr .card__title {
  font-size: 1.5384615385cqw;
  font-weight: 500;
  margin-bottom: 0.3846153846cqw;
}
.works .inr .card__tags {
  position: relative;
  margin-bottom: 1.5384615385cqw;
  z-index: 5;
}
.works .inr .card__tags a {
  position: relative;
  display: inline-block;
  font-size: 1cqw;
  margin-top: 0.7692307692cqw;
  font-weight: 500;
  margin-right: 11px;
}
.works .inr .card__tags a:after {
  content: "";
  display: block;
  width: 100%;
  height: 1px;
  position: absolute;
  left: 0;
  bottom: -1px;
  background: var(--base-border-color03);
}
.works .inr .card__area {
  position: relative;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  height: 2cqw;
  padding: 0 1cqw;
  border-radius: 999px;
  background: #111;
  color: #fff;
  font-size: 1cqw;
  font-weight: 500;
  z-index: 5;
}
.works .inr .qa-bnr {
  position: relative;
  display: block;
  width: 100%;
  aspect-ratio: 1200/200;
  background: url(../img/reform/works-bnr_bg.jpg) left center repeat;
  background-size: 40px 40px;
  border-radius: 15.3846153846cqw;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  margin-top: 7.3076923077cqw;
}
.works .inr .qa-bnr:after {
  content: "";
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  border-radius: 15.3846153846cqw;
  border: 10px solid var(--base-color-white);
  -webkit-transition: all 0.4s ease;
  transition: all 0.4s ease;
}
.works .inr .qa-bnr .icon {
  position: absolute;
  width: 16.6666666667%;
  z-index: 20;
}
.works .inr .qa-bnr .text {
  position: absolute;
  left: 0;
  right: 0;
  margin: auto;
  z-index: 20;
}
.works .inr .qa-bnr .text.text01 {
  width: 30%;
  top: 25%;
}
.works .inr .qa-bnr .text.text02 {
  width: 28.0833333333%;
  top: 51%;
}
.works .inr .qa-bnr .icon {
  display: block;
  position: absolute;
  width: 8.3333333333%;
  z-index: 5;
  -webkit-transition: -webkit-transform 0.2s ease;
  transition: -webkit-transform 0.2s ease;
  transition: transform 0.2s ease;
  transition: transform 0.2s ease, -webkit-transform 0.2s ease;
}
.works .inr .qa-bnr .icon.icon01 {
  left: 3.3333333333%;
  top: 26%;
}
.works .inr .qa-bnr .icon.icon02 {
  left: 10.8333333333%;
  top: -10%;
}
.works .inr .qa-bnr .icon.icon03 {
  right: 10.8333333333%;
  top: -10%;
}
.works .inr .qa-bnr .icon.icon04 {
  right: 3.3333333333%;
  top: 26%;
}
.works .inr .qa-bnr .man {
  position: absolute;
  width: 15%;
  left: 15.5%;
  bottom: 0;
  z-index: 10;
}
.works .inr .qa-bnr .girl {
  position: absolute;
  width: 10.4166666667%;
  right: 15.5%;
  bottom: 0;
  z-index: 10;
}
@media screen and (min-width: 801px) {
  .works .inr .qa-bnr:hover {
    border-color: var(--base-btn-color01);
  }
  .works .inr .qa-bnr:hover .icon01 {
    -webkit-transform: translate(-20px, -20px);
            transform: translate(-20px, -20px);
  }
  .works .inr .qa-bnr:hover .icon02 {
    -webkit-transform: translate(-5px, -20px);
            transform: translate(-5px, -20px);
  }
  .works .inr .qa-bnr:hover .icon03 {
    -webkit-transform: translate(5px, -20px);
            transform: translate(5px, -20px);
  }
  .works .inr .qa-bnr:hover .icon04 {
    -webkit-transform: translate(20px, -20px);
            transform: translate(20px, -20px);
  }
}
@media screen and (max-width: 1050px) {
  .works {
    padding-top: 0;
  }
  .works .inr {
    width: 80%;
    padding-top: 36.5vw;
  }
  .works .inr .title_area {
    width: 94.84375%;
    margin-bottom: 56.25cqw;
  }
  .works .inr h2 {
    width: 100%;
    margin-bottom: 3.90625cqw;
  }
  .works .inr .en-tit {
    font-size: 4.375cqw;
    text-align: center;
  }
  .works .inr .link_wrap {
    display: none;
  }
  .works .inr .works_list-wrap .duck {
    position: absolute;
    width: min(200px, 32.5%);
    right: -0.78125%;
    top: max(-180px, -28.125cqw);
    z-index: 1;
    -webkit-transition-delay: 0.6s;
            transition-delay: 0.6s;
    --W:208;
    --H:238;
    pointer-events: none;
  }
  .works .inr .works_list-wrap .duck:after {
    --bW:308;
    --bT:-90;
    --bL:-280;
    --imgURL: url("../img/reform/works-duck-sb-sp.png");
    aspect-ratio: 308/110;
    -webkit-transition-delay: 1.2s;
            transition-delay: 1.2s;
  }
  .works .inr .works_list {
    position: relative;
    display: block;
    width: 100%;
  }
  .works .inr li + li {
    margin-top: 12.5cqw;
  }
  .works .inr .card__photo {
    margin-bottom: 6.25cqw;
  }
  .works .inr .card__photo:after {
    left: 78.125%;
    top: 83.3333333333%;
  }
  .works .inr .card__title {
    font-size: 5cqw;
    margin-bottom: 3.90625cqw;
  }
  .works .inr .card__tags {
    margin-bottom: 5.46875cqw;
  }
  .works .inr .card__tags a {
    font-size: min(14px, 3.75cqw);
    margin-top: 1.5625cqw;
  }
  .works .inr .card__area {
    height: min(30px, 7.1875cqw);
    padding: 0 3.125cqw;
    font-size: min(13px, 3.4375cqw);
  }
  .works .inr .qa-bnr {
    aspect-ratio: 720/700;
    border-radius: 15.625cqw;
    margin-top: 18.75cqw;
    overflow: hidden;
  }
  .works .inr .qa-bnr:after {
    z-index: 50;
  }
  .works .inr .qa-bnr .icon {
    width: 13.8888888889%;
    z-index: 20;
  }
  .works .inr .qa-bnr .text {
    position: absolute;
    left: 0;
    right: 0;
    margin: auto;
    z-index: 20;
  }
  .works .inr .qa-bnr .text.text01 {
    width: 70.8333333333%;
    top: 17.1428571429%;
  }
  .works .inr .qa-bnr .text.text02 {
    width: 70.1388888889%;
    top: 42.8571428571%;
  }
  .works .inr .qa-bnr .icon {
    width: 13.8888888889%;
  }
  .works .inr .qa-bnr .icon.icon01 {
    left: -1.1111111111%;
    top: 75.7142857143%;
  }
  .works .inr .qa-bnr .icon.icon02 {
    left: 11.1111111111%;
    top: 65.2857142857%;
  }
  .works .inr .qa-bnr .icon.icon03 {
    right: 11.1111111111%;
    top: 65.2857142857%;
  }
  .works .inr .qa-bnr .icon.icon04 {
    right: -1.1111111111%;
    top: 75.7142857143%;
  }
  .works .inr .qa-bnr .man {
    width: 31.9444444444%;
    left: 16.6666666667%;
    top: 65.9722222222%;
    bottom: auto;
    z-index: 40;
  }
  .works .inr .qa-bnr .girl {
    width: 21.1111111111%;
    right: 20.2777777778%;
    bottom: 0;
    z-index: 40;
  }
}