@charset "UTF-8";

/*----------------------------------
 cssアニメーション
-----------------------------------*/
@-webkit-keyframes faceSwing {
  0% {
    -webkit-transform: rotate(-38deg);
    transform: rotate(-38deg);
  }

  50% {
    -webkit-transform: rotate(-22deg);
    transform: rotate(-22deg);
  }

  100% {
    -webkit-transform: rotate(-38deg);
    transform: rotate(-38deg);
  }
}

@keyframes faceSwing {
  0% {
    -webkit-transform: rotate(-38deg);
    transform: rotate(-38deg);
  }

  50% {
    -webkit-transform: rotate(-22deg);
    transform: rotate(-22deg);
  }

  100% {
    -webkit-transform: rotate(-38deg);
    transform: rotate(-38deg);
  }
}

@-webkit-keyframes handSwing02 {
  0% {
    -webkit-transform: rotate(10deg);
    transform: rotate(10deg);
  }

  50% {
    -webkit-transform: rotate(-10deg);
    transform: rotate(-10deg);
  }

  100% {
    -webkit-transform: rotate(10deg);
    transform: rotate(10deg);
  }
}

@keyframes handSwing02 {
  0% {
    -webkit-transform: rotate(10deg);
    transform: rotate(10deg);
  }

  50% {
    -webkit-transform: rotate(-10deg);
    transform: rotate(-10deg);
  }

  100% {
    -webkit-transform: rotate(10deg);
    transform: rotate(10deg);
  }
}

@-webkit-keyframes handSwing {
  0% {
    -webkit-transform: rotate(-8deg);
    transform: rotate(-8deg);
  }

  50% {
    -webkit-transform: rotate(8deg);
    transform: rotate(8deg);
  }

  100% {
    -webkit-transform: rotate(-8deg);
    transform: rotate(-8deg);
  }
}

@keyframes handSwing {
  0% {
    -webkit-transform: rotate(-8deg);
    transform: rotate(-8deg);
  }

  50% {
    -webkit-transform: rotate(8deg);
    transform: rotate(8deg);
  }

  100% {
    -webkit-transform: rotate(-8deg);
    transform: rotate(-8deg);
  }
}

@-webkit-keyframes scale {
  0% {
    scale: 0%;
  }

  100% {
    -webkit-transform: 100%;
    transform: 100%;
  }
}

@keyframes scale {
  0% {
    scale: 0%;
  }

  100% {
    -webkit-transform: 100%;
    transform: 100%;
  }
}

@-webkit-keyframes waveX {
  0% {
    -webkit-transform: translateX(-40px);
    transform: translateX(-40px);
  }

  50% {
    -webkit-transform: translateX(40px);
    transform: translateX(40px);
  }

  100% {
    -webkit-transform: translateX(-40px);
    transform: translateX(-40px);
  }
}

@keyframes waveX {
  0% {
    -webkit-transform: translateX(-40px);
    transform: translateX(-40px);
  }

  50% {
    -webkit-transform: translateX(40px);
    transform: translateX(40px);
  }

  100% {
    -webkit-transform: translateX(-40px);
    transform: translateX(-40px);
  }
}

@-webkit-keyframes waveY {
  0%, 100% {
    translate: 0 0;
  }

  50% {
    translate: 0 -12px;
  }
}

@keyframes waveY {
  0%, 100% {
    translate: 0 0;
  }

  50% {
    translate: 0 -12px;
  }
}

/*----------------------------------
 jsアニメーション
-----------------------------------*/
.animated__fadeIn {
  -webkit-transform: translateY(1.25rem);
  transform: translateY(1.25rem);
  opacity: 0;
  -webkit-transition: opacity 1s ease 0.2s, -webkit-transform 1.2s ease;
  transition: opacity 1s ease 0.2s, -webkit-transform 1.2s ease;
  transition: transform 1.2s ease, opacity 1s ease 0.2s;
  transition: transform 1.2s ease, opacity 1s ease 0.2s, -webkit-transform 1.2s ease;
}

.animated__fadeIn.js-show {
  -webkit-transform: translateY(0);
  transform: translateY(0);
  opacity: 1;
}

.animated__fadeIn--bg {
  -webkit-transform: translateX(100%);
  transform: translateX(100%);
  -webkit-transition: -webkit-transform 1.5s ease;
  transition: -webkit-transform 1.5s ease;
  transition: transform 1.5s ease;
  transition: transform 1.5s ease, -webkit-transform 1.5s ease;
}

.animated__fadeIn--bg.js-show {
  -webkit-transform: translateX(42%);
  transform: translateX(42%);
}

.animated__slideIn--right {
  -webkit-transform: translateY(100%);
  transform: translateY(100%);
  -webkit-transition: -webkit-transform 0.5s ease-out;
  transition: -webkit-transform 0.5s ease-out;
  transition: transform 0.5s ease-out;
  transition: transform 0.5s ease-out, -webkit-transform 0.5s ease-out;
}

