@charset "utf-8";
/* ==========================================
   index page styles
   ========================================== */
@layer base {
body { margin: 0; background: #fff; -webkit-font-smoothing: antialiased; }
  a { color: inherit; text-decoration: none; }
  a { transition: transform .28s cubic-bezier(.34,1.3,.64,1), box-shadow .28s ease, background .28s ease, opacity .2s ease; }
  a:hover { opacity: .78; }
  a[style*="border-radius: 999px"]:hover, a[style*="border-radius: 10px"]:hover, a[style*="border: 1px solid #fff"]:hover { opacity: 1; transform: translateY(-4px); box-shadow: 0 10px 24px rgba(66,178,145,.26); }
  span[style*="cursor: pointer"] { transition: transform .28s cubic-bezier(.34,1.3,.64,1), box-shadow .28s ease, background .2s ease, color .2s ease, border-color .2s ease; }
  span[style*="cursor: pointer"]:hover { transform: translateY(-4px); box-shadow: 0 10px 24px rgba(66,178,145,.26); }
  span[style*="border-radius: 999px"] { transition: transform .3s cubic-bezier(.34,1.3,.64,1), box-shadow .3s ease; }
  @keyframes insL { from { transform: translateX(0) } to { transform: translateX(-1728px) } }
  @keyframes insR { from { transform: translateX(-1728px) } to { transform: translateX(0) } }
  span[style*="icons/i58"], span[style*="icons/i59"] { transition: transform .3s cubic-bezier(.34,1.3,.64,1), filter .3s ease; }
  a:hover span[style*="icons/i58"], a:hover span[style*="icons/i59"] { transform: translateY(-4px); filter: drop-shadow(0 7px 10px rgba(66,178,145,.35)); }
  a:hover span[style*="border: 1px solid #cfe3d9"] { transform: translateY(-4px); box-shadow: 0 8px 18px rgba(66,178,145,.28); }
  a:hover span[style*="rgba(255,255,255,.8)"] { transform: translateY(-4px); box-shadow: 0 8px 18px rgba(0,0,0,.18); }
  a:hover span[style*="letter-spacing: .1em"] { text-decoration: underline; text-underline-offset: 7px; text-decoration-thickness: 1px; }
.om-sp { display: none; }
  .bleed { position: relative; }
  .bleed::before, .bleed::after { content: ""; position: absolute; top: 0; bottom: 0; width: 4000px; background: inherit; pointer-events: none; }
  .bleed::before { right: 100%; }
  .bleed::after { left: 100%; }
  @media (max-width: 1100px) {
    .om-pc { display: none !important; }
    .om-sp { display: block !important; }
  }
  @keyframes insL2 { from { transform: translateX(0) } to { transform: translateX(-50%) } }
  @keyframes insR2 { from { transform: translateX(-50%) } to { transform: translateX(0) } }
@keyframes rv-spin { to { transform: rotate(360deg) } }
  @keyframes rv-logo-in { from { opacity: 0 } to { opacity: 1 } }
  @media (max-width: 767px) {
    .rv-ld-ring { width: 104px !important; height: 104px !important; }
    .rv-ld-mark { width: 51px !important; }
  }
}

.c1 { font-family: "Noto Sans JP", sans-serif; color: rgb(51, 51, 51); background: rgb(255, 255, 255); }
.cz { background: rgb(238, 246, 241); height: 964px; position: relative; }
.c10 { position: absolute; left: 20px; top: 20px; width: 1400px; height: 824px; border-radius: 24px; overflow: hidden; }
.c11 { width: 100%; height: 100%; object-fit: cover; display: block; }
.c12 { position: absolute; right: 40px; top: 517px; font-family: heisei-maru-gothic-std, "Zen Maru Gothic", "Hiragino Maru Gothic ProN", sans-serif; text-align: right; color: rgb(255, 255, 255); font-size: 42px; -webkit-text-stroke: 1px currentcolor; paint-order: stroke; line-height: 76px; letter-spacing: 0.08em; font-weight: 400; white-space: nowrap; text-shadow: rgba(0, 0, 0, 0.5) 0px 3px 20px, rgba(0, 0, 0, 0.35) 0px 1px 6px; }
.c13 { position: absolute; right: 68px; top: 674px; text-align: right; color: rgb(255, 255, 255); font-size: 16px; line-height: 30px; letter-spacing: 0.12em; font-weight: 500; white-space: nowrap; text-shadow: rgba(0, 0, 0, 0.85) 0px 1px 10px, rgba(0, 0, 0, 0.7) 0px 1px 3px; }
.c14 { position: absolute; width: 130px; height: 130px; display: block; overflow: visible; animation: 8s linear 0s infinite normal none running rv-spin; }
.c15 { font-family: Montserrat, sans-serif; font-weight: 700; font-size: 9px; letter-spacing: 3px; fill: rgb(66, 178, 145); }
.c16 { width: 64px; display: block; position: relative; animation: 0.6s ease 0s 1 normal both running rv-logo-in; }
.c19 { background: rgb(238, 246, 241); position: relative; height: 1221px; }
.c1a { position: absolute; left: 80px; top: 50px; width: 1280px; height: 870px; background: rgb(255, 255, 255); border-radius: 24px; }
.c1b { position: absolute; left: 0px; top: 0px; width: 640px; height: 500px; border-radius: 24px; overflow: hidden; }
.c1c { position: absolute; left: 1120px; top: 414px; width: 320px; height: 240px; border-radius: 24px; overflow: hidden; }
.c1d { position: absolute; left: 543px; top: 815px; width: 738px; height: 281px; border-radius: 24px; overflow: hidden; }
.c1e { position: absolute; left: 80px; top: 976px; width: 320px; height: 240px; border-radius: 24px; overflow: hidden; }
.c1f { position: absolute; left: 670px; top: 190px; font-family: "Noto Sans JP", sans-serif; font-size: 16px; line-height: 48px; letter-spacing: 0.06em; white-space: nowrap; color: rgb(51, 51, 51); }
.c1g { position: absolute; left: 670px; top: 334px; font-family: "Noto Sans JP", sans-serif; font-size: 16px; line-height: 48px; letter-spacing: 0.06em; white-space: nowrap; color: rgb(51, 51, 51); }
.c1h { position: absolute; left: 187px; top: 616px; width: 375px; display: block; }
.c1i { position: absolute; left: 660px; top: 642px; display: flex; align-items: center; gap: 39px; white-space: nowrap; }
.c1j { font-family: heisei-maru-gothic-std, "Zen Maru Gothic", "Hiragino Maru Gothic ProN", sans-serif; font-size: 16px; font-weight: 800; letter-spacing: 0.1em; color: rgb(66, 178, 145); }
.c1k { background: rgb(255, 255, 255); position: relative; height: 1158px; }
.c1l { position: absolute; left: 180px; top: 150px; display: flex; align-items: baseline; gap: 42px; }
.c1m { font-family: heisei-maru-gothic-std, "Zen Maru Gothic", "Hiragino Maru Gothic ProN", sans-serif; font-size: 42px; -webkit-text-stroke: 1px currentcolor; paint-order: stroke; font-weight: 400; letter-spacing: 0.04em; color: rgb(34, 34, 34); }
.c1n { font-family: Montserrat, sans-serif; font-weight: 700; font-size: 17px; letter-spacing: 0.16em; color: rgb(66, 178, 145); }
.c1o { position: absolute; left: 975px; top: 234px; display: flex; align-items: center; gap: 26px; white-space: nowrap; }
.c1q { position: absolute; left: 180px; top: 338px; display: flex; gap: 14px; }
.c1r { background: rgb(66, 178, 145); color: rgb(255, 255, 255); border: 1px solid rgb(66, 178, 145); font-family: heisei-maru-gothic-std, "Zen Maru Gothic", "Hiragino Maru Gothic ProN", sans-serif; font-size: 17px; letter-spacing: 0.2em; border-radius: 10px; height: 52px; width: 186px; display: flex; align-items: center; justify-content: center; box-sizing: border-box; cursor: pointer; transition: background 0.2s, color 0.2s, border-color 0.2s; }
.c1s { background: transparent; color: rgb(51, 51, 51); border: 1px solid rgb(221, 221, 221); font-family: heisei-maru-gothic-std, "Zen Maru Gothic", "Hiragino Maru Gothic ProN", sans-serif; font-size: 17px; letter-spacing: 0.2em; border-radius: 10px; height: 52px; width: 186px; display: flex; align-items: center; justify-content: center; box-sizing: border-box; cursor: pointer; transition: background 0.2s, color 0.2s, border-color 0.2s; }
.c1t { position: absolute; left: 180px; top: 422px; width: 1080px; border-top: 1px solid rgb(230, 230, 230); }
.c1u { display: grid; grid-template-columns: 150px 180px 1fr 40px; align-items: center; height: 104px; border-bottom: 1px solid rgb(230, 230, 230); font-size: 16px; }
.c1v { color: rgb(154, 154, 154); letter-spacing: 0.06em; font-size: 16px; }
.c1w { justify-self: start; border: 1px solid rgb(66, 178, 145); border-radius: 999px; font-size: 16px; padding: 6px 0px; width: 162px; text-align: center; background: rgb(66, 178, 145); color: rgb(255, 255, 255); }
.c1x { letter-spacing: 0.04em; }
.c1y { justify-self: end; width: 8px; height: 8px; border-top: 1.5px solid rgb(66, 178, 145); border-right: 1.5px solid rgb(66, 178, 145); transform: rotate(45deg); }
.c1z { justify-self: start; border: 1px solid rgb(66, 178, 145); border-radius: 999px; font-size: 16px; padding: 6px 0px; width: 162px; text-align: center; background: transparent; color: rgb(66, 178, 145); }
.c20 { background: rgb(238, 246, 241); position: relative; height: 1257px; }
.c21 { position: absolute; left: 89px; top: 115px; display: flex; align-items: center; gap: 14px; }
.c22 { width: 10px; height: 10px; border-radius: 999px; background: rgb(66, 178, 145); display: block; }
.c23 { font-family: Montserrat, sans-serif; font-style: italic; font-weight: 700; font-size: 20px; letter-spacing: 0.04em; color: rgb(66, 178, 145); }
.c24 { position: absolute; left: 185px; top: 172px; font-family: heisei-maru-gothic-std, "Zen Maru Gothic", "Hiragino Maru Gothic ProN", sans-serif; font-size: 42px; -webkit-text-stroke: 1px currentcolor; paint-order: stroke; font-weight: 400; letter-spacing: 0.06em; color: rgb(34, 34, 34); white-space: nowrap; }
.c25 { position: absolute; font-family: heisei-maru-gothic-std, "Zen Maru Gothic", "Hiragino Maru Gothic ProN", sans-serif; left: 179px; top: 290px; font-size: 16px; line-height: 48px; letter-spacing: 0.18em; font-weight: 400; }
.c26 { position: absolute; top: 470px; left: 180px; width: 320px; height: 700px; }
.c27 { position: absolute; left: 0px; top: 268px; font-family: heisei-maru-gothic-std, "Zen Maru Gothic", "Hiragino Maru Gothic ProN", sans-serif; font-size: 21px; font-weight: 500; letter-spacing: 0.04em; white-space: nowrap; }
.c28 { position: absolute; left: 0px; top: 309px; width: 320px; height: 2px; background: rgb(66, 178, 145); }
.c29 { position: absolute; left: 0px; top: 343px; width: 320px; display: flex; flex-direction: column; gap: 0px; font-size: 16px; line-height: 32px; letter-spacing: 0.04em; color: rgb(68, 68, 68); line-break: strict; word-break: normal; }
.c2a { position: absolute; left: 130px; top: 580px; display: flex; align-items: center; gap: 30px; white-space: nowrap; }
.c2c { position: absolute; top: 470px; left: 560px; width: 320px; height: 700px; }
.c2d { position: absolute; top: 470px; left: 940px; width: 320px; height: 700px; }
.c2e { background: rgb(255, 255, 255); position: relative; height: 1223px; }
.c2f { position: absolute; left: 800px; top: 283px; width: 640px; height: 500px; border-radius: 24px; overflow: hidden; }
.c2g { position: absolute; left: 80px; top: 178px; font-family: heisei-maru-gothic-std, "Zen Maru Gothic", "Hiragino Maru Gothic ProN", sans-serif; font-size: 42px; -webkit-text-stroke: 1px currentcolor; paint-order: stroke; font-weight: 400; letter-spacing: 0.06em; color: rgb(34, 34, 34); white-space: nowrap; }
.c2h { position: absolute; left: 80px; top: 265px; font-family: Montserrat, sans-serif; font-style: italic; font-weight: 700; font-size: 17px; letter-spacing: 0.04em; color: rgb(66, 178, 145); }
.c2i { position: absolute; font-family: heisei-maru-gothic-std, "Zen Maru Gothic", "Hiragino Maru Gothic ProN", sans-serif; left: 80px; top: 400px; font-size: 23px; font-weight: 400; letter-spacing: 0.1em; }
.c2j { position: absolute; left: 80px; top: 492px; width: 660px; font-size: 16px; line-height: 36px; letter-spacing: 0.06em; color: rgb(68, 68, 68); }
.c2k { margin-top: 39px; margin-left: 340px; display: inline-flex; align-items: center; gap: 30px; white-space: nowrap; }
.c2l { position: absolute; left: 0px; top: 1022px; width: 1440px; overflow: hidden; }
.c2m { display: flex; width: max-content; animation: 34s linear 0s infinite normal none running insL; }
.c2n { width: 288px; height: 86px; display: flex; align-items: center; justify-content: center; flex: 0 0 auto; }
.c2o { position: absolute; left: 0px; top: 1120px; width: 1440px; overflow: hidden; }
.c2p { display: flex; width: max-content; animation: 34s linear 0s infinite normal none running insR; }
.c2q { height: 182px; background: rgb(255, 255, 255); }
.c2r { background: rgb(66, 178, 145); position: relative; height: 805px; }
.c2s { position: absolute; left: 720px; top: 153px; width: 640px; height: 499px; border-radius: 24px; overflow: hidden; }
.c2t { position: absolute; left: 177px; top: 131px; display: flex; align-items: center; gap: 34px; }
.c2u { font-family: heisei-maru-gothic-std, "Zen Maru Gothic", "Hiragino Maru Gothic ProN", sans-serif; font-size: 42px; -webkit-text-stroke: 1px currentcolor; paint-order: stroke; font-weight: 400; letter-spacing: 0.06em; color: rgb(255, 255, 255); white-space: nowrap; }
.c2v { width: 1px; height: 58px; background: rgba(255, 255, 255, 0.7); display: block; }
.c2w { font-family: Montserrat, sans-serif; font-weight: 700; font-size: 17px; letter-spacing: 0.16em; color: rgb(255, 255, 255); }
.c2x { position: absolute; left: 177px; font-family: heisei-maru-gothic-std, "Zen Maru Gothic", "Hiragino Maru Gothic ProN", sans-serif; top: 308px; color: rgb(255, 255, 255); font-size: 28px; font-weight: 400; line-height: 54px; letter-spacing: 0.1em; }
.c2y { position: absolute; left: 177px; top: 471px; color: rgb(255, 255, 255); font-size: 16px; line-height: 36px; letter-spacing: 0.06em; }
.c2z { position: absolute; left: 179px; top: 618px; display: flex; align-items: center; gap: 30px; color: rgb(255, 255, 255); white-space: nowrap; }
.c30 { font-family: heisei-maru-gothic-std, "Zen Maru Gothic", "Hiragino Maru Gothic ProN", sans-serif; font-size: 16px; font-weight: 800; letter-spacing: 0.14em; }
.c31 { height: 170px; background: rgb(255, 255, 255); }
.c32 { display: grid; grid-template-columns: repeat(3, minmax(0px, 1fr)); height: 322px; width: max(1440px, 100vw); margin-left: min(0px, 720px - 50vw); }
.c33 { width: 100%; height: 100%; object-fit: cover; display: block; border-radius: 0px; }
.c34 { height: 190px; background: rgb(238, 246, 241); }
.c4a { width: 100%; overflow: hidden; background: rgb(243, 248, 243); }
.c4b { position: relative; height: calc(166.667vw); }
.c4c { position: absolute; left: 15px; top: 75px; width: calc(100% - 30px); aspect-ratio: 340 / 475; border-radius: calc(4.44444vw); overflow: hidden; }
.c4d { position: absolute; left: 0px; bottom: 0px; width: 100%; height: 112%; object-fit: cover; object-position: 28% 100%; transform-origin: 28% 100%; display: block; }
.c4e { position: absolute; right: calc(3.88889vw); top: calc(86.3889vw); text-align: right; color: rgb(255, 255, 255); font-family: heisei-maru-gothic-std, "Zen Maru Gothic", "Hiragino Maru Gothic ProN", sans-serif; font-size: calc(6.11111vw); line-height: calc(11.3889vw); letter-spacing: 0.06em; font-weight: 400; white-space: nowrap; -webkit-text-stroke: 1px currentcolor; paint-order: stroke; text-shadow: rgba(0, 0, 0, 0.55) 0px 2px 14px, rgba(0, 0, 0, 0.4) 0px 1px 5px; }
.c4f { position: absolute; right: calc(3.88889vw); top: calc(113.333vw); text-align: right; color: rgb(255, 255, 255); font-size: calc(2.22222vw); line-height: calc(3.88889vw); letter-spacing: 0.1em; font-weight: 500; white-space: nowrap; text-shadow: rgba(0, 0, 0, 0.55) 0px 1px 8px; }
.c4g { position: absolute; left: 15px; top: 20px; display: block; z-index: 30; }
.c4h { position: relative; height: calc(240.278vw); }
.c4i { position: absolute; left: 15px; top: calc(13.6111vw); width: calc(100% - 30px); height: calc(200.278vw); background: rgb(255, 255, 255); border-radius: calc(4.44444vw); }
.c4j { position: absolute; left: calc(-6.66667vw); top: calc(0vw); width: calc(50vw); height: calc(38.8889vw); border-radius: calc(4.44444vw); overflow: hidden; }
.c4k { position: absolute; left: calc(81.6667vw); top: calc(27.7778vw); width: calc(25vw); height: calc(33.3333vw); border-radius: calc(4.44444vw); overflow: hidden; }
.c4l { position: absolute; left: 0px; right: 0px; top: calc(72.7778vw); text-align: center; font-family: "Noto Sans JP", sans-serif; font-size: calc(3.33333vw); line-height: calc(7.5vw); color: rgb(51, 51, 51); letter-spacing: 0.1em; white-space: nowrap; }
.c4m { height: calc(7.5vw); }
.c4n { position: absolute; left: calc(24.8611vw); top: calc(52.2222vw); width: calc(44.4444vw); display: block; }
.c4o { position: absolute; left: 0px; right: 0px; top: calc(158.889vw); display: flex; align-items: center; justify-content: center; gap: calc(3.33333vw); white-space: nowrap; }
.c4q { position: absolute; left: calc(52.2222vw); top: calc(180.833vw); width: calc(76.6667vw); height: calc(29.1667vw); border-radius: calc(4.44444vw); overflow: hidden; }
.c4r { position: absolute; left: calc(-17.7778vw); top: calc(193.056vw); width: calc(50vw); height: calc(33.3333vw); border-radius: calc(4.44444vw); overflow: hidden; }
.c4s { position: relative; background: rgb(255, 255, 255); padding: calc(13.8889vw) 15px 0px; height: calc(217.222vw); box-sizing: border-box; }
.c4t { display: flex; align-items: baseline; gap: calc(3.33333vw); }
.c4u { font-family: heisei-maru-gothic-std, "Zen Maru Gothic", "Hiragino Maru Gothic ProN", sans-serif; font-size: calc(6.11111vw); line-height: 1.2; font-weight: 400; letter-spacing: 0.06em; color: rgb(34, 34, 34); -webkit-text-stroke: 0.5px currentcolor; paint-order: stroke; white-space: nowrap; }
.c4v { font-family: Montserrat, sans-serif; font-weight: 700; font-size: calc(2.5vw); letter-spacing: 0.1em; color: rgb(66, 178, 145); }
.c4w { margin-top: calc(8.33333vw); display: flex; gap: calc(4.16667vw); }
.c4x { background: rgb(66, 178, 145); color: rgb(255, 255, 255); border: 1px solid rgb(66, 178, 145); font-family: heisei-maru-gothic-std, "Zen Maru Gothic", "Hiragino Maru Gothic ProN", sans-serif; font-size: calc(3.33333vw); letter-spacing: 0.04em; -webkit-text-stroke: 0.2px currentcolor; paint-order: stroke; border-radius: calc(1.11111vw); flex: 1 1 0px; min-width: 0px; padding: calc(1.38889vw) 0px; line-height: 1.4; display: flex; align-items: center; justify-content: center; box-sizing: border-box; cursor: pointer; }
.c4y { background: transparent; color: rgb(51, 51, 51); border: 1px solid rgb(221, 221, 221); font-family: heisei-maru-gothic-std, "Zen Maru Gothic", "Hiragino Maru Gothic ProN", sans-serif; font-size: calc(3.33333vw); letter-spacing: 0.04em; -webkit-text-stroke: 0.2px currentcolor; paint-order: stroke; border-radius: calc(1.11111vw); flex: 1 1 0px; min-width: 0px; padding: calc(1.38889vw) 0px; line-height: 1.4; display: flex; align-items: center; justify-content: center; box-sizing: border-box; cursor: pointer; }
.c53 { border: 1px solid rgb(66, 178, 145); border-radius: 999px; font-size: calc(2.77778vw); height: calc(5.55556vw); width: calc(25vw); display: flex; align-items: center; justify-content: center; box-sizing: border-box; background: rgb(66, 178, 145); color: rgb(255, 255, 255); flex: 0 0 auto; }
.c56 { border: 1px solid rgb(66, 178, 145); border-radius: 999px; font-size: calc(2.77778vw); height: calc(5.55556vw); width: calc(25vw); display: flex; align-items: center; justify-content: center; box-sizing: border-box; background: transparent; color: rgb(66, 178, 145); flex: 0 0 auto; }
.c57 { position: absolute; left: 0px; right: 0px; top: calc(192.222vw); display: flex; align-items: center; justify-content: center; gap: calc(3.33333vw); white-space: nowrap; }
.c58 { position: relative; box-sizing: border-box; padding: calc(13.8889vw) 15px; }
.c59 { position: absolute; left: 15px; top: calc(14.7222vw); width: calc(2.77778vw); height: calc(2.77778vw); border-radius: 999px; background: rgb(66, 178, 145); }
.c5a { margin-left: calc(5vw); }
.c5b { font-family: Montserrat, sans-serif; font-weight: 700; font-size: calc(3.61111vw); letter-spacing: 0.04em; color: rgb(66, 178, 145); font-style: italic; display: block; line-height: 1.2; }
.c5d { font-family: heisei-maru-gothic-std, "Zen Maru Gothic", "Hiragino Maru Gothic ProN", sans-serif; font-size: calc(6.11111vw); line-height: 1.2; font-weight: 400; letter-spacing: 0.06em; color: rgb(34, 34, 34); white-space: nowrap; -webkit-text-stroke: 0.5px currentcolor; paint-order: stroke; }
.c5e { margin-top: calc(2.77778vw); font-family: "Noto Sans JP", sans-serif; font-size: calc(3.33333vw); line-height: calc(7.5vw); color: rgb(51, 51, 51); letter-spacing: 0.1em; white-space: nowrap; }
.c5f { white-space: normal; }
.c5g { margin-top: calc(8.33333vw); display: flex; flex-direction: column; gap: calc(10vw); }
.c5h { margin-top: calc(3.88889vw); font-family: "Noto Sans JP", sans-serif; font-size: calc(5vw); line-height: 1.2; font-weight: 500; letter-spacing: 0.02em; color: rgb(34, 34, 34); }
.c5i { margin-top: calc(2.22222vw); height: 2px; background: rgb(108, 196, 168); }
.c5j { margin-top: calc(1.94444vw); font-family: "Noto Sans JP", sans-serif; font-size: calc(3.33333vw); line-height: calc(7.5vw); color: rgb(51, 51, 51); letter-spacing: 0.04em; white-space: normal; }
.c5k { margin-top: calc(2.22222vw); display: flex; align-items: center; gap: calc(3.33333vw); white-space: nowrap; justify-content: flex-end; }
.c5l { position: relative; background: rgb(255, 255, 255); height: calc(198.056vw); padding: calc(13.8889vw) 15px 0px; box-sizing: border-box; }
.c5m { margin-top: calc(4.16667vw); font-family: heisei-maru-gothic-std, "Zen Maru Gothic", "Hiragino Maru Gothic ProN", sans-serif; font-size: calc(6.11111vw); line-height: 1.2; font-weight: 400; letter-spacing: 0.06em; color: rgb(34, 34, 34); white-space: nowrap; -webkit-text-stroke: 0.5px currentcolor; paint-order: stroke; }
.c5n { margin-top: calc(7.77778vw); font-family: "Noto Sans JP", sans-serif; font-size: calc(3.88889vw); line-height: 1.2; font-weight: 700; letter-spacing: 0.06em; color: rgb(34, 34, 34); }
.c5o { margin-top: calc(2.77778vw); font-family: "Noto Sans JP", sans-serif; font-size: calc(3.33333vw); line-height: calc(7.5vw); color: rgb(51, 51, 51); letter-spacing: 0.07em; }
.c5p { position: absolute; left: 15px; top: calc(95.5556vw); width: calc(100% - 30px); height: calc(55.5556vw); border-radius: calc(4.44444vw); overflow: hidden; }
.c5q { position: absolute; left: 0px; right: 0px; top: calc(157.5vw); overflow: hidden; }
.c5r { display: flex; width: max-content; animation: 30s linear 0s infinite normal none running insL2; }
.c5s { width: calc(31.9444vw); height: calc(11.9444vw); display: flex; align-items: center; justify-content: center; flex: 0 0 auto; }
.c5t { position: absolute; left: 0px; right: 0px; top: calc(172.222vw); overflow: hidden; }
.c5u { display: flex; width: max-content; animation: 30s linear 0s infinite normal none running insR2; }
.c5v { position: relative; background: rgb(66, 178, 145); height: calc(157.778vw); padding: calc(13.8889vw) 15px 0px; box-sizing: border-box; }
.c5x { font-family: heisei-maru-gothic-std, "Zen Maru Gothic", "Hiragino Maru Gothic ProN", sans-serif; font-size: calc(6.11111vw); line-height: 1.2; font-weight: 400; letter-spacing: 0.06em; color: rgb(255, 255, 255); white-space: nowrap; -webkit-text-stroke: 0.5px currentcolor; paint-order: stroke; }
.c5y { width: 1px; height: calc(8.33333vw); background: rgba(255, 255, 255, 0.8); display: block; flex: 0 0 auto; }
.c5z { font-family: Montserrat, sans-serif; font-weight: 700; font-size: calc(2.5vw); letter-spacing: 0.1em; color: rgb(255, 255, 255); margin-left: calc(1.11111vw); }
.c60 { margin-top: calc(7.77778vw); font-family: "Noto Sans JP", sans-serif; font-size: calc(3.88889vw); line-height: 1.4; font-weight: 700; letter-spacing: 0.06em; color: rgb(255, 255, 255); }
.c61 { margin-top: calc(2.77778vw); margin-left: calc(0.277778vw); font-family: "Noto Sans JP", sans-serif; font-size: calc(3.33333vw); line-height: calc(7.5vw); color: rgb(255, 255, 255); letter-spacing: 0.07em; }
.c62 { position: absolute; right: 15px; top: calc(71.6667vw); display: flex; align-items: center; gap: calc(3.33333vw); white-space: nowrap; }
.c63 { font-family: heisei-maru-gothic-std, "Zen Maru Gothic", "Hiragino Maru Gothic ProN", sans-serif; font-size: calc(3.61111vw); font-weight: 800; letter-spacing: 0.1em; color: rgb(255, 255, 255); }
.c64 { position: absolute; left: 15px; top: calc(88.3333vw); width: calc(100% - 30px); height: calc(55.5556vw); border-radius: calc(4.44444vw); overflow: hidden; }
.c65 { display: grid; grid-template-columns: 1fr 1fr 1fr; height: calc(27.7778vw); }
/* 先方修正対応（コンセプト文の行数増加） */
.c4h { height: calc(285.278vw); }
.c4i { height: calc(245.278vw); }
.c4o { top: calc(203.889vw); }
.c4q { top: calc(225.833vw); }
.c4r { top: calc(238.056vw); }
/* PC：本文が長くなったぶん、右の写真を右へ（右端はデザインどおり画面端に揃える） */
.c1c { left: 1216px; width: 224px; }
