@charset "UTF-8";
:root {
  /*===================== Color =====================*/
  --color-main: #1F1F1F;
  --color-brand-site-base: #161616;
  --color-safety: #FF665E;
  --color-local: #558EDB;
  --color-fun: #FFBC07;
  --color-future: #33EE87;
  --color-rewarding: #A97FFB;
  --color-customer: #FFACD6;
  --color-cs: #FFACD6;
  /*===================== Font =====================*/
  --font-montserrat: "Montserrat", sans-serif;
  --font-unbounded: "Unbounded", sans-serif;
  --font-aboreto: "Aboreto", system-ui;
  /*===================== イージング =====================*/
  --ease-bounce-s:linear(0, 0.271 8.8%, 0.542 19.9%, 0.837 34.2%, 1 44.7%, 0.943 51.1%, 0.925 57.5%, 0.937 63.1%, 1 77.4%, 0.991 84.2%, 1);
  --ease-bounce:linear(0, 0.247 13.2%, 0.415 20.5%, 0.624 27.4%, 1 37.8%, 0.794 44.9%, 0.747 47.9%, 0.731 50.8%, 0.744 53.5%, 0.785 56.4%, 0.999 65.5%, 0.927 69.6%, 0.904 73.4%, 0.921 77%, 1 84.5%, 0.981 89.4%, 1);
}