.animated__slideIn--right.js-show {
  -webkit-transform: translateY(0%);
  transform: translateY(0%);
}

.animated__slideIn--left {
  -webkit-transition: -webkit-transform 1s ease-out;
  transition: -webkit-transform 1s ease-out;
  transition: transform 1s ease-out;
  transition: transform 1s ease-out, -webkit-transform 1s ease-out;
  -webkit-transform-origin: bottom left;
  transform-origin: bottom left;
}

.animated__slideIn--left.js-show {
  -webkit-transform: rotate(-15deg);
  transform: rotate(-15deg);
}

.animated__fadeUp--sb {
  -webkit-transform: translate(-18%, 20%);
  transform: translate(-18%, 20%);
  -webkit-transition: -webkit-transform 1.5s ease;
  transition: -webkit-transform 1.5s ease;
  transition: transform 1.5s ease;
  transition: transform 1.5s ease, -webkit-transform 1.5s ease;
}

.animated__fadeUp--sb.js-show {
  -webkit-transform: translate(-18%, -56%);
  transform: translate(-18%, -56%);
}

@media (min-width: 768px) {
  .animated__fadeUp--sb {
    -webkit-transform: translate(5%, 20%);
    transform: translate(5%, 20%);
    -webkit-transition: -webkit-transform 1.5s ease;
    transition: -webkit-transform 1.5s ease;
    transition: transform 1.5s ease;
    transition: transform 1.5s ease, -webkit-transform 1.5s ease;
  }

  .animated__fadeUp--sb.js-show {
    -webkit-transform: translate(5%, -56%);
    transform: translate(5%, -56%);
  }
}

@media (min-width: 1024px) {
  .animated__fadeUp--sb {
    -webkit-transform: translate(-5%, 20%);
    transform: translate(-5%, 20%);
    -webkit-transition: -webkit-transform 1.5s ease;
    transition: -webkit-transform 1.5s ease;
    transition: transform 1.5s ease;
    transition: transform 1.5s ease, -webkit-transform 1.5s ease;
  }

  .animated__fadeUp--sb.js-show {
    -webkit-transform: translate(-5%, -56%);
    transform: translate(-5%, -56%);
  }
}

.animated__fadeUp--sb02 {
  -webkit-transform: translate(0%, 20%);
  transform: translate(0%, 20%);
  -webkit-transition: -webkit-transform 1.5s ease;
  transition: -webkit-transform 1.5s ease;
  transition: transform 1.5s ease;
  transition: transform 1.5s ease, -webkit-transform 1.5s ease;
}

.animated__fadeUp--sb02.js-show {
  -webkit-transform: translate(0%, -56%);
  transform: translate(0%, -56%);
}

.animated__fadeUp--wk {
  -webkit-transform: translateY(100%);
  transform: translateY(100%);
  -webkit-transition: -webkit-transform 1.5s ease;
  transition: -webkit-transform 1.5s ease;
  transition: transform 1.5s ease;
  transition: transform 1.5s ease, -webkit-transform 1.5s ease;
}

.animated__fadeUp--wk.js-show {
  -webkit-transform: translateY(-99%);
  transform: translateY(-99%);
}

.animated__fadeUp--wk02 {
  -webkit-transform: translateY(160%);
  transform: translateY(160%);
  -webkit-transition: -webkit-transform 1s ease 0.5s;
  transition: -webkit-transform 1s ease 0.5s;
  transition: transform 1s ease 0.5s;
  transition: transform 1s ease 0.5s, -webkit-transform 1s ease 0.5s;
}

.animated__fadeUp--wk02.js-show {
  -webkit-transform: translateY(0%);
  transform: translateY(0%);
}

/*----------------------------------
  ボタン
-----------------------------------*/
.c-btn {
  background-color: #000000;
  color: #ffffff;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  padding: 0.9375rem 1.5625rem;
  min-width: 13.125rem;
  position: relative;
}

.c-btn p {
  font-size: 1rem;
}

@media (min-width: 768px) {
  .c-btn p {
    font-size: 1.125rem;
  }
}

.c-btn::after {
  content: "";
  position: absolute;
  background: url("https://maq-billmgmt.com/system_panel/uploads/images/btn-hand.png") no-repeat center/contain;
  aspect-ratio: 54/68;
  width: 3.375rem;
  right: -1.25rem;
  bottom: -1.25rem;
  -webkit-transform-origin: right bottom;
  transform-origin: right bottom;
  -webkit-animation: handSwing 1.5s ease-in-out infinite;
  animation: handSwing 1.5s ease-in-out infinite;
}

@media (any-hover: hover) {
  .c-btn:hover::after {
    -webkit-animation-play-state: paused;
    animation-play-state: paused;
  }
}

@keyframes handSwing {
  0% {
    -webkit-transform: rotate(-18deg);
    transform: rotate(-18deg);
  }

  50% {
    -webkit-transform: rotate(-2deg);
    transform: rotate(-2deg);
  }

  100% {
    -webkit-transform: rotate(-18deg);
    transform: rotate(-18deg);
  }
}

