@charset "UTF-8";
/* ==========================================================================
	transition
========================================================================== */
/* ==========================================================================
	行数でトリミング
========================================================================== */
/* ==========================================================================
	コンテナクエリ
========================================================================== */
: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:#137a80;
  --base-btn-color02:#c93c02;
  --base-btn-color02-hv:#ba3600;
  --base-btn-color03:#3da4a3;
  --base-btn-color01-hv:#137a80;
  --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: 21.1111111111%;
  min-width: 304px;
}
@media screen and (max-width: 1050px) {
  .fv .inr h1 {
    width: 50.1351351351%;
    min-width: 185px;
  }
}

/* ==========================================================================
	intro
========================================================================== */
.intro {
  position: relative;
}
.intro .inr {
  container-type: inline-size;
}
.intro .title_area {
  padding-left: 3.5384615385%;
  padding-top: 18.4615384615cqw;
  padding-bottom: 29.3846153846cqw;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
.intro h2 {
  width: 38.4615384615%;
}
.intro .bird {
  display: block;
  position: absolute;
  width: 16.2307692308%;
  left: 48.2307692308%;
  top: 5.7692307692cqw;
  -webkit-animation: bird-float 4s ease-in-out infinite;
          animation: bird-float 4s ease-in-out infinite;
  z-index: 40;
}
.intro .bird img {
  -webkit-animation: bird-sway 2s ease-in-out infinite;
          animation: bird-sway 2s ease-in-out infinite;
  will-change: transform;
  -webkit-transform-origin: 50% 60%;
          transform-origin: 50% 60%;
}
.intro .intro-loopY {
  position: absolute;
  right: 0;
  bottom: 0;
  width: 46.1538461538%;
  height: 100%;
  overflow: hidden;
  z-index: 10;
}
.intro .intro-loopY:after {
  content: "";
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 150px;
  background: -webkit-gradient(linear, left top, left bottom, from(#fff), to(transparent));
  background: linear-gradient(to bottom, #fff 0%, transparent 100%);
}
.intro .intro-loopY__track {
  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: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
  height: -webkit-max-content;
  height: -moz-max-content;
  height: max-content;
  will-change: transform;
  -webkit-animation: LoopY 40s linear infinite;
          animation: LoopY 40s linear infinite;
}
.intro .intro-loopY__unit {
  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: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
  -webkit-box-flex: 0;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
  height: -webkit-max-content;
  height: -moz-max-content;
  height: max-content;
}
.intro .intro-loop-Y__img {
  display: block;
  width: 83.3333333333%;
  height: auto;
  margin-top: 20px;
  border-radius: 30px;
}
.intro .intro-loop-Y__img:nth-child(2n) {
  margin-left: auto;
}
.intro .intro-loop {
  position: absolute;
  width: 100%;
  left: 0;
  bottom: 7.9230769231cqw;
  z-index: 5;
  overflow: hidden;
}
.intro .intro-loop__track {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
  will-change: transform;
  -webkit-animation: LoopX02 60s linear infinite;
          animation: LoopX02 60s linear infinite;
}
.intro .intro-loop__unit {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-flex: 0;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
  gap: 40px;
}
.intro .intro-loop__img {
  display: block;
  width: 4266px;
  height: auto;
  -webkit-box-flex: 0;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
}
@media screen and (max-width: 1050px) {
  .intro {
    margin-bottom: 8.75cqw;
  }
  .intro .inr {
    width: 100%;
  }
  .intro .title_area {
    width: 80%;
    padding-left: 0;
    padding-top: 52.5cqw;
    padding-bottom: 12.5cqw;
    margin-inline: auto;
  }
  .intro h2 {
    width: 92.96875%;
  }
  .intro .cloud {
    position: absolute;
    width: 193.75%;
    left: 23.75%;
    top: -22.5cqw;
  }
  .intro .bird {
    width: 31.375%;
    left: 63.625%;
    top: -3.125cqw;
  }
  .intro .intro-loopY {
    position: relative;
    width: 100%;
    height: auto;
    bottom: auto;
    margin-bottom: 15cqw;
  }
  .intro .intro-loopY:after {
    display: none;
  }
  .intro .intro-loopY__track {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    width: -webkit-max-content;
    width: -moz-max-content;
    width: max-content;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    will-change: transform;
    -webkit-animation: LoopX02-rev 40s linear infinite;
            animation: LoopX02-rev 40s linear infinite;
  }
  .intro .intro-loopY__unit {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
            flex: 0 0 auto;
    width: -webkit-max-content;
    width: -moz-max-content;
    width: max-content;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    gap: 5cqw;
    margin-right: 5cqw;
  }
  .intro .intro-loop-Y__img {
    width: min(350px, 62.5cqw);
    height: auto;
    margin-top: 0;
    border-radius: 15px;
  }
  .intro .intro-loop-Y__img:nth-child(2n) {
    margin-left: 0;
  }
  .intro .intro-loop {
    position: relative;
    bottom: auto;
  }
  .intro .intro-loop__img {
    display: block;
    width: 2133px;
    height: auto;
    -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
            flex: 0 0 auto;
  }
}

/* ==========================================================================
	policy
========================================================================== */
.policy {
  position: relative;
  z-index: 30;
  background: -webkit-gradient(linear, left top, left bottom, from(transparent), to(var(--base-bg-color05)));
  background: linear-gradient(to bottom, transparent 0%, var(--base-bg-color05) 100%);
}
.policy .round-con {
  background: url(../img/about/policy_bg.jpg);
  background-size: cover;
  container-type: inline-size;
}
.policy .policy-sec {
  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-top: 10cqw;
  width: 81.4285714286%;
  margin-inline: auto;
  z-index: 15;
}
.policy h2 {
  width: 38.8596491228%;
}
.policy h2 img:first-child {
  width: 83.9729119639%;
  margin-bottom: 1.8666666667cqw;
}
.policy h2 img:nth-child(2) {
  width: 63.2054176072%;
  margin-bottom: 1.8666666667cqw;
}
.policy .text_area {
  width: 49.1228070175%;
}
.policy .sub-tit {
  position: relative;
  display: table;
  font-size: 1.2cqw;
  letter-spacing: 0.04em;
  padding: 15px calc(115px + 2.6666666667cqw) 14px 15px;
  background: #fff;
  margin-bottom: 1px;
}
.policy .sub-tit img {
  position: absolute;
  right: 1.6666666667cqw;
  bottom: 15px;
  width: 115px;
}
.policy h3 {
  margin-bottom: 6cqw;
}
.policy h3 span {
  position: relative;
  display: table;
  padding: 15px 20px 14px 15px;
}
.policy h3 span.tab_on {
  display: none;
}
.policy h3 span:before {
  content: "";
  display: block;
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  bottom: 0;
  z-index: 2;
  background: var(--base-color-white);
}
.policy h3 span:after {
  content: "";
  display: block;
  position: absolute;
  width: 100%;
  height: 100%;
  left: 10px;
  bottom: -10px;
  z-index: 1;
  background: var(--base-shadow-color);
}
.policy h3 img {
  position: relative;
  z-index: 10;
  width: 34.3333333333cqw;
}
.policy .n_txt {
  font-size: max(14px, 1.0666666667cqw);
  line-height: 2.5;
  font-weight: 500;
}
.policy .link_btn {
  margin-top: 3.3333333333cqw;
  padding-left: 2.6666666667cqw;
  border-radius: max(30px, 2cqw);
}
.policy .link_btn:before {
  border-radius: max(30px, 2cqw);
}
.policy .link_btn .text {
  font-size: max(16px, 1.2cqw);
}
.policy .link_btn .arrow {
  right: 2cqw;
  width: 1.0666666667cqw;
  height: 1.0666666667cqw;
}
.policy .kumo {
  position: absolute;
  opacity: 0;
  -webkit-transition: opacity 1s 0.4s var(--easeOutSine), -webkit-transform 1s 0.4s var(--easeOutSine);
  transition: opacity 1s 0.4s var(--easeOutSine), -webkit-transform 1s 0.4s var(--easeOutSine);
  transition: opacity 1s 0.4s var(--easeOutSine), transform 1s 0.4s var(--easeOutSine);
  transition: opacity 1s 0.4s var(--easeOutSine), transform 1s 0.4s var(--easeOutSine), -webkit-transform 1s 0.4s var(--easeOutSine);
}
.policy .kumo.move {
  opacity: 1;
  -webkit-transform: translate(0, 0) !important;
          transform: translate(0, 0) !important;
}
.policy .-sec01 {
  margin-top: 12.6666666667cqw;
}
.policy .-sec01 .link_btn {
  width: 25.3333333333cqw;
  min-width: 320px;
  aspect-ratio: 380/60;
  padding-left: 2.6666666667cqw;
}
.policy .-sec01 .link_btn .text {
  letter-spacing: -0.1em;
}
.policy .-sec01 .link_btn .text {
  font-size: max(16px, 1.2cqw);
}
.policy .-sec01 .kumo {
  -webkit-transform: translate(-50px, 50px);
          transform: translate(-50px, 50px);
}
.policy .-sec01 .kumonchu {
  left: -15.3333333333cqw;
  width: 28.7333333333cqw;
  bottom: -11.5333333333cqw;
  --W:431;
  --H:587;
}
.policy .-sec01 .kumonchu:after {
  --bW:207;
  --bT:23;
  --bL:313;
  --imgURL: url("../img/about/policy01_kumonchu-sb.png");
  aspect-ratio: 414/136;
  -webkit-transition-delay: 1.2s;
          transition-delay: 1.2s;
}
.policy .-sec01 .risu {
  left: 8cqw;
  width: 14.1333333333cqw;
  bottom: 2.6666666667cqw;
  -webkit-transition-delay: 0.5s;
          transition-delay: 0.5s;
  --W:212;
  --H:186;
}
.policy .-sec01 .risu:after {
  --bW:187;
  --bT:-77;
  --bL:100;
  --imgURL: url("../img/about/policy01_risu-sb.png");
  aspect-ratio: 374/136;
  -webkit-transition-delay: 1.2s;
          transition-delay: 1.2s;
}
.policy .-sec02 {
  z-index: 20;
}
.policy .-sec02 h3 img {
  width: 27.5333333333cqw;
}
.policy .-sec02 .-slink01 {
  display: inline-block;
  margin-right: 1.3333333333cqw;
}
.policy .-sec02 .-slink01 .link_btn {
  width: 14.6666666667cqw;
  min-width: 140px;
  aspect-ratio: 220/60;
}
.policy .-sec02 .-slink02 {
  display: inline-block;
}
.policy .-sec02 .-slink02 .link_btn {
  width: 22.6666666667cqw;
  min-width: 280px;
  aspect-ratio: 340/60;
}
.policy .-sec02 .-slink02 .link_btn .text {
  letter-spacing: -0.1em;
}
.policy .-sec02 .kumo {
  -webkit-transform: translate(50px, 50px);
          transform: translate(50px, 50px);
}
.policy .-sec02 .kumonchu {
  left: 64.0666666667cqw;
  width: 28.7333333333cqw;
  bottom: 3cqw;
  --W:431;
  --H:595;
}
.policy .-sec02 .kumonchu:after {
  --bW:187;
  --bT:29;
  --bL:-54;
  --imgURL: url("../img/about/policy02_kumonchu-sb.png");
  aspect-ratio: 187/68;
  -webkit-transition-delay: 1.2s;
          transition-delay: 1.2s;
}
.policy .-sec02 .duck {
  left: 53.2666666667cqw;
  width: 12.3333333333cqw;
  bottom: 17.1333333333cqw;
  -webkit-transition-delay: 0.5s;
          transition-delay: 0.5s;
  --W:185;
  --H:189;
}
.policy .-sec02 .duck:after {
  --bW:207;
  --bT:-68;
  --bL:-28;
  --imgURL: url("../img/about/policy02_duck-sb.png");
  aspect-ratio: 414/136;
  -webkit-transition-delay: 1.2s;
          transition-delay: 1.2s;
}
.policy .-sec03 {
  margin-bottom: 13.3333333333cqw;
}
.policy .-sec03 .text_area {
  margin-left: auto;
}
.policy .-sec03 h3 img {
  width: 35.5333333333cqw;
}
.policy .-sec03 .kumo {
  -webkit-transform: translate(-50px, 50px);
          transform: translate(-50px, 50px);
}
.policy .-sec03 .duck {
  left: -16cqw;
  width: 28.7333333333cqw;
  bottom: 11.7333333333cqw;
  --W:431;
  --H:343;
}
.policy .-sec03 .duck:after {
  --bW:187;
  --bT:-66;
  --bL:303;
  --imgURL: url("../img/about/policy03_duck-sb.png");
  aspect-ratio: 374/136;
  -webkit-transition-delay: 1.2s;
          transition-delay: 1.2s;
}
.policy .-sec03 .risu {
  left: 7.8cqw;
  width: 14.1333333333cqw;
  bottom: 16.3333333333cqw;
  -webkit-transition-delay: 0.5s;
          transition-delay: 0.5s;
  --W:212;
  --H:186;
  z-index: 20;
}
.policy .-sec03 .risu:after {
  --bW:167;
  --bT:-77;
  --bL:100;
  --imgURL: url("../img/about/policy03_risu-sb.png");
  aspect-ratio: 334/136;
  -webkit-transition-delay: 1.2s;
          transition-delay: 1.2s;
}
@media screen and (max-width: 1050px) {
  .policy .policy-sec {
    margin-top: 128.9473684211cqw;
    width: 84.2105263158%;
  }
  .policy h2 {
    width: 67.1875%;
    margin-inline: auto;
    text-align: center;
    margin-bottom: 19.7368421053cqw;
  }
  .policy h2 img:first-child {
    width: 84.4186046512%;
    margin: 0 auto 3.9473684211cqw;
  }
  .policy h2 img:nth-child(2) {
    width: 63.488372093%;
    margin: 0 auto 4.3421052632cqw;
  }
  .policy .text_area {
    width: 100%;
  }
  .policy .sub-tit {
    font-size: 17px;
    padding: 8px 80px 8px 14px;
    margin-inline: auto;
  }
  .policy .sub-tit img {
    position: absolute;
    right: 1.6666666667cqw;
    bottom: 10px;
    width: 63px;
  }
  .policy h3 {
    margin: 0 auto 11.8421052632cqw;
  }
  .policy h3 span {
    position: relative;
    display: table;
    padding: 10px 20px;
    margin-inline: auto;
  }
  .policy h3 span + span {
    margin-top: 1px;
  }
  .policy h3 span.tab_off {
    display: none;
  }
  .policy h3 span.tab_on {
    display: table;
  }
  .policy h3 span:after {
    left: 5px;
    bottom: -5px;
  }
  .policy .n_txt {
    font-size: min(18px, 3.6842105263cqw);
    line-height: 2.3571428571;
  }
  .policy .link_wrap {
    width: 100%;
  }
  .policy .link_btn {
    width: 100% !important;
    aspect-ratio: auto !important;
    height: min(100px, 13.1578947368cqw);
    margin-top: 12.5cqw;
    padding-left: 8.4210526316cqw;
    border-radius: 13.1578947368cqw;
  }
  .policy .link_btn:before {
    border-radius: 13.1578947368cqw;
  }
  .policy .link_btn .text {
    font-size: min(32px, 4.2105263158cqw);
  }
  .policy .link_btn .arrow {
    right: 5.2631578947cqw;
    width: 3.1578947368cqw;
    height: 3.1578947368cqw;
  }
  .policy .-sec01 {
    margin-top: 26.3157894737cqw;
  }
  .policy .-sec01 h3 .-sp_tit01 {
    width: 44.6052631579cqw;
  }
  .policy .-sec01 h3 .-sp_tit02 {
    width: 55.1315789474cqw;
  }
  .policy .-sec01 .link_btn {
    padding-left: 7.8947368421cqw;
  }
  .policy .-sec01 .link_btn .text {
    font-size: min(32px, 4.2105263158cqw);
  }
  .policy .-sec01 .kumonchu {
    left: -46.0526315789cqw;
    width: 89.4736842105cqw;
    bottom: -134.4736842105cqw;
    --W:675;
    --H:920;
  }
  .policy .-sec01 .kumonchu:after {
    --bW:347;
    --bT:0;
    --bL:480;
    --imgURL: url("../img/about/policy01_kumonchu-sb-sp.png");
    aspect-ratio: 694/218;
  }
  .policy .-sec01 .risu {
    left: 59.3421052632cqw;
    width: 40.7894736842cqw;
    bottom: -85.9210526316cqw;
    -webkit-transition-delay: 0.5s;
            transition-delay: 0.5s;
    --W:310;
    --H:284;
    -webkit-transform: translate(50px, 50px);
            transform: translate(50px, 50px);
  }
  .policy .-sec01 .risu:after {
    --bW:317;
    --bT:-134;
    --bL:-165;
    --imgURL: url("../img/about/policy01_risu-sb-sp.png");
    aspect-ratio: 634/218;
  }
  .policy .-sec02 h3 .-sp_tit01 {
    width: 45.2631578947cqw;
  }
  .policy .-sec02 h3 .-sp_tit02 {
    width: 33.2894736842cqw;
  }
  .policy .-sec02 .-slink01 {
    display: block;
  }
  .policy .-sec02 .-slink01 .link_btn {
    width: 100% !important;
    aspect-ratio: auto !important;
    height: min(100px, 13.1578947368cqw);
    padding-left: 8.4210526316cqw;
    border-radius: 13.1578947368cqw;
    margin-right: 0;
  }
  .policy .-sec02 .-slink02 {
    display: block;
  }
  .policy .-sec02 .-slink02 .link_btn {
    width: 100% !important;
    aspect-ratio: auto !important;
    height: min(100px, 13.1578947368cqw);
    padding-left: 8.4210526316cqw;
    border-radius: 13.1578947368cqw;
    margin-top: 1rem;
  }
  .policy .-sec02 .kumonchu {
    left: 44.6052631579cqw;
    width: 86.7105263158cqw;
    bottom: -135.9210526316cqw;
    --W:659;
    --H:895;
  }
  .policy .-sec02 .kumonchu:after {
    --bW:357;
    --bT:-36;
    --bL:-143;
    --imgURL: url("../img/about/policy02_kumonchu-sb-sp.png");
    aspect-ratio: 714/218;
  }
  .policy .-sec02 .duck {
    left: -15.7894736842cqw;
    width: 41.1842105263cqw;
    bottom: -90.1315789474cqw;
    -webkit-transform: translate(-50px, 50px);
            transform: translate(-50px, 50px);
    --W:313;
    --H:320;
  }
  .policy .-sec02 .duck:after {
    --bW:327;
    --bT:-145;
    --bL:180;
    --imgURL: url("../img/about/policy02_duck-sb-sp.png");
    aspect-ratio: 654/218;
  }
  .policy .-sec03 {
    margin-bottom: 105.2631578947cqw;
    z-index: 30;
  }
  .policy .-sec03 h3 .-sp_tit01 {
    width: 51.1842105263cqw;
  }
  .policy .-sec03 h3 .-sp_tit02 {
    width: 51.1842105263cqw;
  }
  .policy .-sec03 .duck {
    left: -22.3684210526cqw;
    width: 56.7105263158cqw;
    bottom: -70.3947368421cqw;
    -webkit-transform: translate(-50px, 50px);
            transform: translate(-50px, 50px);
    --W:431;
    --H:343;
  }
  .policy .-sec03 .duck:after {
    --bW:327;
    --bT:-125;
    --bL:270;
    --imgURL: url("../img/about/policy03_duck-sb-sp.png");
    aspect-ratio: 654/218;
  }
  .policy .-sec03 .risu {
    left: 53.8157894737cqw;
    width: 46.5789473684cqw;
    bottom: -90.2631578947cqw;
    --W:354;
    --H:309;
    -webkit-transform: translate(50px, 50px);
            transform: translate(50px, 50px);
  }
  .policy .-sec03 .risu:after {
    --bW:309;
    --bT:-145;
    --bL:-112;
    --imgURL: url("../img/about/policy03_risu-sb-sp.png");
    aspect-ratio: 618/224;
  }
}