/*======================= SP-VW =======================*/
/*======================= PC-VW =======================*/
/*------ 使用例 ------
.text {
	font-size: spvw(16);
}
*/
/*================================= アニメーション =================================*/
@keyframes fade {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@keyframes fade-out {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
@keyframes big {
  0% {
    transform: scale(0);
  }
  100% {
    transform: scale(1);
  }
}
@keyframes rotate360-right {
  0% {
    transform: rotate(0);
  }
  100% {
    transform: rotate(360deg);
  }
}
@keyframes rotate360-left {
  0% {
    transform: rotate(0);
  }
  100% {
    transform: rotate(-360deg);
  }
}
@keyframes fuwafuwa-up {
  0% {
    transform: translate(0, 0);
  }
  50% {
    transform: translate(0, -70%);
  }
  100% {
    transform: translate(0, 0);
  }
}
@keyframes fuwafuwa-down {
  0% {
    transform: translate(0, 0);
  }
  50% {
    transform: translate(0, 70%);
  }
  100% {
    transform: translate(0, 0);
  }
}
header {
  animation: header 0.8s 6s ease forwards;
  transform: translate(0, -200%);
}

@keyframes header {
  0% {
    transform: translate(0, -200%);
  }
  100% {
    transform: translate(0);
  }
}
div.op-area {
  position: fixed;
  background-color: #fff;
  width: 100vw;
  height: 100dvh;
  top: 0;
  left: 0;
  z-index: 10;
  animation: op-area 0.6s 5s linear forwards;
  pointer-events: none;
}
@keyframes op-area {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
div.op-area div.op-circle {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  animation: op-circle 3s 0.2s cubic-bezier(0.42, 0, 0.36, 0.98) forwards, op-circle02 1s 3.9s cubic-bezier(0.42, 0, 0.19, 0.98) forwards;
}
div.op-area div.op-circle div.op-circle-inner {
  position: relative;
  width: 50vw;
  height: 50vw;
  animation: op-circle-rotate 3.4s 0.4s cubic-bezier(0.42, 0, 0.36, 0.98) forwards, op-circle-rotate02 3.4s 3.9s ease forwards;
}
@media screen and (min-width: 768px) {
  div.op-area div.op-circle div.op-circle-inner {
    width: 30vw;
    height: 30vw;
  }
}
@keyframes op-circle {
  0% {
    transform: translate(-50%, -50%) scale(3);
  }
  100% {
    transform: translate(-50%, -50%) scale(1);
  }
}
@keyframes op-circle02 {
  0% {
    transform: translate(-50%, -50%) scale(1);
  }
  100% {
    transform: translate(-50%, -50%) scale(0.4);
  }
}
@keyframes circl-fade {
  0% {
    opacity: 0;
    transform: scale(0);
  }
  100% {
    opacity: 1;
    transform: scale(1);
  }
}
@keyframes circl-icon-scale {
  0% {
    transform: scale(1);
  }
  100% {
    transform: scale(0);
  }
}
@keyframes op-circle-rotate {
  0% {
    transform: rotate(0);
  }
  100% {
    transform: rotate(720deg);
  }
}
@keyframes op-circle-rotate02 {
  0% {
    transform: rotate(0);
  }
  100% {
    transform: rotate(720deg);
  }
}
div.op-area div.op-circle .icon {
  position: absolute;
  width: 20%;
  opacity: 0;
}
div.op-area div.op-circle .icon.icon01 {
  top: 1%;
  left: 14%;
  animation: circl-fade 2s 0.6s ease forwards, circl-icon-scale 0.8s 4s ease forwards;
}
div.op-area div.op-circle .icon.icon02 {
  top: 37%;
  left: -10%;
  animation: circl-fade 2s 0.7s ease forwards, circl-icon-scale 0.8s 4.05s ease forwards;
}
div.op-area div.op-circle .icon.icon03 {
  top: 77%;
  left: 14%;
  animation: circl-fade 2s 1s ease forwards, circl-icon-scale 0.8s 4.1s ease forwards;
}
div.op-area div.op-circle .icon.icon04 {
  top: 77%;
  right: 14%;
  animation: circl-fade 2s 1.3s ease forwards, circl-icon-scale 1s 4.15s ease forwards;
}
div.op-area div.op-circle .icon.icon05 {
  top: 37%;
  right: -10%;
  animation: circl-fade 2s 1.6s ease forwards, circl-icon-scale 1s 4.2s ease forwards;
}
div.op-area div.op-circle .icon.icon06 {
  top: 1%;
  right: 14%;
  animation: circl-fade 2s 1.9s ease forwards, circl-icon-scale 1s 4.2s ease forwards;
}

/* =========================================================
    2回目以降：オープニング非表示
========================================================= */
body.is-opening-animation-skip .op-area {
  display: none !important;
}

body.is-hero-animation-skip #l-header {
  transform: translate(0);
  animation: none !important;
}
body.is-hero-animation-skip .hero-area .hero-img {
  opacity: 1 !important;
  transform: translate(0) scale(1) rotate(0);
}
body.is-hero-animation-skip .hero-area .hero-img01,
body.is-hero-animation-skip .hero-area .hero-img02,
body.is-hero-animation-skip .hero-area .hero-img03,
body.is-hero-animation-skip .hero-area .hero-img04,
body.is-hero-animation-skip .hero-area .hero-img07,
body.is-hero-animation-skip .hero-area .hero-img08,
body.is-hero-animation-skip .hero-area .hero-img09,
body.is-hero-animation-skip .hero-area .hero-img10,
body.is-hero-animation-skip .hero-area .hero-img11,
body.is-hero-animation-skip .hero-area .hero-img12 {
  animation: none !important;
}
body.is-hero-animation-skip .hero-area .hero-img-area h1 span {
  animation: none !important;
  opacity: 1 !important;
  transform: translate(0) !important;
}
body.is-hero-animation-skip .hero-area .hero-img-area .kumaru-img,
body.is-hero-animation-skip .hero-area .hero-img-area .chumaru-img {
  animation: none !important;
  opacity: 1 !important;
  transform: translate(0) scale(1) !important;
}

main {
  overflow: hidden;
}

div.hero-area {
  position: relative;
}
div.hero-area div.hero-img {
  position: absolute;
  z-index: 2;
  width: 0;
  opacity: 0;
}
div.hero-area div.hero-img.hero-img01 {
  width: calc(51 / 375 * 100vw);
  top: calc(60 / 375 * 100vw);
  left: calc(17 / 375 * 100vw);
  animation: hero-img01 1s 5s cubic-bezier(0.26, 0.04, 0.18, 0.98) forwards;
}
@media screen and (min-width: 768px) {
  div.hero-area div.hero-img.hero-img01 {
    top: calc(113 / 1366 * 100vw);
    left: calc(175 / 1366 * 100vw);
    width: calc(83 / 1366 * 100vw);
  }
}
@keyframes hero-img01 {
  0% {
    transform: translate(400%, 300%);
    opacity: 0;
  }
  100% {
    transform: translate(0);
    opacity: 1;
  }
}
div.hero-area div.hero-img.hero-img02 {
  width: calc(51 / 375 * 100vw);
  top: calc(150 / 375 * 100vw);
  left: calc(-17 / 375 * 100vw);
  animation: hero-img02 1.4s 5s cubic-bezier(0.26, 0.04, 0.18, 0.98) forwards;
}
@media screen and (min-width: 768px) {
  div.hero-area div.hero-img.hero-img02 {
    top: calc(357 / 1366 * 100vw);
    left: calc(63 / 1366 * 100vw);
    width: calc(83 / 1366 * 100vw);
  }
}
@keyframes hero-img02 {
  0% {
    transform: translate(400%, 50%);
    opacity: 0;
  }
  10% {
    opacity: 1;
  }
  100% {
    transform: translate(0);
    opacity: 1;
  }
}
div.hero-area div.hero-img.hero-img03 {
  width: calc(30 / 375 * 100vw);
  top: calc(415 / 375 * 100vw);
  left: calc(55 / 375 * 100vw);
  animation: hero-img03 1s 5s cubic-bezier(0.26, 0.04, 0.18, 0.98) forwards;
}
@media screen and (min-width: 768px) {
  div.hero-area div.hero-img.hero-img03 {
    top: calc(540 / 1366 * 100vw);
    left: calc(180 / 1366 * 100vw);
    width: calc(121 / 1366 * 100vw);
  }
}
@keyframes hero-img03 {
  0% {
    transform: translate(200%, 0%);
    opacity: 0;
  }
  10% {
    opacity: 1;
  }
  100% {
    transform: translate(0);
    opacity: 1;
  }
}
div.hero-area div.hero-img.hero-img04 {
  width: calc(30 / 375 * 100vw);
  top: calc(460 / 375 * 100vw);
  left: calc(20 / 375 * 100vw);
  animation: hero-img04 1.2s 5s cubic-bezier(0.26, 0.04, 0.18, 0.98) forwards;
}
@media screen and (min-width: 768px) {
  div.hero-area div.hero-img.hero-img04 {
    top: calc(650 / 1366 * 100vw);
    left: calc(66 / 1366 * 100vw);
    width: calc(74 / 1366 * 100vw);
  }
}
@keyframes hero-img04 {
  0% {
    transform: translate(300%, 0%);
    opacity: 0;
  }
  10% {
    opacity: 1;
  }
  100% {
    transform: translate(0);
    opacity: 1;
  }
}
div.hero-area div.hero-img.hero-img05 {
  width: calc(69 / 375 * 100vw);
  top: calc(490 / 375 * 100vw);
  left: calc(-10 / 375 * 100vw);
  opacity: 1;
  animation: fuwafuwa-down 20s ease infinite;
}
@media screen and (min-width: 768px) {
  div.hero-area div.hero-img.hero-img05 {
    top: calc(950 / 1366 * 100vw);
    left: calc(55 / 1366 * 100vw);
    width: calc(92 / 1366 * 100vw);
  }
}
div.hero-area div.hero-img.hero-img06 {
  width: calc(60 / 375 * 100vw);
  top: calc(1030 / 375 * 100vw);
  left: calc(-10 / 375 * 100vw);
  opacity: 1;
  animation: rotate360-right 10s linear infinite;
}
@media screen and (min-width: 768px) {
  div.hero-area div.hero-img.hero-img06 {
    top: calc(1130 / 1366 * 100vw);
    left: calc(55 / 1366 * 100vw);
    width: calc(83 / 1366 * 100vw);
  }
}
div.hero-area div.hero-img.hero-img07 {
  width: calc(40 / 375 * 100vw);
  top: calc(120 / 375 * 100vw);
  right: calc(30 / 375 * 100vw);
  animation: hero-img07 1s 5s cubic-bezier(0.26, 0.04, 0.18, 0.98) forwards;
}
@media screen and (min-width: 768px) {
  div.hero-area div.hero-img.hero-img07 {
    top: calc(156 / 1366 * 100vw);
    right: calc(55 / 1366 * 100vw);
    width: calc(53 / 1366 * 100vw);
  }
}
@keyframes hero-img07 {
  0% {
    transform: translate(-600%, 500%);
    opacity: 0;
  }
  10% {
    opacity: 1;
  }
  100% {
    transform: translate(0);
    opacity: 1;
  }
}
div.hero-area div.hero-img.hero-img08 {
  width: calc(90 / 375 * 100vw);
  top: calc(180 / 375 * 100vw);
  right: calc(-10 / 375 * 100vw);
  animation: hero-img08 1.2s 5s cubic-bezier(0.26, 0.04, 0.18, 0.98) forwards;
}
@media screen and (min-width: 768px) {
  div.hero-area div.hero-img.hero-img08 {
    top: calc(266 / 1366 * 100vw);
    right: calc(145 / 1366 * 100vw);
    width: calc(156 / 1366 * 100vw);
  }
}
@keyframes hero-img08 {
  0% {
    transform: translate(-100%, 100%);
    opacity: 0;
  }
  10% {
    opacity: 1;
  }
  100% {
    transform: translate(0);
    opacity: 1;
  }
}
div.hero-area div.hero-img.hero-img09 {
  width: calc(28 / 375 * 100vw);
  top: calc(270 / 375 * 100vw);
  right: calc(20 / 375 * 100vw);
  animation: hero-img09 1s 5s cubic-bezier(0.26, 0.04, 0.18, 0.98) forwards;
}
@media screen and (min-width: 768px) {
  div.hero-area div.hero-img.hero-img09 {
    top: calc(490 / 1366 * 100vw);
    right: calc(34 / 1366 * 100vw);
    width: calc(61 / 1366 * 100vw);
  }
}
@keyframes hero-img09 {
  0% {
    transform: translate(-200%, 200%);
    opacity: 0;
  }
  10% {
    opacity: 1;
  }
  100% {
    transform: translate(0);
    opacity: 1;
  }
}
div.hero-area div.hero-img.hero-img10 {
  width: calc(28 / 375 * 100vw);
  top: calc(430 / 375 * 100vw);
  right: calc(48 / 375 * 100vw);
  animation: hero-img10 1.4s 5s cubic-bezier(0.26, 0.04, 0.18, 0.98) forwards;
}
@media screen and (min-width: 768px) {
  div.hero-area div.hero-img.hero-img10 {
    top: calc(560 / 1366 * 100vw);
    right: calc(188 / 1366 * 100vw);
    width: calc(92 / 1366 * 100vw);
  }
}
@keyframes hero-img10 {
  0% {
    transform: translate(-300%, 100%);
    opacity: 0;
  }
  10% {
    opacity: 1;
  }
  100% {
    transform: translate(0);
    opacity: 1;
  }
}
div.hero-area div.hero-img.hero-img11 {
  width: calc(60 / 375 * 100vw);
  top: calc(470 / 375 * 100vw);
  right: calc(20 / 375 * 100vw);
  animation: hero-img11 1s 5s cubic-bezier(0.26, 0.04, 0.18, 0.98) forwards;
}
@media screen and (min-width: 768px) {
  div.hero-area div.hero-img.hero-img11 {
    top: calc(710 / 1366 * 100vw);
    right: calc(47 / 1366 * 100vw);
    width: calc(120 / 1366 * 100vw);
  }
}
@keyframes hero-img11 {
  0% {
    transform: translate(-300%, 0%);
    opacity: 0;
  }
  10% {
    opacity: 1;
  }
  100% {
    transform: translate(0);
    opacity: 1;
  }
}
div.hero-area div.hero-img.hero-img12 {
  width: calc(57 / 375 * 100vw);
  top: calc(900 / 375 * 100vw);
  right: calc(10 / 375 * 100vw);
  animation: hero-img12 1.2s 5s cubic-bezier(0.26, 0.04, 0.18, 0.98) forwards;
}
@media screen and (min-width: 768px) {
  div.hero-area div.hero-img.hero-img12 {
    top: calc(800 / 1366 * 100vw);
    right: calc(438 / 1366 * 100vw);
    width: calc(57 / 1366 * 100vw);
  }
}
@keyframes hero-img12 {
  0% {
    transform: translate(-300%, 0%);
    opacity: 0;
  }
  10% {
    opacity: 1;
  }
  100% {
    transform: translate(0);
    opacity: 1;
  }
}
div.hero-area div.hero-img.hero-img13 {
  width: calc(60 / 375 * 100vw);
  top: calc(650 / 375 * 100vw);
  right: calc(10 / 375 * 100vw);
  opacity: 1;
  animation: rotate360-left 10s linear infinite;
}
@media screen and (min-width: 768px) {
  div.hero-area div.hero-img.hero-img13 {
    top: calc(980 / 1366 * 100vw);
    right: calc(140 / 1366 * 100vw);
    width: calc(80 / 1366 * 100vw);
  }
}
div.hero-area div.hero-img.hero-img14 {
  width: calc(50 / 375 * 100vw);
  top: calc(750 / 375 * 100vw);
  right: calc(55 / 375 * 100vw);
  opacity: 1;
  animation: fuwafuwa-up 10s ease infinite;
}
@media screen and (min-width: 768px) {
  div.hero-area div.hero-img.hero-img14 {
    top: calc(1150 / 1366 * 100vw);
    right: calc(60 / 1366 * 100vw);
    width: calc(106 / 1366 * 100vw);
  }
}
div.hero-area div.hero-img-area {
  position: relative;
  height: calc(578 / 375 * 100vw);
}
@media screen and (min-width: 768px) {
  div.hero-area div.hero-img-area {
    height: calc(900 / 1366 * 100vw);
  }
}
div.hero-area div.hero-img-area h1 {
  position: absolute;
  line-height: 1.2em;
  text-align: center;
  color: #3BB961;
  width: 100%;
  font-weight: 500;
  font-size: calc(60 / 375 * 100vw);
  top: calc(60 / 375 * 100vw);
}
@media screen and (min-width: 768px) {
  div.hero-area div.hero-img-area h1 {
    top: calc(110 / 1366 * 100vw);
    font-size: calc(62 / 1366 * 100vw);
  }
}
div.hero-area div.hero-img-area h1 span {
  display: inline-block;
  opacity: 0;
}
div.hero-area div.hero-img-area h1 span:nth-of-type(1) {
  animation: h1-ani 1s 5s cubic-bezier(0.26, 0.04, 0.18, 0.98) forwards;
}
div.hero-area div.hero-img-area h1 span:nth-of-type(2) {
  animation: h1-ani 1s 5.05s cubic-bezier(0.26, 0.04, 0.18, 0.98) forwards;
}
div.hero-area div.hero-img-area h1 span:nth-of-type(3) {
  animation: h1-ani 1s 5.1s cubic-bezier(0.26, 0.04, 0.18, 0.98) forwards;
}
div.hero-area div.hero-img-area h1 span:nth-of-type(4) {
  animation: h1-ani 1s 5.15s cubic-bezier(0.26, 0.04, 0.18, 0.98) forwards;
}
div.hero-area div.hero-img-area h1 span:nth-of-type(5) {
  animation: h1-ani 1s 5.2s cubic-bezier(0.26, 0.04, 0.18, 0.98) forwards;
}
div.hero-area div.hero-img-area h1 span:nth-of-type(6) {
  animation: h1-ani 1s 5.25s cubic-bezier(0.26, 0.04, 0.18, 0.98) forwards;
}
div.hero-area div.hero-img-area h1 span:nth-of-type(7) {
  animation: h1-ani 1s 5.3s cubic-bezier(0.26, 0.04, 0.18, 0.98) forwards;
}
div.hero-area div.hero-img-area h1 span:nth-of-type(8) {
  animation: h1-ani 1s 5.35s cubic-bezier(0.26, 0.04, 0.18, 0.98) forwards;
}
@keyframes h1-ani {
  0% {
    transform: translate(0, 60%);
    opacity: 0;
  }
  100% {
    transform: translate(0);
    opacity: 1;
  }
}
div.hero-area div.hero-img-area div.kumaru-img {
  position: absolute;
  left: 0;
  right: 0;
  top: calc(236 / 375 * 100vw);
  margin: auto;
  animation: kumaru-img 0.4s 5s cubic-bezier(0.26, 0.04, 0.18, 0.98) forwards;
  opacity: 0;
}
@media screen and (min-width: 768px) {
  div.hero-area div.hero-img-area div.kumaru-img {
    top: calc(205 / 1366 * 100vw);
    width: calc(872 / 1366 * 100vw);
  }
}
@keyframes kumaru-img {
  0% {
    transform: translate(0, 50%) scale(0.3);
    opacity: 0;
  }
  10% {
    opacity: 1;
  }
  100% {
    transform: translate(0) scale(1);
    opacity: 1;
  }
}
div.hero-area div.hero-img-area div.chumaru-img {
  position: absolute;
  top: calc(200 / 375 * 100vw);
  left: calc(-5 / 375 * 100vw);
  width: calc(110 / 375 * 100vw);
  animation: chumaru-img 0.6s 5.2s cubic-bezier(0.26, 0.04, 0.18, 0.98) forwards;
  opacity: 0;
}
@media screen and (min-width: 768px) {
  div.hero-area div.hero-img-area div.chumaru-img {
    left: calc(170 / 1366 * 100vw);
    top: calc(150 / 1366 * 100vw);
    width: calc(325 / 1366 * 100vw);
  }
}
@keyframes chumaru-img {
  0% {
    transform: translate(20%, 50%) scale(0.6);
    opacity: 0;
  }
  10% {
    opacity: 1;
  }
  100% {
    transform: translate(0) scale(1);
    opacity: 1;
  }
}
div.hero-area div.hero-txt-area {
  background: #3BB961;
  color: #fff;
  position: relative;
  padding: 0 calc(25 / 375 * 100vw) calc(65 / 375 * 100vw);
}
@media screen and (min-width: 768px) {
  div.hero-area div.hero-txt-area {
    padding: 0 0 calc(127 / 1366 * 100vw);
  }
}
div.hero-area div.hero-txt-area::after {
  content: "";
  display: block;
  width: 140vw;
  height: 50vw;
  position: absolute;
  top: 0;
  left: 50%;
  background-color: #3BB961;
  transform: translate(-50%, -50%);
  border-radius: 50%;
}
@media screen and (min-width: 768px) {
  div.hero-area div.hero-txt-area::after {
    transform: translate(-50%, -25%);
  }
}
div.hero-area div.hero-txt-area h2 {
  text-align: left;
  line-height: 1.2em;
  font-weight: 500;
  position: relative;
  z-index: 1;
  font-size: calc(45 / 375 * 100vw);
}
@media screen and (min-width: 768px) {
  div.hero-area div.hero-txt-area h2 {
    line-height: 1em;
    text-align: center;
    font-size: calc(77 / 1366 * 100vw);
  }
}
div.hero-area div.hero-txt-area p {
  width: -moz-fit-content;
  width: fit-content;
  margin: auto;
  font-weight: 300;
  line-height: 1.95em;
  margin-top: 3em;
  position: relative;
  z-index: 2;
}
@media screen and (min-width: 768px) {
  div.hero-area div.hero-txt-area p {
    width: calc(880 / 1366 * 100vw);
    margin-top: 2em;
    font-size: calc(22 / 1366 * 100vw);
  }
}

div.sec-motto-wrap {
  position: relative;
  background: #3BB961;
  border-top: solid 1px #fff;
}
div.sec-motto-wrap div.motto-lead-box {
  box-sizing: border-box;
  padding: calc(62 / 375 * 100vw) calc(25 / 375 * 100vw);
}
@media screen and (min-width: 768px) {
  div.sec-motto-wrap div.motto-lead-box {
    padding: calc(86 / 1366 * 100vw) calc(102 / 1366 * 100vw) calc(85 / 1366 * 100vw);
  }
}
div.sec-motto-wrap div.motto-lead-box h2 {
  line-height: 1.5em;
  color: #fff;
  font-size: calc(30 / 375 * 100vw);
  font-weight: 500;
}
@media screen and (min-width: 768px) {
  div.sec-motto-wrap div.motto-lead-box h2 {
    line-height: 1.2em;
    font-size: calc(50 / 1366 * 100vw);
  }
}

section.sec-motto {
  background: #fff;
  box-sizing: border-box;
  position: relative;
  width: 93.6%;
  padding: calc(41 / 375 * 100vw) calc(25 / 375 * 100vw);
  margin-bottom: calc(41 / 375 * 100vw);
  transform-origin: left top;
  opacity: 0;
}
@media screen and (min-width: 768px) {
  section.sec-motto {
    width: 95.6%;
    padding: calc(70 / 1366 * 100vw) calc(73 / 1366 * 100vw) calc(70 / 1366 * 100vw) calc(99 / 1366 * 100vw);
    margin-bottom: calc(40 / 1366 * 100vw);
  }
}
section.sec-motto.animation {
  animation: sec-motto 1s 0s cubic-bezier(0.26, 0.04, 0.18, 0.98) forwards;
}
@keyframes sec-motto {
  0% {
    opacity: 0;
    transform: rotate(8deg);
  }
  100% {
    opacity: 1;
    transform: rotate(0);
  }
}
section.sec-motto#local p.number-tag {
  color: var(--color-local);
}
section.sec-motto#local div.motto-txt-wrap h3 .en {
  color: var(--color-local);
}
section.sec-motto#local div.motto-txt-wrap h3 .en .border {
  margin-left: 0.4em;
  color: #fff;
  text-shadow: 1px 1px 0 var(--color-local), -1px 1px 0 var(--color-local), -1px -1px 0 var(--color-local), 1px -1px 0 var(--color-local);
}
section.sec-motto#local div.motto-txt-wrap h3 .ja .color {
  color: var(--color-local);
}
section.sec-motto#local div.motto-txt-wrap h3 .ja .motto-illust {
  width: calc(77 / 375 * 100vw);
}
@media screen and (min-width: 768px) {
  section.sec-motto#local div.motto-txt-wrap h3 .ja .motto-illust {
    transform: translate(120%, 0);
    width: calc(121 / 1366 * 100vw);
  }
}
section.sec-motto#local div.motto-txt-wrap a {
  background: var(--color-local);
}
@media screen and (min-width: 768px) {
  section.sec-motto#local div.motto-txt-wrap a:hover {
    background: #fff;
    color: var(--color-local);
  }
  section.sec-motto#local div.motto-txt-wrap a:hover path {
    stroke: var(--color-local);
  }
}
section.sec-motto#local ul li {
  border: solid 2px var(--color-local);
}
@media screen and (min-width: 768px) {
  section.sec-motto#local ul li:hover {
    background-color: var(--color-local);
  }
  section.sec-motto#local ul li:hover a {
    color: #fff;
  }
  section.sec-motto#local ul li:hover path {
    stroke: #fff;
  }
}
section.sec-motto#local ul li a path {
  stroke: var(--color-local);
}
section.sec-motto#fun p.number-tag {
  color: var(--color-fun);
}
section.sec-motto#fun div.motto-txt-wrap h3 .en {
  color: var(--color-fun);
}
section.sec-motto#fun div.motto-txt-wrap h3 .en .border {
  margin-left: 0.4em;
  color: #fff;
  text-shadow: 1px 1px 0 var(--color-fun), -1px 1px 0 var(--color-fun), -1px -1px 0 var(--color-fun), 1px -1px 0 var(--color-fun);
}
section.sec-motto#fun div.motto-txt-wrap h3 .ja .color {
  color: var(--color-fun);
}
section.sec-motto#fun div.motto-txt-wrap h3 .ja .motto-illust {
  width: calc(89 / 375 * 100vw);
}
@media screen and (min-width: 768px) {
  section.sec-motto#fun div.motto-txt-wrap h3 .ja .motto-illust {
    transform: translate(120%, -15%);
    width: calc(121 / 1366 * 100vw);
  }
}
section.sec-motto#fun div.motto-txt-wrap a {
  background: var(--color-fun);
}
@media screen and (min-width: 768px) {
  section.sec-motto#fun div.motto-txt-wrap a:hover {
    background: #fff;
    color: var(--color-fun);
  }
  section.sec-motto#fun div.motto-txt-wrap a:hover path {
    stroke: var(--color-fun);
  }
}
section.sec-motto#fun ul li {
  border: solid 2px var(--color-fun);
}
@media screen and (min-width: 768px) {
  section.sec-motto#fun ul li:hover {
    background-color: var(--color-fun);
  }
  section.sec-motto#fun ul li:hover a {
    color: #fff;
  }
  section.sec-motto#fun ul li:hover path {
    stroke: #fff;
  }
}
section.sec-motto#fun ul li a path {
  stroke: var(--color-fun);
}
section.sec-motto#future p.number-tag {
  color: var(--color-future);
}
section.sec-motto#future div.motto-txt-wrap h3 .en {
  color: var(--color-future);
}
section.sec-motto#future div.motto-txt-wrap h3 .en .border {
  margin-left: 0.4em;
  color: #fff;
  text-shadow: 1px 1px 0 var(--color-future), -1px 1px 0 var(--color-future), -1px -1px 0 var(--color-future), 1px -1px 0 var(--color-future);
}
section.sec-motto#future div.motto-txt-wrap h3 .ja .color {
  color: var(--color-future);
}
section.sec-motto#future div.motto-txt-wrap h3 .ja .motto-illust {
  width: calc(76 / 375 * 100vw);
}
@media screen and (min-width: 768px) {
  section.sec-motto#future div.motto-txt-wrap h3 .ja .motto-illust {
    transform: translate(120%, -15%);
    width: calc(98 / 1366 * 100vw);
  }
}
section.sec-motto#future div.motto-txt-wrap a {
  background: var(--color-future);
}
@media screen and (min-width: 768px) {
  section.sec-motto#future div.motto-txt-wrap a:hover {
    background: #fff;
    color: var(--color-future);
  }
  section.sec-motto#future div.motto-txt-wrap a:hover path {
    stroke: var(--color-future);
  }
}
section.sec-motto#future ul li {
  border: solid 2px var(--color-future);
}
@media screen and (min-width: 768px) {
  section.sec-motto#future ul li:hover {
    background-color: var(--color-future);
  }
  section.sec-motto#future ul li:hover a {
    color: #fff;
  }
  section.sec-motto#future ul li:hover path {
    stroke: #fff;
  }
}
section.sec-motto#future ul li a path {
  stroke: var(--color-future);
}
section.sec-motto#rewarding {
  margin-bottom: 0;
}
section.sec-motto#rewarding p.number-tag {
  color: var(--color-rewarding);
}
section.sec-motto#rewarding div.motto-txt-wrap h3 .en {
  color: var(--color-rewarding);
}
section.sec-motto#rewarding div.motto-txt-wrap h3 .en .border {
  margin-left: 0.4em;
  color: #fff;
  text-shadow: 1px 1px 0 var(--color-rewarding), -1px 1px 0 var(--color-rewarding), -1px -1px 0 var(--color-rewarding), 1px -1px 0 var(--color-rewarding);
}
section.sec-motto#rewarding div.motto-txt-wrap h3 .ja .color {
  color: var(--color-rewarding);
}
section.sec-motto#rewarding div.motto-txt-wrap h3 .ja .motto-illust {
  width: calc(77 / 375 * 100vw);
  transform: translate(100%, 50%);
}
@media screen and (min-width: 768px) {
  section.sec-motto#rewarding div.motto-txt-wrap h3 .ja .motto-illust {
    transform: translate(120%, -5%);
    width: calc(104 / 1366 * 100vw);
  }
}
section.sec-motto#rewarding div.motto-txt-wrap a {
  background: var(--color-rewarding);
}
@media screen and (min-width: 768px) {
  section.sec-motto#rewarding div.motto-txt-wrap a:hover {
    background: #fff;
    color: var(--color-rewarding);
  }
  section.sec-motto#rewarding div.motto-txt-wrap a:hover path {
    stroke: var(--color-rewarding);
  }
}
section.sec-motto#rewarding ul li {
  border: solid 2px var(--color-rewarding);
}
@media screen and (min-width: 768px) {
  section.sec-motto#rewarding ul li:hover {
    background-color: var(--color-rewarding);
  }
  section.sec-motto#rewarding ul li:hover a {
    color: #fff;
  }
  section.sec-motto#rewarding ul li:hover path {
    stroke: #fff;
  }
}
section.sec-motto#rewarding ul li a path {
  stroke: var(--color-rewarding);
}
section.sec-motto#customer p.number-tag {
  color: var(--color-customer);
}
section.sec-motto#customer div.motto-txt-wrap h3 .en {
  color: var(--color-customer);
}
section.sec-motto#customer div.motto-txt-wrap h3 .en .border {
  margin-left: 0.4em;
  color: #fff;
  text-shadow: 1px 1px 0 var(--color-customer), -1px 1px 0 var(--color-customer), -1px -1px 0 var(--color-customer), 1px -1px 0 var(--color-customer);
}
section.sec-motto#customer div.motto-txt-wrap h3 .ja .color {
  color: var(--color-customer);
}
section.sec-motto#customer div.motto-txt-wrap h3 .ja .motto-illust {
  width: calc(80 / 375 * 100vw);
}
@media screen and (min-width: 768px) {
  section.sec-motto#customer div.motto-txt-wrap h3 .ja .motto-illust {
    transform: translate(120%, -30%);
    width: calc(104 / 1366 * 100vw);
  }
}
section.sec-motto#customer div.motto-txt-wrap a {
  background: var(--color-customer);
}
@media screen and (min-width: 768px) {
  section.sec-motto#customer div.motto-txt-wrap a:hover {
    background: #fff;
    color: var(--color-customer);
  }
  section.sec-motto#customer div.motto-txt-wrap a:hover path {
    stroke: var(--color-customer);
  }
}
section.sec-motto#customer ul li {
  border: solid 2px var(--color-customer);
}
@media screen and (min-width: 768px) {
  section.sec-motto#customer ul li:hover {
    background-color: var(--color-customer);
  }
  section.sec-motto#customer ul li:hover a {
    color: #fff;
  }
  section.sec-motto#customer ul li:hover path {
    stroke: #fff;
  }
}
section.sec-motto#customer ul li a path {
  stroke: var(--color-customer);
}
section.sec-motto p.number-tag {
  position: absolute;
  top: 0;
  right: 0;
  background: #fff;
  transform: translate(98%, 0);
  font-family: var(--font-unbounded);
  padding: 1em 0;
  font-weight: 500;
  color: var(--color-safety);
  font-size: calc(18 / 375 * 100vw);
  line-height: 1em;
}
@media screen and (min-width: 768px) {
  section.sec-motto p.number-tag {
    padding: 1em 0.2em;
    font-size: calc(25 / 1366 * 100vw);
  }
}
section.sec-motto p.number-tag .inner {
  display: block;
  transform: translate(-0.2em, 0) rotate(90deg);
}
@media screen and (min-width: 768px) {
  section.sec-motto p.number-tag .inner {
    transform: rotate(90deg);
  }
}
@media screen and (min-width: 768px) {
  section.sec-motto div.sec-motto-inner {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
}
@media screen and (min-width: 768px) {
  section.sec-motto div.motto-txt-wrap {
    width: 50%;
  }
}
section.sec-motto div.motto-txt-wrap h3 .en {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  font-family: var(--font-unbounded);
  letter-spacing: 0.05em;
  color: var(--color-safety);
  margin-bottom: 0.6em;
  font-size: calc(18 / 375 * 100vw);
}
@media screen and (min-width: 768px) {
  section.sec-motto div.motto-txt-wrap h3 .en {
    font-size: calc(25 / 1366 * 100vw);
  }
}
section.sec-motto div.motto-txt-wrap h3 .en .icon {
  display: inline-block;
  width: 2em;
  margin-right: 0.6em;
}
section.sec-motto div.motto-txt-wrap h3 .en .border {
  margin-left: 0.4em;
  color: #fff;
  text-shadow: 1px 1px 0 var(--color-safety), -1px 1px 0 var(--color-safety), -1px -1px 0 var(--color-safety), 1px -1px 0 var(--color-safety);
}
section.sec-motto div.motto-txt-wrap h3 .ja {
  display: inline-block;
  line-height: 1.16em;
  font-weight: 500;
  position: relative;
  font-size: calc(50 / 375 * 100vw);
}
@media screen and (min-width: 768px) {
  section.sec-motto div.motto-txt-wrap h3 .ja {
    font-size: calc(80 / 1366 * 100vw);
  }
}
section.sec-motto div.motto-txt-wrap h3 .ja .motto-illust {
  display: block;
  position: absolute;
  bottom: 0;
  right: 0;
  transform: translate(120%, 0);
  width: calc(59 / 375 * 100vw);
}
@media screen and (min-width: 768px) {
  section.sec-motto div.motto-txt-wrap h3 .ja .motto-illust {
    width: calc(67 / 1366 * 100vw);
  }
}
section.sec-motto div.motto-txt-wrap h3 .ja .color {
  color: var(--color-safety);
}
section.sec-motto div.motto-txt-wrap h4 {
  line-height: 1.2em;
  margin-top: 1.4em;
  font-size: calc(24 / 375 * 100vw);
  font-weight: 500;
}
@media screen and (min-width: 768px) {
  section.sec-motto div.motto-txt-wrap h4 {
    font-size: calc(24 / 1366 * 100vw);
  }
}
section.sec-motto div.motto-txt-wrap p {
  margin-top: 1.4em;
  font-size: calc(13 / 375 * 100vw);
  line-height: 1.76em;
  text-align: justify;
  word-break: break-all;
}
@media screen and (min-width: 768px) {
  section.sec-motto div.motto-txt-wrap p {
    margin-top: 1em;
    text-align: left;
    font-weight: 400;
    font-size: clamp(10px, 16 / 1366 * 100vw, 20px);
    line-height: 1.8em;
    letter-spacing: 0.02em;
  }
}
section.sec-motto div.motto-txt-wrap a {
  display: block;
  background: var(--color-safety);
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  color: #fff;
  border-radius: 50em;
  box-sizing: border-box;
  padding: 0.6em 1.4em;
  margin-top: 1.4em;
  border: solid 2px;
  transition: all 0.3s;
  width: calc(214 / 375 * 100vw);
  font-size: calc(14 / 375 * 100vw);
  font-weight: 500;
}
@media screen and (min-width: 768px) {
  section.sec-motto div.motto-txt-wrap a {
    margin-top: 1em;
    padding: 0.4em 1em;
    width: 12.2em;
    font-size: calc(18 / 1366 * 100vw);
  }
  section.sec-motto div.motto-txt-wrap a:hover .m-btn-arrow svg:nth-of-type(1) {
    transform: translate(120%, -120%);
  }
  section.sec-motto div.motto-txt-wrap a:hover .m-btn-arrow svg:nth-of-type(2) {
    transform: translate(0, 0);
  }
  section.sec-motto div.motto-txt-wrap a:hover {
    background: #fff;
    color: var(--color-safety);
  }
  section.sec-motto div.motto-txt-wrap a:hover path {
    stroke: var(--color-safety);
  }
}
section.sec-motto div.motto-txt-wrap a .m-btn-arrow {
  width: 0.8em;
}
section.sec-motto div.motto-img {
  margin: calc(35 / 375 * 100vw) 0;
}
@media screen and (min-width: 768px) {
  section.sec-motto div.motto-img {
    width: 46.4%;
    margin: 0;
  }
}
section.sec-motto ul {
  width: 100%;
  line-height: 1.6em;
  font-size: calc(14 / 375 * 100vw);
}
@media screen and (min-width: 768px) {
  section.sec-motto ul {
    display: flex;
    flex-wrap: wrap;
    font-size: max(10px, 18 / 1366 * 100vw);
    -moz-column-gap: 1.4%;
         column-gap: 1.4%;
    row-gap: calc(17 / 1366 * 100vw);
    margin-top: calc(56 / 1366 * 100vw);
  }
}
section.sec-motto ul li {
  border: solid 2px var(--color-safety);
  width: 100%;
  border-radius: 1.4em;
  display: flex;
  flex-direction: column;
  box-sizing: border-box;
  transition: all 0.3s;
  margin-bottom: calc(9 / 375 * 100vw);
}
@media screen and (min-width: 768px) {
  section.sec-motto ul li {
    border-radius: 1.2em;
    width: 32.4%;
    margin-bottom: 0;
  }
  section.sec-motto ul li:hover .m-btn-arrow svg:nth-of-type(1) {
    transform: translate(120%, -120%);
  }
  section.sec-motto ul li:hover .m-btn-arrow svg:nth-of-type(2) {
    transform: translate(0, 0);
  }
  section.sec-motto ul li:hover {
    background-color: var(--color-safety);
  }
  section.sec-motto ul li:hover a {
    color: #fff;
  }
  section.sec-motto ul li:hover path {
    stroke: #fff;
  }
}
section.sec-motto ul li a {
  display: block;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  box-sizing: border-box;
  padding: 0.4em 1em;
  flex: 1;
  transition: all 0.3s;
}
@media screen and (min-width: 768px) {
  section.sec-motto ul li a {
    padding: 0.2em 1em;
  }
}
section.sec-motto ul li a .m-btn-arrow {
  width: 0.7em;
}
section.sec-motto ul li a .txt {
  width: calc(100% - 1em);
}

section.sec-motto-txt {
  position: relative;
  z-index: 2;
  padding: calc(94 / 375 * 100vw) 0;
}
@media screen and (min-width: 768px) {
  section.sec-motto-txt {
    padding: calc(213 / 1366 * 100vw) 0 calc(230 / 1366 * 100vw);
  }
}
section.sec-motto-txt.animation .motto-txt-s {
  animation: fade 1s 0.3s forwards;
}
section.sec-motto-txt.animation .motto-txt-l {
  animation: fade 1s 0.6s forwards;
}
section.sec-motto-txt p {
  opacity: 0;
}
section.sec-motto-txt div.motto-txt-img {
  position: absolute;
  top: 0;
  animation: rotate360-right infinite 20s linear;
}
section.sec-motto-txt div.motto-txt-img.motto-txt-img01 {
  top: 28%;
  left: -7%;
  width: calc(70 / 375 * 100vw);
}
@media screen and (min-width: 768px) {
  section.sec-motto-txt div.motto-txt-img.motto-txt-img01 {
    top: 16%;
    left: 14%;
    width: calc(109 / 1366 * 100vw);
  }
}
section.sec-motto-txt div.motto-txt-img.motto-txt-img02 {
  top: 45%;
  left: 11%;
  width: calc(30 / 375 * 100vw);
}
@media screen and (min-width: 768px) {
  section.sec-motto-txt div.motto-txt-img.motto-txt-img02 {
    top: 30%;
    left: 5%;
    width: calc(53 / 1366 * 100vw);
  }
}
section.sec-motto-txt div.motto-txt-img.motto-txt-img03 {
  top: 17%;
  left: 9%;
  width: calc(46 / 375 * 100vw);
}
@media screen and (min-width: 768px) {
  section.sec-motto-txt div.motto-txt-img.motto-txt-img03 {
    top: 20%;
    left: 25%;
    width: calc(85 / 1366 * 100vw);
  }
}
section.sec-motto-txt div.motto-txt-img.motto-txt-img04 {
  top: 55%;
  left: -4%;
  width: calc(90 / 375 * 100vw);
  animation: rotate360-left infinite 20s linear;
}
@media screen and (min-width: 768px) {
  section.sec-motto-txt div.motto-txt-img.motto-txt-img04 {
    top: 42%;
    left: 8%;
    width: calc(162 / 1366 * 100vw);
  }
}
section.sec-motto-txt div.motto-txt-img.motto-txt-img05 {
  top: 80%;
  left: 1%;
  width: calc(55 / 375 * 100vw);
}
@media screen and (min-width: 768px) {
  section.sec-motto-txt div.motto-txt-img.motto-txt-img05 {
    top: 76%;
    left: 29%;
    width: calc(78 / 1366 * 100vw);
  }
}
section.sec-motto-txt div.motto-txt-img.motto-txt-img06 {
  top: 30%;
  right: 14%;
  width: calc(55 / 375 * 100vw);
  animation: rotate360-left infinite 20s linear;
}
@media screen and (min-width: 768px) {
  section.sec-motto-txt div.motto-txt-img.motto-txt-img06 {
    top: 20%;
    right: 25%;
    width: calc(75 / 1366 * 100vw);
  }
}
section.sec-motto-txt div.motto-txt-img.motto-txt-img07 {
  top: 13%;
  right: 4%;
  width: calc(47 / 375 * 100vw);
}
@media screen and (min-width: 768px) {
  section.sec-motto-txt div.motto-txt-img.motto-txt-img07 {
    top: 13%;
    right: 10%;
    width: calc(109 / 1366 * 100vw);
  }
}
section.sec-motto-txt div.motto-txt-img.motto-txt-img08 {
  top: 41%;
  right: -3%;
  width: calc(100 / 375 * 100vw);
  animation: rotate360-left infinite 20s linear;
}
@media screen and (min-width: 768px) {
  section.sec-motto-txt div.motto-txt-img.motto-txt-img08 {
    top: 50%;
    right: 5%;
    width: calc(140 / 1366 * 100vw);
  }
}
section.sec-motto-txt div.motto-txt-img.motto-txt-img09 {
  top: 66%;
  right: 1%;
  width: calc(65 / 375 * 100vw);
}
@media screen and (min-width: 768px) {
  section.sec-motto-txt div.motto-txt-img.motto-txt-img09 {
    top: 78%;
    right: 13%;
    width: calc(93 / 1366 * 100vw);
  }
}
section.sec-motto-txt p {
  position: relative;
  z-index: 1;
  text-align: center;
  color: #fff;
  font-weight: 400;
  line-height: 1.95em;
}
@media screen and (min-width: 768px) {
  section.sec-motto-txt p {
    font-weight: 300;
  }
}
section.sec-motto-txt p.motto-txt-s {
  margin-bottom: 2em;
  font-size: calc(14 / 375 * 100vw);
}
@media screen and (min-width: 768px) {
  section.sec-motto-txt p.motto-txt-s {
    font-size: calc(22 / 1366 * 100vw);
  }
}
section.sec-motto-txt p.motto-txt-l {
  position: relative;
  z-index: 1;
  line-height: 1.2em;
  font-size: calc(30 / 375 * 100vw);
  font-weight: 500;
  letter-spacing: 0.04em;
  margin-top: calc(60 / 375 * 100vw);
}
@media screen and (min-width: 768px) {
  section.sec-motto-txt p.motto-txt-l {
    margin-top: 0;
    font-size: calc(50 / 1366 * 100vw);
  }
}

section.sec-tv {
  margin-top: calc(50 / 375 * 100vw);
}
@media screen and (min-width: 768px) {
  section.sec-tv {
    margin-top: calc(60 / 1366 * 100vw);
  }
}
section.sec-tv .txt-line-slide-wrapper {
  position: relative;
  transform: rotate(8deg);
  z-index: 1;
}
@media screen and (min-width: 768px) {
  section.sec-tv .txt-line-slide-wrapper {
    transform: rotate(2deg);
  }
}
section.sec-tv .txt-line-slide-wrapper::after {
  content: "";
  display: block;
  width: 120%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 50%;
  background: #fff;
  z-index: -1;
  transform: translate(-50%, -100%);
}
section.sec-tv .txt-line-slide-wrapper.txt-line-slide-wrapper02 {
  transform: rotate(-6deg);
  margin-top: 10%;
}
@media screen and (min-width: 768px) {
  section.sec-tv .txt-line-slide-wrapper.txt-line-slide-wrapper02 {
    transform: rotate(-2deg);
    margin-top: 0;
  }
}
section.sec-tv .txt-line-slide-wrapper.txt-line-slide-wrapper02::after {
  background: #fff;
  height: 10vw;
  transform: translate(-50%, 2vw);
}
section.sec-tv .txt-line-slide-wrapper.txt-line-slide-wrapper02 .slider {
  animation: scroll-right 30s infinite linear 0.5s both;
}
section.sec-tv .txt-line-slide {
  overflow: hidden;
  width: 120%;
  position: relative;
  left: 50%;
  transform: translate(-50%, 0);
  border-top: solid 1px #000;
  border-bottom: solid 1px #000;
  padding: 1vw 0;
  background: #fff;
  z-index: 1;
}
@media screen and (min-width: 768px) {
  section.sec-tv .txt-line-slide {
    margin-bottom: 0;
  }
}
section.sec-tv .txt-line-slide {
  /*&.txt-line-slide01{
      clip-path: polygon(0 0, 0 0, 0 100%, 0% 100%);
      &.animation{
          animation: tv-slide01 1s 0s ease forwards;
          @keyframes tv-slide01 {
              0% {
                  clip-path: polygon(0 0, 0 0, 0 100%, 0% 100%);
              }
              100% {
                  clip-path: polygon(0 0, 100% 0, 100% 100%, 0% 100%);
              }
          }
      }
  }
  &.txt-line-slide02{
      clip-path: polygon(100% 0, 100% 0, 100% 100%, 100% 100%);
      &.animation{
          animation: tv-slide02 1s 0s ease forwards;
          @keyframes tv-slide02 {
              0% {
                  clip-path: polygon(100% 0, 100% 0, 100% 100%, 100% 100%);
              }
              100% {
                  clip-path: polygon(0 0, 100% 0, 100% 100%, 0% 100%);
              }
          }
      }
  }*/
}
section.sec-tv .txt-line-slide div.txt-line-slide-inner {
  display: flex;
  width: 500%;
}
@media screen and (min-width: 768px) {
  section.sec-tv .txt-line-slide div.txt-line-slide-inner {
    width: 280%;
  }
}
section.sec-tv .txt-line-slide .slider {
  animation: scroll-left 30s infinite linear 0.5s both;
  display: flex;
  font-family: var(--font-unbounded);
}
@media screen and (min-width: 768px) {
  section.sec-tv .txt-line-slide .slider {
    font-size: calc(25 / 1366 * 100vw);
  }
}
section.sec-tv .txt-line-slide .slide {
  padding-right: calc(8 / 375 * 100vw);
  box-sizing: border-box;
}
@media screen and (min-width: 768px) {
  section.sec-tv .txt-line-slide .slide {
    padding-right: 3vw;
  }
}
@keyframes scroll-left {
  from {
    transform: translateX(0);
  }
  to {
    transform: translateX(-100%);
  }
}
@keyframes scroll-right {
  from {
    transform: translateX(-100%);
  }
  to {
    transform: translateX(0);
  }
}
@media screen and (min-width: 768px) {
  section.sec-tv a.tv-link-area {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    position: relative;
    z-index: 0;
    transition: all 0.3s;
  }
  section.sec-tv a.tv-link-area::after {
    content: "";
    display: block;
    width: 100%;
    height: 10%;
    transform: translate(-50%, 0) rotate(2deg);
    position: absolute;
    top: 0;
    left: 50%;
    background: #fff;
    z-index: -1;
    transition: all 0.3s;
  }
  section.sec-tv a.tv-link-area::before {
    content: "";
    display: block;
    width: 100%;
    height: 10%;
    transform: translate(-50%, 0) rotate(-2deg);
    position: absolute;
    bottom: 0;
    left: 50%;
    background: #fff;
    z-index: -1;
    transition: all 0.3s;
  }
  section.sec-tv a.tv-link-area:hover {
    background: #C4C3FF;
  }
  section.sec-tv a.tv-link-area:hover .m-btn-arrow svg:nth-of-type(1) {
    transform: translate(120%, -120%);
  }
  section.sec-tv a.tv-link-area:hover .m-btn-arrow svg:nth-of-type(2) {
    transform: translate(0, 0);
  }
  section.sec-tv a.tv-link-area:hover::before, section.sec-tv a.tv-link-area:hover::after {
    background: #C4C3FF;
  }
  section.sec-tv a.tv-link-area:hover div.tv-txt-area h2, section.sec-tv a.tv-link-area:hover p {
    color: #fff;
  }
  section.sec-tv a.tv-link-area:hover div.kumaru-img, section.sec-tv a.tv-link-area:hover div.chumaru-img {
    transform: scale(1.1);
  }
}
section.sec-tv a.tv-link-area div.video-area {
  width: 170%;
  transform: rotate(-5deg);
}
@media screen and (min-width: 768px) {
  section.sec-tv a.tv-link-area div.video-area {
    width: 71%;
    position: absolute;
    left: -1.3vw;
    top: -5vw;
  }
}
section.sec-tv a.tv-link-area div.video-area div.video-line {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin-bottom: calc(20 / 375 * 100vw);
}
@media screen and (min-width: 768px) {
  section.sec-tv a.tv-link-area div.video-area div.video-line {
    margin-bottom: calc(34 / 1366 * 100vw);
  }
}
section.sec-tv a.tv-link-area div.video-area div.video-line:nth-of-type(1) {
  transform: translate(-9%, 0);
}
@media screen and (min-width: 768px) {
  section.sec-tv a.tv-link-area div.video-area div.video-line:nth-of-type(1) {
    transform: translate(calc(-165 / 1366 * 100vw), 0);
  }
}
section.sec-tv a.tv-link-area div.video-area div.video-line:nth-of-type(2) {
  transform: translate(-5%, 0);
}
@media screen and (min-width: 768px) {
  section.sec-tv a.tv-link-area div.video-area div.video-line:nth-of-type(2) {
    transform: translate(calc(-320 / 1366 * 100vw), 0);
  }
}
section.sec-tv a.tv-link-area div.video-area div.video-line:nth-of-type(3) {
  transform: translate(calc(-455 / 1366 * 100vw), 0);
  display: none;
}
@media screen and (min-width: 768px) {
  section.sec-tv a.tv-link-area div.video-area div.video-line:nth-of-type(3) {
    display: flex;
  }
}
section.sec-tv a.tv-link-area div.video-area div.video-wrap {
  position: relative;
  z-index: 0;
  overflow: hidden;
  isolation: isolate;
  border-radius: 1vw 1vw 0 0;
  width: 23%;
}
section.sec-tv a.tv-link-area div.video-area div.video-wrap video {
  width: 108%;
  position: absolute;
  top: 7%;
  left: 50%;
  transform: translate(-50%, 0);
  z-index: -1;
}
@media screen and (min-width: 768px) {
  section.sec-tv a.tv-link-area div.video-area div.video-wrap video {
    width: 120%;
    top: 2.4%;
    left: 50%;
    transform: translate(-50%, 0);
    z-index: -1;
  }
}
section.sec-tv a.tv-link-area div.tv-txt-area {
  position: relative;
  padding: calc(60 / 375 * 100vw) calc(25 / 375 * 100vw) calc(40 / 375 * 100vw);
}
@media screen and (min-width: 768px) {
  section.sec-tv a.tv-link-area div.tv-txt-area {
    padding: calc(100 / 1366 * 100vw) 0 calc(95 / 1366 * 100vw);
    width: 34%;
    margin: 0 10% 0 auto;
  }
}
section.sec-tv a.tv-link-area div.tv-txt-area h2 {
  font-family: var(--font-unbounded);
  font-weight: 500;
  line-height: 1.3em;
  font-size: calc(34 / 375 * 100vw);
  transition: all 0.2s;
  color: var(--color-main);
}
@media screen and (min-width: 768px) {
  section.sec-tv a.tv-link-area div.tv-txt-area h2 {
    font-size: calc(45 / 1366 * 100vw);
  }
}
section.sec-tv a.tv-link-area div.tv-txt-area h2 .m-btn-arrow {
  display: inline-block;
  width: 0.7em;
  margin-left: 0.2em;
}
section.sec-tv a.tv-link-area div.tv-txt-area div.kumaru-img, section.sec-tv a.tv-link-area div.tv-txt-area div.chumaru-img {
  transition: all 0.2s ease;
}
section.sec-tv a.tv-link-area div.tv-txt-area div.kumaru-img {
  position: absolute;
}
@media screen and (min-width: 768px) {
  section.sec-tv a.tv-link-area div.tv-txt-area div.kumaru-img {
    top: 10%;
    right: 23%;
    width: calc(60 / 1366 * 100vw);
  }
}
section.sec-tv a.tv-link-area div.tv-txt-area div.chumaru-img {
  position: absolute;
}
@media screen and (min-width: 768px) {
  section.sec-tv a.tv-link-area div.tv-txt-area div.chumaru-img {
    top: 30%;
    right: 5%;
    width: calc(69 / 1366 * 100vw);
  }
}
section.sec-tv a.tv-link-area div.tv-txt-area p {
  font-size: calc(14 / 375 * 100vw);
  line-height: 2.1em;
  margin-top: 1em;
  transition: all 0.2s;
}
@media screen and (min-width: 768px) {
  section.sec-tv a.tv-link-area div.tv-txt-area p {
    font-weight: 400;
    font-size: clamp(10px, 16 / 1366 * 100vw, 20px);
    line-height: 1.8em;
    letter-spacing: 0.02em;
  }
}

.sec-initiative .initiative-slide .splide__track {
  border-bottom: none;
}

section.sec-link {
  box-sizing: border-box;
  position: relative;
  z-index: 2;
  padding: calc(60 / 375 * 100vw) calc(25 / 375 * 100vw) 0;
}
@media screen and (min-width: 768px) {
  section.sec-link {
    padding: calc(120 / 1366 * 100vw) 41px 0;
  }
}
@media screen and (min-width: 768px) {
  section.sec-link div.sec-link-inner {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
}
section.sec-link div.sec-link-inner a {
  display: flex;
  flex-wrap: wrap;
  overflow: hidden;
  transition: all 0.3s;
}
@media screen and (min-width: 768px) {
  section.sec-link div.sec-link-inner a {
    width: 50%;
  }
  section.sec-link div.sec-link-inner a:hover .m-btn-arrow svg:nth-of-type(1) {
    transform: translate(120%, -120%);
  }
  section.sec-link div.sec-link-inner a:hover .m-btn-arrow svg:nth-of-type(2) {
    transform: translate(0, 0);
  }
  section.sec-link div.sec-link-inner a:hover div.kumaru-img, section.sec-link div.sec-link-inner a:hover div.chumaru-img {
    transform: scale(1.1);
  }
}
section.sec-link div.sec-link-inner a div.kumaru-img, section.sec-link div.sec-link-inner a div.chumaru-img {
  transition: all 0.3s;
}
section.sec-link div.sec-link-inner a.kumaru {
  background-color: #CEFD90;
}
@media screen and (min-width: 768px) {
  section.sec-link div.sec-link-inner a.kumaru:hover {
    background-color: #b4fe52;
  }
}
section.sec-link div.sec-link-inner a.kumaru div.kumaru-img {
  width: calc(123 / 375 * 100vw);
  margin-right: 3%;
}
@media screen and (min-width: 768px) {
  section.sec-link div.sec-link-inner a.kumaru div.kumaru-img {
    width: 33.8%;
    margin-right: 5%;
  }
}
section.sec-link div.sec-link-inner a.chumaru {
  background-color: #FFD0D0;
}
@media screen and (min-width: 768px) {
  section.sec-link div.sec-link-inner a.chumaru:hover {
    background-color: #ff6868;
  }
}
section.sec-link div.sec-link-inner a.chumaru div.chumaru-img {
  width: calc(104 / 375 * 100vw);
  margin-right: 1.4%;
}
@media screen and (min-width: 768px) {
  section.sec-link div.sec-link-inner a.chumaru div.chumaru-img {
    width: 29%;
    margin-right: 2%;
  }
}
section.sec-link div.sec-link-inner a.recruit {
  background: linear-gradient(180deg, #13D58E 0%, #6FDF7A 54.81% 50%, #6FDF7A 54.81% 100%);
  margin: calc(19 / 375 * 100vw) auto 0;
  padding: calc(27 / 375 * 100vw) 0 calc(27 / 375 * 100vw) calc(27 / 375 * 100vw);
  background-size: 100% 200%;
  box-sizing: border-box;
}
@media screen and (min-width: 768px) {
  section.sec-link div.sec-link-inner a.recruit {
    margin: calc(42 / 1366 * 100vw) auto 0;
    padding: calc(42 / 1366 * 100vw) 0 calc(42 / 1366 * 100vw) calc(72 / 1366 * 100vw);
  }
  section.sec-link div.sec-link-inner a.recruit:hover {
    background-position: bottom;
  }
}
section.sec-link div.sec-link-inner a.recruit p {
  margin-top: 0;
  font-size: calc(26 / 375 * 100vw);
}
@media screen and (min-width: 768px) {
  section.sec-link div.sec-link-inner a.recruit p {
    font-size: calc(48 / 1366 * 100vw);
  }
}
section.sec-link div.sec-link-inner a.recruit p .en {
  transition: all 0.3s;
}
section.sec-link div.sec-link-inner a.recruit p .ja {
  font-size: calc(16 / 375 * 100vw);
  font-weight: 500;
}
@media screen and (min-width: 768px) {
  section.sec-link div.sec-link-inner a.recruit p .ja {
    font-size: calc(16 / 1366 * 100vw);
  }
}
section.sec-link div.sec-link-inner a p {
  font-size: calc(30 / 375 * 100vw);
  margin-top: 10%;
  color: var(--color-main);
}
@media screen and (min-width: 768px) {
  section.sec-link div.sec-link-inner a p {
    margin-top: 8%;
    font-size: max(10px, 48 / 1366 * 100vw);
  }
}
@media screen and (min-width: 1000px) {
  section.sec-link div.sec-link-inner a p {
    margin-top: 10%;
  }
}
section.sec-link div.sec-link-inner a p .en {
  font-family: var(--font-unbounded);
}
section.sec-link div.sec-link-inner a p .en .m-btn-arrow {
  display: inline-block;
  width: 0.6em;
}
section.sec-link div.sec-link-inner a p .ja {
  display: block;
  font-size: calc(13 / 375 * 100vw);
  line-height: 1em;
  margin-top: 0.4em;
}
@media screen and (min-width: 768px) {
  section.sec-link div.sec-link-inner a p .ja {
    font-size: max(10px, 12 / 1366 * 100vw);
    margin-top: 1em;
  }
}

section.sec-news {
  box-sizing: border-box;
  padding: calc(96 / 375 * 100vw) calc(25 / 375 * 100vw);
}
@media screen and (min-width: 768px) {
  section.sec-news {
    padding: calc(152 / 1366 * 100vw) calc(98 / 1366 * 100vw) calc(135 / 1366 * 100vw);
  }
}
@media screen and (min-width: 768px) {
  section.sec-news div.sec-news-inner {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
}
section.sec-news h2 {
  line-height: 1em;
  font-size: calc(30 / 375 * 100vw);
  color: var(--color-main);
}
@media screen and (min-width: 768px) {
  section.sec-news h2 {
    font-size: calc(60 / 1366 * 100vw);
  }
}
section.sec-news h2 span {
  display: block;
}
section.sec-news h2 span.en {
  font-family: var(--font-unbounded);
  letter-spacing: 0.05em;
}
section.sec-news h2 span.ja {
  font-size: calc(14 / 375 * 100vw);
  margin-top: 0.2em;
}
@media screen and (min-width: 768px) {
  section.sec-news h2 span.ja {
    margin-top: 0;
    font-size: 0.3em;
  }
}
@media screen and (min-width: 768px) {
  section.sec-news ul {
    width: 54%;
  }
}
section.sec-news ul li a {
  display: block;
  position: relative;
  color: #000;
  border-bottom: solid 1px #BCBCBC;
  padding: calc(20 / 375 * 100vw) 0;
}
@media screen and (min-width: 768px) {
  section.sec-news ul li a {
    padding: calc(20 / 1366 * 100vw) 0;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: flex-start;
    transition: all 0.3s;
  }
  section.sec-news ul li a:hover .m-btn-arrow svg:nth-of-type(1) {
    transform: translate(120%, -120%);
  }
  section.sec-news ul li a:hover .m-btn-arrow svg:nth-of-type(2) {
    transform: translate(0, 0);
  }
  section.sec-news ul li a:hover {
    color: #3BB961;
  }
  section.sec-news ul li a:hover path {
    stroke: #3BB961;
  }
}
section.sec-news ul li a time {
  display: block;
  font-family: var(--font-unbounded);
  font-weight: 300;
  width: 20%;
  line-height: 1.2em;
  font-size: calc(11 / 375 * 100vw);
  margin-bottom: 0.2em;
}
@media screen and (min-width: 768px) {
  section.sec-news ul li a time {
    margin-top: 0.45em;
    margin-bottom: 0;
    width: 38%;
    font-size: max(10px, 14 / 1366 * 100vw);
  }
}
section.sec-news ul li a p {
  width: 80%;
}
@media screen and (min-width: 768px) {
  section.sec-news ul li a p {
    width: 50%;
    font-weight: 400;
    font-size: clamp(10px, 16 / 1366 * 100vw, 20px);
    line-height: 1.8em;
    letter-spacing: 0.02em;
  }
}
section.sec-news ul li a .m-btn-arrow {
  position: absolute;
  bottom: calc(25 / 375 * 100vw);
  right: 0;
}
@media screen and (min-width: 768px) {
  section.sec-news ul li a .m-btn-arrow {
    bottom: 0;
    position: relative;
    margin-top: 0.2em;
    width: 2vw;
  }
}/*# sourceMappingURL=style.css.map */