.c-btn--lg {
  min-width: 14.6875rem;
}

/*----------------------------------
  タイトル
-----------------------------------*/
.c-section-ttl {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
}


.c-section-ttl--n {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
}

.c-section-ttl--flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-column-gap: 1.25rem;
  -moz-column-gap: 1.25rem;
  column-gap: 1.25rem;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

.c-section-ttl--flex .c-section-ttl__ja {
  -ms-flex-item-align: center;
  align-self: center;
  font-weight: 700;
}

.c-section-ttl--flex .c-section-ttl__en {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  font-family: "Lato", sans-serif;
  font-size: max(2rem, 25.6px);
}

@media (min-width: 0px) {
  .c-section-ttl--flex .c-section-ttl__en {
    font-size: 2rem;
  }
}

.c-section-ttl--flex .c-section-ttl__en {
  font-weight: 700;
  line-height: 1.25;
  letter-spacing: 0.046875em;
}

@media (min-width: 768px) {
  .c-section-ttl--flex .c-section-ttl__en {
    font-size: max(2.75rem, 35.2px);
    font-weight: 700;
    line-height: 1.1363636364;
    letter-spacing: 0.0340909091em;
  }
}

@media (min-width: 768px) and (min-width: 0px) {
  .c-section-ttl--flex .c-section-ttl__en {
    font-size: 2.75rem;
  }
}

.c-section-ttl__en {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  font-family: "Lato", sans-serif;
  font-size: max(3.4375rem, 44px);
}

@media (min-width: 0px) {
  .c-section-ttl__en {
    font-size: 3.4375rem;
  }
}

.c-section-ttl__en {
  font-weight: 500;
  line-height: 1.0909090909;
  letter-spacing: 0.0272727273em;
}

@media (min-width: 768px) {
  .c-section-ttl__en {
    font-size: max(5rem, 64px);
    font-weight: 500;
    line-height: 1.375;
    letter-spacing: 0.01875em;
  }
}

@media (min-width: 768px) and (min-width: 0px) {
  .c-section-ttl__en {
    font-size: 5rem;
  }
}

.c-section-ttl__ja {
  position: relative;
  -ms-flex-item-align: end;
  align-self: flex-end;
  -webkit-transform: translateX(0.625rem);
  transform: translateX(0.625rem);
  -webkit-margin-before: 0.3125rem;
  margin-block-start: 0.3125rem;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  -webkit-padding-after: 0.3125rem;
  padding-block-end: 0.3125rem;
  padding-inline: 0.625rem;
  border-bottom: 1px solid #000000;
  font-size: max(0.875rem, 11.2px);
}

@media (min-width: 0px) {
  .c-section-ttl__ja {
    font-size: 0.875rem;
  }
}

.c-section-ttl__ja {
  font-weight: 400;
  line-height: 1.4285714286;
  letter-spacing: 0em;
}

@media (min-width: 768px) {
  .c-section-ttl__ja {
    font-size: max(1.25rem, 16px);
    font-weight: 500;
    line-height: 1.5;
    letter-spacing: 0em;
  }
}

@media (min-width: 768px) and (min-width: 0px) {
  .c-section-ttl__ja {
    font-size: 1.25rem;
  }
}

.c-section-ttl__ja::after {
  content: "";
  position: absolute;
  bottom: -12px;
  right: 20px;
  background: #000000;
  width: 1px;
  height: 14px;
  -webkit-transform: rotate(-50deg);
  transform: rotate(-50deg);
}

/*----------------------------------
  dl
-----------------------------------*/
.c-dl {
  display: grid;
  grid-template-columns: 7.25rem 1fr;
  padding-block: 1.5625rem;
  border-bottom: 1px solid #b2b2b2;
}

@media (min-width: 768px) {
  .c-dl {
    grid-template-columns: 11.75rem 1fr;
  }
}

.c-dl:last-child {
  border-bottom: none;
}


.c-dt {
  font-size: max(0.75rem, 9.6px);
}

@media (min-width: 0px) {
  .c-dt {
    font-size: 0.75rem;
  }
}

.c-dt {
  font-weight: 700;
  line-height: 2;
  letter-spacing: 0.035em;
  color: #000;
}

@media (min-width: 768px) {
  .c-dt {
    font-size: max(0.875rem, 11.2px);
    font-weight: 700;
    line-height: 2.1428571429;
    letter-spacing: 0.03em;
  }
}

@media (min-width: 768px) and (min-width: 0px) {
  .c-dt {
    font-size: 0.875rem;
  }
}

.c-dd {
  font-size: max(0.75rem, 9.6px);
}

@media (min-width: 0px) {
  .c-dd {
    font-size: 0.75rem;
  }
}

.c-dd {
  font-weight: 500;
  line-height: 2;
  letter-spacing: 0.035em;
  color: #000;
}

@media (min-width: 768px) {
  .c-dd {
    font-size: max(0.875rem, 11.2px);
    font-weight: 500;
    line-height: 2.1428571429;
    letter-spacing: 0.03em;
  }
}

@media (min-width: 768px) and (min-width: 0px) {
  .c-dd {
    font-size: 0.875rem;
  }
}

.c-dt,
.c-dd {
  width: 100%;
}

/*----------------------------------
　メディア
-----------------------------------*/
.c-media {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  row-gap: 3.125rem;
}

@media (min-width: 768px) {
  .c-media {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-column-gap: 1.875rem;
    -moz-column-gap: 1.875rem;
    column-gap: 1.875rem;
  }
}

@media (min-width: 768px) {
  .c-media--reverse {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse;
  }
}

.c-media__img {
  width: 100%;
  border-radius: 0.625rem;
  aspect-ratio: 6/4;
}

@media (min-width: 768px) {
  .c-media__img {
    aspect-ratio: 541/814;
    width: 47.1254355401%;
  }
}

.c-media__img img {
  -o-object-fit: cover;
  object-fit: cover;
  -o-object-position: center;
  object-position: center;
  height: 100%;
  border-radius: inherit;
}

.c-media__info {
  width: 100%;
}

@media (min-width: 768px) {
  .c-media__info {
    width: 47.3867595819%;
  }
}

.c-media__ttl-en {
  color: #0391db;
  font-size: max(2rem, 25.6px);
}

@media (min-width: 0px) {
  .c-media__ttl-en {
    font-size: 2rem;
  }
}

.c-media__ttl-en {
  font-weight: 700;
  line-height: 1.25;
  letter-spacing: 0.03em;
}

.c-media__ttl-ja {
  color: #a8a8a8;
  font-size: max(0.875rem, 11.2px);
}

@media (min-width: 0px) {
  .c-media__ttl-ja {
    font-size: 0.875rem;
  }
}

.c-media__ttl-ja {
  font-weight: 700;
  line-height: 1.4285714286;
  letter-spacing: 0.03em;
  -webkit-margin-before: 0.625rem;
  margin-block-start: 0.625rem;
}

.c-media__read {
  font-size: max(0.875rem, 11.2px);
}

@media (min-width: 0px) {
  .c-media__read {
    font-size: 0.875rem;
  }
}

.c-media__read {
  font-weight: 500;
  line-height: 2.1428571429;
  letter-spacing: 0.03em;
  -webkit-margin-before: 1.5625rem;
  margin-block-start: 1.5625rem;
}

.c-media__list {
  display: grid;
  row-gap: 0.9375rem;
  -webkit-margin-before: 2.5rem;
  margin-block-start: 2.5rem;
}

.c-media__item {
  padding: 1.5625rem;
  background-color: #ffffff;
  border-radius: 0.625rem;
}

@media (min-width: 768px) {
  .c-media__item {
    padding: 2.5rem;
  }
}

.c-media__head {
  color: #0391db;
  font-size: max(1.25rem, 16px);
}

@media (min-width: 0px) {
  .c-media__head {
    font-size: 1.25rem;
  }
}

.c-media__head {
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0.08em;
}

.c-media__text {
  -webkit-margin-before: 0.625rem;
  margin-block-start: 0.625rem;
  font-size: max(0.875rem, 11.2px);
}

@media (min-width: 0px) {
  .c-media__text {
    font-size: 0.875rem;
  }
}

.c-media__text {
  font-weight: 500;
  line-height: 2.1428571429;
  letter-spacing: 0.03em;
}

.c-media__detail {
  font-size: max(0.875rem, 11.2px);
}

@media (min-width: 0px) {
  .c-media__detail {
    font-size: 0.875rem;
  }
}

.c-media__detail {
  font-weight: 500;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-column-gap: 0.625rem;
  -moz-column-gap: 0.625rem;
  column-gap: 0.625rem;
  -webkit-margin-before: 1.5625rem;
  margin-block-start: 1.5625rem;
}

.c-media__detail p {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  text-decoration: underline;
  text-decoration-color: #d5e7f2;
  text-underline-offset: 0.375rem;
}

.c-media__detail-img {
  align-self: flex-end;
  width: 1.375rem;
  height: 1.375rem;
  border-radius: 0.125rem;
  background-color: #004fa4;
  display: grid;
  place-items: center;
}

.c-media__detail-img img {
  width: 0.65rem;
  height: 0.68125rem;
}

/*----------------------------------
  上部カテゴリリスト
-----------------------------------*/
.c-blog__menu .webgene-blog {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-column-gap: 0.625rem;
  -moz-column-gap: 0.625rem;
  column-gap: 0.625rem;
  gap: 0.625rem;
}

.c-blog__menu .c-blog__item {
  font-size: 0.75rem;
  line-height: 1.1875rem;
  padding: 0.375rem 1.5625rem;
  background-color: #000;
  border-radius: 100vmax;
  color: #ffffff;
  border: 1px solid #000;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
}

@media (min-width: 768px) {
  .c-blog__menu .c-blog__item {
    padding: 0.9375rem 3.4375rem;
    font-size: 0.8125rem;
    min-width: 9.375rem;
  }
}

@media (any-hover: hover) {
  .c-blog__menu .c-blog__item:hover {
    background-color: #ffffff;
    color: #000;
    opacity: 1;
  }
}

.c-blog__item.is-selected {
  background-color: #ffffff;
  color: #000;
}

/*----------------------------------
  works    記事アイテム 詳細ページと共通
-----------------------------------*/
.c-works__img-wrap {
  border: 1px solid #000;
  -webkit-box-shadow: 5px 5px 0 #321510;
  box-shadow: 5px 5px 0 #321510;
}

.c-works__img {
  aspect-ratio: 365/240;
  overflow: hidden;
}

.c-works__img img {
  width: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  height: 100%;
}

.c-works__info {
  -webkit-margin-before: 1.5625rem;
  margin-block-start: 1.5625rem;
}

.c-works__meta {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-column-gap: 1.25rem;
  -moz-column-gap: 1.25rem;
  column-gap: 1.25rem;
  font-weight: 500;
}

.c-works__date {
  font-size: 0.875rem;
  line-height: 1rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: stretch;
  -ms-flex-align: stretch;
  align-items: stretch;
  -webkit-column-gap: 0.625rem;
  -moz-column-gap: 0.625rem;
  column-gap: 0.625rem;
  color: #000;
}

.c-works__tag {
  background-color: #000;
  font-size: 0.75rem;
  line-height: 1.0625rem;
  border-radius: 100vmax;
  padding: 0.1875rem 0.625rem;
  color: #ff6f67;
}

.c-works__title {
  color: #000;
  -webkit-margin-before: 0.625rem;
  margin-block-start: 0.625rem;
  text-overflow: ellipsis;
  font-size: max(1rem, 12.8px);
}

@media (min-width: 0px) {
  .c-works__title {
    font-size: 1rem;
  }
}

.c-works__title {
  font-weight: 500;
  line-height: 1.875;
  letter-spacing: 0.02625em;
}

/*----------------------------------
  ニュース
-----------------------------------*/
.p-news__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  row-gap: 0.625rem;
  -webkit-margin-before: 3.125rem;
  margin-block-start: 3.125rem;
}

@media (min-width: 768px) {
  .p-news__list {
    -webkit-margin-before: 4.0625rem;
    margin-block-start: 4.0625rem;
  }
}

.p-news__list .webgene-blog {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  row-gap: 0.625rem;
}

/*----------------------------------
  news 記事アイテム 詳細ページと共通
-----------------------------------*/
/*----------------------------------
  記事アイテム 詳細ページと共通
  top か　newsに記述する
-----------------------------------*/
.c-news__list .webgene-blog {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  row-gap: 0.625rem;
}

.c-news__item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  border-top: 1px dotted #000000;
  padding: 0.9375rem 0;
  gap: 1.25rem;
  -webkit-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
}

@media (min-width: 768px) {
  .c-news__item {
    padding: 1.5625rem 0;
  }
}

@media (any-hover: hover) {
  .c-news__item:hover {
    opacity: 0.7;
  }
}

@media (min-width: 768px) {
  .c-news__item {
    -webkit-column-gap: 3.125rem;
    -moz-column-gap: 3.125rem;
    column-gap: 3.125rem;
  }
}

.c-news__info {
  width: 85%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-flex: 1;
  -ms-flex: 1;
  flex: 1;
  min-width: 0;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
}

.c-news__meta {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-column-gap: 1.5625rem;
  -moz-column-gap: 1.5625rem;
  column-gap: 1.5625rem;
}

.c-news__date {
  font-size: 0.875rem;
  line-height: 1rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  font-weight: 500;
  -webkit-box-align: stretch;
  -ms-flex-align: stretch;
  align-items: stretch;
  -webkit-column-gap: 0.625rem;
  -moz-column-gap: 0.625rem;
  column-gap: 0.625rem;
}

.c-news__tag-wrap {
  min-width: 7.5rem;
}

.c-news__tag {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  border-radius: 100vmax;
  background-color: #000000;
  color: #fa6ab6;
  font-size: 0.75rem;
  line-height: 1.0625rem;
  padding: 0.1875rem 0.75rem;
}

.c-news__title {
  font-size: 0.9375rem;
  font-weight: 500;
  -webkit-margin-before: 0.625rem;
  margin-block-start: 0.625rem;
  min-width: 0;
  width: 100%;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.c-news__arrow img {
  width: 1.25rem;
  height: auto;
  aspect-ratio: 20/20;
  -ms-flex-negative: 0;
  flex-shrink: 0;
}

.c-news__btn {
  -webkit-margin-before: 4.375rem;
  margin-block-start: 4.375rem;
  margin-inline: auto;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}

@media (min-width: 768px) {
  .c-news__btn {
    -webkit-margin-before: 3.75rem;
    margin-block-start: 3.75rem;
    margin-inline: unset;
  }
}

/*----------------------------------
  背景ループ文字
-----------------------------------*/
.bg-text {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-column-gap: 0.625rem;
  -moz-column-gap: 0.625rem;
  column-gap: 0.625rem;
}

.bg-text__track03-wrapper {
  border-top: 1px dotted #000000;
  border-bottom: 1px dotted #000000;
}

.bg-text__track03 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
  -webkit-column-gap: 3.4375rem;
  -moz-column-gap: 3.4375rem;
  column-gap: 3.4375rem;
  white-space: nowrap;
  -webkit-animation: bgLoop 30s linear infinite;
  animation: bgLoop 30s linear infinite;
  -webkit-padding-before: 0.625rem;
  padding-block-start: 0.625rem;
  -webkit-padding-after: 0.625rem;
  padding-block-end: 0.625rem;
}

.bg-text__track03 .bg-text {
  -ms-flex-negative: 0;
  flex-shrink: 0;
  font-size: 0.8125rem;
}

.bg-text__track01-wrapper {
  border-bottom: 1px dotted #000000;
}

.bg-text__track01 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
  -webkit-column-gap: 3.4375rem;
  -moz-column-gap: 3.4375rem;
  column-gap: 3.4375rem;
  white-space: nowrap;
  -webkit-animation: bgLoop 30s linear infinite;
  animation: bgLoop 30s linear infinite;
  -webkit-padding-before: 1.25rem;
  padding-block-start: 1.25rem;
  -webkit-padding-after: 0.625rem;
  padding-block-end: 0.625rem;
}

.bg-text__track01 .bg-text {
  -ms-flex-negative: 0;
  flex-shrink: 0;
  font-size: 0.8125rem;
}

@-webkit-keyframes bgLoop {
  from {
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }

  to {
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
  }
}

@keyframes bgLoop {
  from {
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }

  to {
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
  }
}

.bg-text__track02-wrapper {
  border-top: 1px dotted #000000;
}

.bg-text__track02 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
  -webkit-column-gap: 3.4375rem;
  -moz-column-gap: 3.4375rem;
  column-gap: 3.4375rem;
  white-space: nowrap;
  -webkit-animation: bgLoop2 30s linear infinite;
  animation: bgLoop2 30s linear infinite;
  -webkit-padding-before: 0.625rem;
  padding-block-start: 0.625rem;
  -webkit-padding-after: 1.25rem;
  padding-block-end: 1.25rem;
}

.bg-text__track02 .bg-text {
  -ms-flex-negative: 0;
  flex-shrink: 0;
  font-size: 0.8125rem;
}

@-webkit-keyframes bgLoop2 {
  from {
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
  }

  to {
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
}

@keyframes bgLoop2 {
  from {
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
  }

  to {
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
}

.bg-text--1 {
  --start-rotate: 0deg;
}

.bg-text--2 {
  --start-rotate: -100deg;
}

.bg-text--3 {
  --start-rotate: 180deg;
}

.bg-text--4 {
  --start-rotate: 220deg;
}

.bg-text--1::before,
.bg-text--2::before,
.bg-text--3::before {
  content: "";
  width: 1.5625rem;
  height: 2.1875rem;
  background: url("https://maq-billmgmt.com/system_panel/uploads/images/face01.png") no-repeat center/contain;
  -webkit-animation: spin 4s linear infinite;
  animation: spin 4s linear infinite;
}

.bg-text--4::before {
  content: "";
  width: 1.5625rem;
  height: 2.1875rem;
  background: url("https://maq-billmgmt.com/system_panel/uploads/images/face02.png") no-repeat center/contain;
  -webkit-animation: spin 4s linear infinite;
  animation: spin 4s linear infinite;
}

@-webkit-keyframes spin {
  from {
    -webkit-transform: rotate(var(--start-rotate));
    transform: rotate(var(--start-rotate));
  }

  to {
    -webkit-transform: rotate(calc(var(--start-rotate) + 360deg));
    transform: rotate(calc(var(--start-rotate) + 360deg));
  }
}

@keyframes spin {
  from {
    -webkit-transform: rotate(var(--start-rotate));
    transform: rotate(var(--start-rotate));
  }

  to {
    -webkit-transform: rotate(calc(var(--start-rotate) + 360deg));
    transform: rotate(calc(var(--start-rotate) + 360deg));
  }
}

/*----------------------------------
  下層READセクション
-----------------------------------*/
.c-read {
  background-color: #ff9419;
  -webkit-padding-before: 6.25rem;
  padding-block-start: 6.25rem;
}

@media (min-width: 768px) {
  .c-read {
    -webkit-padding-before: 8.75rem;
    padding-block-start: 8.75rem;
  }
}

.c-read__contents {
  max-width: 51.875rem;
  margin-inline: auto;
  -webkit-margin-after: 3.75rem;
  margin-block-end: 3.75rem;
}

@media (min-width: 768px) {
  .c-read__contents {
    -webkit-margin-after: 5.625rem;
    margin-block-end: 5.625rem;
  }
}

.c-read__ttl {
  -webkit-margin-after: 2.8125rem;
  margin-block-end: 2.8125rem;
  margin-inline: auto;
  font-size: max(1.4375rem, 18.4px);
}

@media (min-width: 0px) {
  .c-read__ttl {
    font-size: 1.4375rem;
  }
}

.c-read__ttl {
  font-weight: 500;
  line-height: 1.5652173913;
  text-align: center;
  position: relative;
  -ms-flex-item-align: end;
  align-self: flex-end;
  -webkit-margin-before: 0.3125rem;
  margin-block-start: 0.3125rem;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  -webkit-padding-after: 0.3125rem;
  padding-block-end: 0.3125rem;
  border-bottom: 2px solid #000000;
}

.c-read__ttl::after {
  content: "";
  position: absolute;
  bottom: -9px;
  left: 20px;
  background: #000000;
  width: 2px;
  height: 10px;
  -webkit-transform: rotate(-50deg);
  transform: rotate(-50deg);
}

@media (min-width: 768px) {
  .c-read__ttl {
    font-size: clamp(26px, 2.5vw, 36px);
    font-weight: 500;
    line-height: 3.3125rem;
  }
}

.c-read__ttl br {
  display: block;
}

@media (min-width: 768px) {
  .c-read__ttl br {
    display: none;
  }
}

.c-read__text+.c-read__text {
  -webkit-margin-before: 1.5625rem;
  margin-block-start: 1.5625rem;
}

@media (min-width: 768px) {
  .c-read__text+.c-read__text {
    -webkit-margin-before: 1.875rem;
    margin-block-start: 1.875rem;
  }
}

.c-read__text {
  font-size: max(0.875rem, 11.2px);
}

@media (min-width: 0px) {
  .c-read__text {
    font-size: 0.875rem;
  }
}

.c-read__text {
  font-weight: 500;
  line-height: 1.7857142857;
}

@media (min-width: 768px) {
  .c-read__text {
    font-size: max(1.125rem, 14.4px);
    font-weight: 500;
    line-height: 1.5;
  }
}

@media (min-width: 768px) and (min-width: 0px) {
  .c-read__text {
    font-size: 1.125rem;
  }
}

/*----------------------------------
  下層SERVICEセクション
-----------------------------------*/
.c-service__wrap {
  background-color: #ff9419;
}

.c-service {
  -webkit-padding-before: 5rem;
  padding-block-start: 5rem;
  -webkit-padding-after: 6.25rem;
  padding-block-end: 6.25rem;
  border-radius: 2.5rem 2.5rem 0 0;
  background: -webkit-gradient(linear, left top, left bottom, from(#fa6859), to(#f440bc));
  background: linear-gradient(to bottom, #fa6859, #f440bc);
}

@media (min-width: 768px) {
  .c-service {
    -webkit-padding-before: 6.25rem;
    padding-block-start: 6.25rem;
    -webkit-padding-after: 8.125rem;
    padding-block-end: 8.125rem;
  }
}

.c-service__list {
  display: grid;
  grid-template-columns: 1fr;
  row-gap: 4.375rem;
  -webkit-margin-before: 2.5rem;
  margin-block-start: 2.5rem;
}

@media (min-width: 580px) {
  .c-service__list {
    -webkit-margin-before: 2.5rem;
    margin-block-start: 2.5rem;
    grid-template-columns: repeat(2, 1fr);
    -webkit-column-gap: 1.25rem;
    -moz-column-gap: 1.25rem;
    column-gap: 1.25rem;
  }
}

@media (min-width: 1024px) {
  .c-service__list {
    grid-template-columns: repeat(3, 1fr);
    -webkit-column-gap: 3.125rem;
    -moz-column-gap: 3.125rem;
    column-gap: 3.125rem;
    -webkit-margin-before: 3.75rem;
    margin-block-start: 3.75rem;
  }
}

.c-service__item .c-service__text--wrap:last-child .c-service__text {
  border: none;
}

.c-service__item .c-service__text--wrap:last-child .c-service__text {
  -webkit-padding-after: 2.5rem;
  padding-block-end: 2.5rem;
}

.c-service__item {
  background-color: #ffffff;
  border: 1px solid #000;
  margin-inline: auto;
}

.c-service__item--pink .c-service__head {
  color: #fa6ab7;
}

.c-service__item--pink .c-service__ttl {
  background-color: #fa6ab7;
}

.c-service__item--blue .c-service__head {
  color: #4ca6c5;
}

.c-service__item--blue .c-service__ttl {
  background-color: #4ca6c5;
}

.c-service__item--orange .c-service__head {
  color: #ff9418;
}

.c-service__item--orange .c-service__ttl {
  background-color: #ff9418;
}

.c-service__ttl {
  font-size: 1rem;
  padding-block: 0.8125rem;
  font-weight: 600;
  text-align: center;
}

@media (min-width: 768px) {
  .c-service__ttl {
    font-size: 1.375rem;
    padding-block: 1.125rem;
  }
}

.c-service__text--wrap {
  padding-inline: 0.9375rem;
  -webkit-padding-before: 1.25rem;
  padding-block-start: 1.25rem;
}

@media (min-width: 768px) {
  .c-service__text--wrap {
    padding-inline: 1.25rem;
    -webkit-padding-before: 1.375rem;
    padding-block-start: 1.375rem;
  }
}

.c-service__subttl {
  -webkit-margin-after: 1.5625rem;
  margin-block-end: 1.5625rem;
  font-size: 0.875rem;
  font-weight: 600;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  -webkit-padding-after: 0.3125rem;
  padding-block-end: 0.3125rem;
  border-bottom: 1px solid #000000;
  position: relative;
}

.c-service__subttl::after {
  content: "";
  position: absolute;
  bottom: -9px;
  left: 20px;
  background: #000000;
  width: 1px;
  height: 10px;
  -webkit-transform: rotate(-50deg);
  transform: rotate(-50deg);
}

@media (min-width: 768px) {
  .c-service__subttl {
    font-size: 1.25rem;
  }
}

.c-service__head {
  font-size: 0.875rem;
  font-weight: 600;
}

@media (min-width: 768px) {
  .c-service__head {
    font-size: 1rem;
  }
}

.c-service__text {
  -webkit-padding-before: 0.625rem;
  padding-block-start: 0.625rem;
  font-size: 0.75rem;
  font-weight: 500;
  border-bottom: 1px solid #000;
  -webkit-padding-after: 1.25rem;
  padding-block-end: 1.25rem;
}

@media (min-width: 768px) {
  .c-service__text {
    -webkit-padding-after: 1.375rem;
    padding-block-end: 1.375rem;
    font-size: 1rem;
  }
}

/*----------------------------------
  下層FEATURE
-----------------------------------*/
.c-feature {
  background-color: #f96463;
  -webkit-padding-after: 6.25rem;
  padding-block-end: 6.25rem;
}

@media (min-width: 768px) {
  .c-feature {
    -webkit-padding-after: 8.75rem;
    padding-block-end: 8.75rem;
  }
}

.c-feature__list {
  -webkit-margin-before: 3.125rem;
  margin-block-start: 3.125rem;
  display: grid;
  grid-template-columns: 1fr;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}

@media (min-width: 768px) {
  .c-feature__list {
    -webkit-margin-before: 3.75rem;
    margin-block-start: 3.75rem;
    -webkit-column-gap: 1.25rem;
    -moz-column-gap: 1.25rem;
    column-gap: 1.25rem;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    grid-template-columns: repeat(3, 1fr);
  }
}

@media (min-width: 1024px) {
  .c-feature__list {
    -webkit-column-gap: 2.5rem;
    -moz-column-gap: 2.5rem;
    column-gap: 2.5rem;
  }
}

.c-feature__item {
  grid-template-rows: subgrid;
  display: grid;
  grid-row: span 3;
  max-width: 100%;
  -webkit-margin-before: 3.75rem;
  margin-block-start: 3.75rem;
}

@media (min-width: 768px) {
  .c-feature__item {
    -webkit-margin-before: 0rem;
    margin-block-start: 0rem;
    max-width: 22.75rem;
  }
}

.c-feature__item:first-child {
  -webkit-margin-before: 0rem;
  margin-block-start: 0rem;
}

.c-feature__img {
  grid-row: 1;
  border: 1px solid #000;
  -webkit-filter: drop-shadow(4px 4px 0 rgb(0, 0, 0));
  filter: drop-shadow(4px 4px 0 rgb(0, 0, 0));
  aspect-ratio: 364/290;
  width: 100%;
  overflow: hidden;
}

.c-feature__img img {
  -o-object-fit: cover;
  object-fit: cover;
  -o-object-position: center;
  object-position: center;
  height: 100%;
  width: 100%;
  border-radius: inherit;
}

.c-feature__head {
  grid-row: 2;
  -webkit-margin-before: 1.25rem;
  margin-block-start: 1.25rem;
  text-align: center;
  font-size: max(1.25rem, 16px);
}

@media (min-width: 0px) {
  .c-feature__head {
    font-size: 1.25rem;
  }
}

.c-feature__head {
  font-weight: 500;
  line-height: 1.5;
}

@media (min-width: 768px) {
  .c-feature__head {
    font-size: max(1.375rem, 17.6px);
    font-weight: 600;
    line-height: 1.3636363636;
    -webkit-margin-before: 1.5625rem;
    margin-block-start: 1.5625rem;
  }
}

@media (min-width: 768px) and (min-width: 0px) {
  .c-feature__head {
    font-size: 1.375rem;
  }
}

.c-feature__text {
  grid-row: 3;
  -webkit-margin-before: 1.25rem;
  margin-block-start: 1.25rem;
  font-size: 0.875rem;
  font-weight: 400;
}

@media (min-width: 768px) {
  .c-feature__text {
    font-size: 1.125rem;
    font-weight: 500;
    -webkit-margin-before: 1.5625rem;
    margin-block-start: 1.5625rem;
  }
}