@charset "UTF-8";
/* ------------------------------------

colors setting

------------------------------------ */
/* ------------------------------------

colors setting の変数ではなく
下記の左側の変数をcssで指定する

×：$black
◯：$dark-text

------------------------------------ */
/*  text-color
*----------------------------------- */
/*  background-color
*----------------------------------- */
/*  border-color
*----------------------------------- */
/*  system-color
*----------------------------------- */
/*  cv
*----------------------------------- */
/*  footer
*----------------------------------- */
/*  menu
*----------------------------------- */
/*  new icon
*----------------------------------- */
/*  horizontal
*----------------------------------- */
/*  slick-color
*----------------------------------- */
.en {
  font-family: alternate-gothic-no-2-d, sans-serif;
  font-weight: 700;
  letter-spacing: 0;
  line-height: 1;
}

.en02 {
  font-family: alternate-gothic-no-2-d, sans-serif;
  font-weight: 700;
  letter-spacing: 0;
  line-height: 1;
}

.yakuhan {
  font-family: "YakuHanJP", ryo-gothic-plusn, sans-serif;
}

/* mobile */
.mv {
  position: relative;
  background: #f6f6f2 url("../images/top/bg_mv.jpg") center bottom/cover no-repeat;
  height: min(910px, 63.195dvw);
}
@media (min-width: 768px) {
  .mv {
    padding: 0 40px;
  }
}
@media (max-width: 767px) {
  .mv {
    height: 211.7948717949dvw;
    background: #f6f6f2 url("../images/top/sp/bg_mv.jpg") center bottom/cover no-repeat;
  }
}
.mv__wrap {
  position: relative;
  height: 100%;
}
@media (min-width: 768px) {
  .mv__wrap {
    max-width: 1200px;
    margin: 0 auto;
    box-sizing: border-box;
  }
  .mv__wrap::before {
    position: absolute;
    top: min(239px, 16.5972222222dvw);
    left: calc(100% + 53px);
    display: block;
    width: 20px;
    height: 283px;
    content: "";
    background: url("../images/top/bg_mv_txt.png") center/contain no-repeat;
    opacity: 0.3;
    line-height: 1;
  }
}
.mv__txt {
  position: absolute;
}
@media (min-width: 768px) {
  .mv__txt {
    top: min(231px, 25.3846153846%);
    left: 0;
  }
}
@media (max-width: 767px) {
  .mv__txt {
    top: 81.7948717949dvw;
    left: 0;
    right: 0;
  }
}
.mv__ttl {
  margin-bottom: 18px;
  font-size: min(3.7rem, 2.5694444444dvw);
  font-weight: 400;
  font-family: alternate-gothic-no-2-d, sans-serif;
  line-height: 1;
  color: #1467b1;
}
@media (max-width: 767px) {
  .mv__ttl {
    margin-bottom: 10px;
    font-size: 27px;
    font-size: 6.9230769231dvw;
    text-align: center;
  }
}
.mv__catch img {
  width: min(437px, 30.3472222222dvw);
}
@media (max-width: 767px) {
  .mv__catch img {
    display: block;
    width: 70dvw;
    margin: 0 auto;
  }
}

.mv-img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
}
.mv-img__item {
  position: absolute;
}
.mv-img__item:nth-of-type(1) {
  top: 41.8681318681%;
  left: 78.25%;
  width: min(198px, 13.75dvw);
}
@media (max-width: 767px) {
  .mv-img__item:nth-of-type(1) {
    top: 16.6666666667dvw;
    left: 17.1794871795dvw;
    width: 22.0512820513dvw;
  }
}
.mv-img__item:nth-of-type(2) {
  top: 10.7692307692%;
  left: 47.4166666667%;
  width: min(316px, 21.9444444444dvw);
}
@media (max-width: 767px) {
  .mv-img__item:nth-of-type(2) {
    top: 23.0769230769dvw;
    left: 45.1282051282dvw;
    width: 43.8461538462dvw;
  }
}
.mv-img__item:nth-of-type(3) {
  top: 12.7472527473%;
  left: 22.3333333333%;
  width: min(208px, 14.4444444444dvw);
}
@media (max-width: 767px) {
  .mv-img__item:nth-of-type(3) {
    top: 56.6666666667dvw;
    left: 5.641025641dvw;
    width: 31.7948717949dvw;
  }
}
.mv-img__item:nth-of-type(4) {
  top: 17.5824175824%;
  left: 79.6666666667%;
  width: min(244px, 16.9444444444dvw);
  z-index: 100;
}
@media (max-width: 767px) {
  .mv-img__item:nth-of-type(4) {
    top: 64.6153846154dvw;
    left: 68.4615384615dvw;
    width: 26.1538461538dvw;
  }
}
.mv-img__item:nth-of-type(5) {
  top: 54.3956043956%;
  left: -1.8333333333%;
  width: min(311px, 21.5972222222dvw);
}
@media (max-width: 767px) {
  .mv-img__item:nth-of-type(5) {
    top: 123.5897435897dvw;
    left: 18.7179487179dvw;
    width: 37.4358974359dvw;
  }
}
.mv-img__item:nth-of-type(6) {
  top: 50.4395604396%;
  left: 54%;
  width: min(158px, 10.9722222222dvw);
}
@media (max-width: 767px) {
  .mv-img__item:nth-of-type(6) {
    top: 131.7948717949dvw;
    left: 61.7948717949dvw;
    width: 30.5128205128dvw;
  }
}
.mv-img__item:nth-of-type(7) {
  top: 57.1428571429%;
  left: 27.8333333333%;
  width: min(247px, 17.1527777778dvw);
}
@media (max-width: 767px) {
  .mv-img__item:nth-of-type(7) {
    top: 153.3333333333dvw;
    left: 8.9743589744dvw;
    width: 36.1538461538dvw;
  }
}

.mv-slide-txt {
  margin: 0 -40px;
  position: absolute;
  left: 0;
  right: 0;
  bottom: 7.032967033%;
  z-index: 2;
}
@media (max-width: 767px) {
  .mv-slide-txt {
    bottom: 9.7435897436dvw;
  }
}
.mv-slide-txt .slide-txt {
  overflow: clip;
  display: flex;
  align-items: center;
  box-sizing: border-box;
  gap: min(38px, 2.6388888889dvw);
}
@media (max-width: 767px) {
  .mv-slide-txt .slide-txt {
    gap: 5.641025641dvw;
  }
}
.mv-slide-txt .slide-txt div {
  animation: slideTxt 60s infinite linear;
}
@keyframes slideTxt {
  0% {
    transform: translateX(0%);
  }
  100% {
    transform: translateX(-100%);
  }
}
.mv-slide-txt .slide-txt img {
  width: min(1451px, 100.7638888889dvw);
  max-width: 1451px;
}
@media (max-width: 767px) {
  .mv-slide-txt .slide-txt img {
    width: 232.5641025641dvw;
    max-width: 232.5641025641dvw;
  }
}

.mv-img__item {
  overflow: hidden;
  width: 100%;
  height: 100%;
}

.mv-img__item picture {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  /* 常に transition を効かせておき、戻す時だけ JS で制御する */
  transition: 0.3s;
  z-index: 1;
  opacity: 0;
}

/* 前面にいる画像 */
.mv-img__item picture.is-top {
  z-index: 2;
  opacity: 1;
}

.concept {
  background-color: #f6f6f2;
  padding: 126px 40px 120px;
  box-sizing: border-box;
}
@media (min-width: 768px) {
  .concept {
    min-height: min(1459px, 101.3194444444dvw);
  }
}
@media (max-width: 767px) {
  .concept {
    padding: 22.5641025641dvw 5.1282051282dvw 41.5384615385dvw;
  }
}
.concept__wrap {
  position: relative;
}
@media (min-width: 768px) {
  .concept__wrap {
    max-width: 1100px;
    margin: 0 auto;
  }
}
.concept__txt {
  position: relative;
  z-index: 2;
}
@media (max-width: 767px) {
  .concept__txt {
    margin-bottom: 22.5641025641dvw;
  }
}
.concept__txt p {
  font-size: 1.6rem;
  line-height: 2.5;
}
@media (max-width: 767px) {
  .concept__txt p {
    font-size: 15px;
    font-size: 3.8461538462dvw;
    line-height: 2.1333333333;
  }
}
.concept__txt p:not(:last-child) {
  margin-bottom: 2.5em;
}
@media (max-width: 767px) {
  .concept__txt p:not(:last-child) {
    margin-bottom: 3.1rem;
  }
}
.concept__txt p b {
  font-size: 2.4rem;
  font-weight: bold;
  line-height: 1.7916666667;
  display: inline-block;
  margin-top: 0.3em;
}
@media (max-width: 767px) {
  .concept__txt p b {
    margin-top: 3.2rem;
    font-size: 24px;
    font-size: 6.1538461538dvw;
  }
}
@media (max-width: 767px) {
  .concept__txt p span {
    display: block;
  }
}
.concept__ttl {
  margin-bottom: 42px;
  font-size: 3.7rem;
  font-weight: 400;
  font-family: alternate-gothic-no-2-d, sans-serif;
  line-height: 1;
  position: relative;
  width: fit-content;
}
@media (max-width: 767px) {
  .concept__ttl {
    margin-bottom: 12.3076923077dvw;
    font-size: 37px;
    font-size: 9.4871794872dvw;
  }
}
.concept__ttl::before {
  position: absolute;
  top: 0.6em;
  left: calc(100% + 26px);
  display: block;
  margin: auto;
  height: 1px;
  width: 263px;
  background-color: #707070;
  content: "";
}
@media (max-width: 767px) {
  .concept__ttl::before {
    left: calc(100% + 6.9230769231dvw);
    width: 67.4358974359dvw;
  }
}
.concept__subttl {
  margin-bottom: 25px;
  font-size: 4.3rem;
  font-weight: bold;
  line-height: 1.511627907;
  color: #25AFC2;
}
@media (max-width: 767px) {
  .concept__subttl {
    margin-bottom: 7.9487179487dvw;
    font-size: 30px;
    font-size: 7.6923076923dvw;
    line-height: 1.5;
  }
}
.concept__subttl span {
  color: #F87236;
}
@media (min-width: 768px) {
  .concept__img {
    position: absolute;
    top: 54px;
    right: 50%;
    z-index: 1;
    transform: translateX(50%);
  }
}
@media (max-width: 767px) {
  .concept__img {
    margin: 0 -5.1282051282dvw;
  }
}
@media (min-width: 768px) {
  .concept__img img {
    max-width: min(1806px, 125.417dvw);
  }
}

.environments {
  margin-bottom: 131px;
}
@media (max-width: 767px) {
  .environments {
    margin-bottom: 23.0769230769dvw;
  }
}
.environments__ttl {
  margin-bottom: 76px;
  line-height: 1;
  font-weight: 500;
  font-size: 2.2rem;
  text-align: center;
}
@media (max-width: 767px) {
  .environments__ttl {
    margin-bottom: 9.4871794872dvw;
    font-size: 17px;
    font-size: 4.358974359dvw;
  }
}
.environments__ttl span {
  margin: -0.32em 0 15px;
  display: block;
  font-size: 13.3rem;
  font-weight: 400;
  font-family: alternate-gothic-no-2-d, sans-serif;
  text-box: trim-both cap alphabetic;
}
@media (max-width: 767px) {
  .environments__ttl span {
    margin: -0.32em 0 4.358974359dvw;
    font-size: 74px;
    font-size: 18.9743589744dvw;
  }
}
.environments__ttl span::first-letter {
  color: #25AFC2;
}
@media (min-width: 768px) {
  .environments__wrap {
    position: relative;
    padding: 0 40px 32px;
  }
  .environments__wrap::before {
    z-index: -1;
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    display: block;
    margin: auto;
    content: "";
    background: linear-gradient(90deg, rgba(255, 255, 255, 0) 0%, #25afc2 40%, #f87236 60%, rgba(255, 255, 255, 0) 100%);
    opacity: 0.22;
  }
}
@media (min-width: 768px) {
  .environments__contents {
    max-width: 1200px;
    margin: 0 auto;
    display: grid;
    gap: 0 30px;
    grid-template-areas: "stable img challenge" "stable btn challenge";
    grid-template-columns: 1fr min(469px, 32.5695dvw) 1fr;
    grid-template-rows: auto 1fr;
  }
}

@media (min-width: 768px) {
  .environments-img {
    grid-area: img;
  }
}
@media (max-width: 767px) {
  .environments-img {
    margin: 0 5.1282051282dvw -88px;
    position: relative;
    z-index: 2;
  }
}
@media (min-width: 768px) {
  .environments-img img {
    width: min(469px, 32.5695dvw);
  }
}

@media (max-width: 767px) {
  .environments-txt {
    position: relative;
  }
}
@media (max-width: 767px) {
  .stable .environments-txt {
    padding: 8vw 5.1282051282dvw 8vw 24.8717948718dvw;
    background: linear-gradient(90deg, #fff 0%, #eefafb 35%, #def5f8 50%, rgba(255, 255, 255, 0) 100%);
  }
}
@media (max-width: 767px) {
  .challenge .environments-txt {
    padding: 26px 5.1282051282dvw 30px;
    min-height: 77.4358974359dvw;
    background: linear-gradient(90deg, #fde3d8 0%, #fde3d8 40%, rgba(255, 255, 255, 0) 100%);
  }
}
.environments-txt__ttl {
  font-size: 4.6rem;
  font-weight: bold;
}
@media (min-width: 768px) {
  .environments-txt__ttl {
    padding: 15px 0 20px;
    margin-bottom: 20px;
  }
}
@media (max-width: 767px) {
  .environments-txt__ttl {
    position: absolute;
    writing-mode: vertical-lr;
    font-size: 46px;
    font-size: 11.7948717949dvw;
  }
}
.stable .environments-txt__ttl {
  color: #25AFC2;
}
@media (min-width: 768px) {
  .stable .environments-txt__ttl {
    position: relative;
  }
  .stable .environments-txt__ttl::before {
    position: absolute;
    top: 0;
    bottom: 0;
    left: -5000px;
    width: 10000px;
    height: 100%;
    z-index: -1;
    background-color: #fff;
    display: block;
    margin: auto;
    content: "";
  }
}
@media (max-width: 767px) {
  .stable .environments-txt__ttl {
    left: 5.1282051282dvw;
  }
}
.challenge .environments-txt__ttl {
  color: #F87236;
}
@media (max-width: 767px) {
  .challenge .environments-txt__ttl {
    right: 8.2051282051dvw;
  }
}
.environments-txt p {
  font-size: 1.5rem;
  line-height: 2.2666666667;
}
@media (max-width: 767px) {
  .environments-txt p {
    font-size: 15px;
    font-size: 3.8461538462dvw;
    line-height: 1.8666666667;
  }
}
.environments-txt__btn {
  margin-top: 20px;
}
@media (max-width: 767px) {
  .environments-txt__btn {
    margin-top: 5.1282051282dvw;
  }
}

@media (min-width: 768px) {
  .stable {
    grid-area: stable;
  }
}
@media (max-width: 767px) {
  .stable {
    margin-bottom: 4.1025641026dvw;
  }
  .stable::before {
    margin-top: 30.102564dvw;
    margin-bottom: 4.1025641026dvw;
    width: 100%;
    height: 18.7179487179dvw;
    background: url("../images/top/sp/txt_stable.svg") center/contain no-repeat;
    display: block;
    content: "";
  }
}

@media (min-width: 768px) {
  .challenge {
    margin-left: auto;
    grid-area: challenge;
  }
}
@media (max-width: 767px) {
  .challenge::before {
    margin-top: 4.1025641026dvw;
    margin-bottom: 4.1025641026dvw;
    width: 100%;
    height: 18.2051282051dvw;
    background: url("../images/top/sp/txt_challenge.svg") center/contain no-repeat;
    display: block;
    content: "";
  }
}

.environments-btn {
  margin-top: 24px;
}
@media (min-width: 768px) {
  .environments-btn {
    grid-area: btn;
  }
}
@media (max-width: 767px) {
  .environments-btn {
    margin-top: 8.7179487179dvw;
  }
}
.environments-btn a {
  margin: 0 auto;
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 48px;
  border-radius: 48px;
  max-width: 225px;
  font-size: 1.5rem;
  width: 100%;
  background-color: #fff;
  box-sizing: border-box;
  border: 1px solid #bebebe;
  position: relative;
}
@media (max-width: 767px) {
  .environments-btn a {
    min-height: 13.3333333333dvw;
    max-width: 56.1538461538dvw;
    font-size: 16px;
    font-size: 4.1025641026dvw;
  }
}
.environments-btn a::before {
  position: absolute;
  top: 0;
  right: 19px;
  bottom: 0;
  display: block;
  margin: auto;
  content: "";
  width: 15px;
  height: 12px;
  background: url("../images/cmn/arrow.svg") center/contain no-repeat;
  transition: 0.3s;
}
@media (max-width: 767px) {
  .environments-btn a::before {
    right: 7.1794871795dvw;
    width: 3.3333333333dvw;
    height: 2.5641025641dvw;
  }
}

.environments-bg-txt {
  max-width: 1191px;
  margin: 27px auto 0;
  padding: 0 40px;
  box-sizing: content-box;
}
@media (max-width: 767px) {
  .environments-bg-txt {
    display: none;
  }
}

.business a {
  background: #03c3c9;
  background: linear-gradient(180deg, #03c3c9 0%, #25afc2 100%);
  position: relative;
}
@media (min-width: 768px) {
  .business a {
    display: grid;
    justify-content: center;
    height: 428px;
    grid-template-columns: 1fr 1fr;
  }
}
@media (max-width: 767px) {
  .business a {
    display: block;
    min-height: 114.1025641026dvw;
    box-sizing: border-box;
    padding: 15.1282051282dvw 5.1282051282dvw 0;
  }
}
.business a::before {
  position: absolute;
  top: 38px;
  z-index: 1;
  display: block;
  margin: auto;
  width: 1132px;
  height: 274px;
  background: url("../images/top/bg_business.svg") center/contain no-repeat;
  content: "";
}
@media (min-width: 768px) {
  .business a::before {
    left: 50%;
    transform: translateX(-50%);
  }
}
@media (max-width: 767px) {
  .business a::before {
    top: 5.3846153846dvw;
    right: 5.1282051282dvw;
    background: url("../images/top/sp/bg_business.svg") center/contain no-repeat;
    width: 24.8717948718dvw;
    height: 102.5641025641dvw;
  }
}
.business a:hover {
  opacity: 1;
}
.business a:hover img {
  opacity: 1;
}
.business__img {
  position: relative;
  z-index: 2;
}
@media (min-width: 768px) {
  .business__img {
    margin: auto 50px 0 auto;
    order: -1;
    align-items: flex-end;
    justify-content: flex-end;
  }
  .business__img img {
    margin-top: -36px;
    max-width: 579px;
    width: 100%;
  }
}
@media (max-width: 767px) {
  .business__img {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    margin: 0 auto;
    max-width: 92.3076923077dvw;
  }
}
.business__txt {
  color: #fff;
  position: relative;
  z-index: 2;
  transition: 0.3s;
}
@media (min-width: 768px) {
  .business__txt {
    margin: auto 0 min(84px, 5.8333333333dvw) 27px;
  }
}
.business__txt p {
  font-size: 4rem;
  font-weight: bold;
  line-height: 1.575;
}
@media (max-width: 767px) {
  .business__txt p {
    font-size: 24px;
    font-size: 6.1538461538dvw;
    line-height: 1.5833333333;
  }
}
a:hover .business__txt {
  opacity: 0.7;
}
.business__ttl {
  margin-bottom: 20px;
  font-size: 1.7rem;
  font-weight: 500;
}
@media (max-width: 767px) {
  .business__ttl {
    margin-bottom: 4.358974359dvw;
    font-size: 16px;
    font-size: 4.1025641026dvw;
  }
}
.business__btn {
  margin-top: 34px;
}
@media (max-width: 767px) {
  .business__btn {
    margin-top: 4.6153846154dvw;
  }
}

.about {
  padding: 100px 40px 122px;
}
@media (max-width: 767px) {
  .about {
    padding: 23.5897435897dvw 5.1282051282dvw 23.5897435897dvw;
  }
}
@media (min-width: 768px) {
  .about__wrap {
    max-width: 1200px;
    margin: 0 auto;
  }
}
@media (min-width: 768px) {
  .about__header {
    position: relative;
    margin-bottom: 37px;
  }
  .about__header::before {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    z-index: 1;
    width: 100%;
    height: 1px;
    background-color: #707070;
    display: block;
    margin: auto;
    content: "";
  }
}
@media (max-width: 767px) {
  .about__header {
    border-bottom: 1px solid #707070;
    padding-bottom: 3.5897435897dvw;
    margin-bottom: 6.6666666667dvw;
  }
}
.about__ttl {
  line-height: 1;
  font-size: 1.5rem;
  display: flex;
  gap: 12px;
}
@media (min-width: 768px) {
  .about__ttl {
    position: relative;
    z-index: 2;
    align-items: center;
    background-color: #fff;
    width: fit-content;
    padding-right: 19px;
  }
}
@media (max-width: 767px) {
  .about__ttl {
    align-items: flex-end;
    font-size: 15px;
    font-size: 3.8461538462dvw;
  }
}
.about__ttl span {
  font-size: 7rem;
  font-weight: 400;
  font-family: alternate-gothic-no-2-d, sans-serif;
  text-box: trim-both cap alphabetic;
}
@media (max-width: 767px) {
  .about__ttl span {
    display: block;
    font-size: 52px;
    font-size: 13.3333333333dvw;
  }
}
.about__ttl span::first-letter {
  color: #25AFC2;
}

.about-list {
  display: grid;
  gap: 42px 56px;
}
@media (min-width: 768px) {
  .about-list {
    grid-template-columns: 1fr 1fr;
  }
}
@media (max-width: 767px) {
  .about-list {
    gap: 7.6923076923dvw;
  }
}
.about-list__item {
  display: grid;
}
@media (max-width: 767px) {
  .about-list__item:nth-of-type(1) {
    margin-bottom: -2.3076923077dvw;
  }
}
.about-list__item ul {
  display: flex;
  flex-flow: column;
  justify-content: space-between;
}
@media (max-width: 767px) {
  .about-list__item ul {
    gap: 7.6923076923dvw;
  }
}
.about-list__item > a {
  margin-top: auto;
}
.about-list__item a {
  position: relative;
}
.about-list__item a::before {
  position: absolute;
  right: 23px;
  bottom: 18px;
  z-index: 3;
  display: block;
  margin: auto;
  width: 29px;
  height: 29px;
  content: "";
  background: url("../images/cmn/arrow_circle.svg") center/contain no-repeat;
}
@media (max-width: 767px) {
  .about-list__item a::before {
    right: 2.8205128205dvw;
    bottom: 3.5897435897dvw;
    width: 8.4615384615dvw;
    height: 8.4615384615dvw;
  }
}
.about-list__item a img {
  transition: 0.3s;
}
.about-list__item a img:first-child {
  position: absolute;
  z-index: 2;
}
.about-list__item a:hover {
  opacity: 1;
}
.about-list__item a:hover img {
  opacity: 1;
}
.about-list__item a:hover img:first-child {
  opacity: 0;
}

.news {
  padding: 84px 40px;
  box-sizing: border-box;
  background: #ddf1ee;
  background: linear-gradient(180deg, rgb(221, 241, 238) 0%, rgb(246, 246, 242) 100%);
}
@media (min-width: 768px) {
  .news {
    min-height: 564px;
  }
}
@media (max-width: 767px) {
  .news {
    padding: 20.5128205128dvw 5.1282051282dvw 80px;
  }
}
@media (min-width: 768px) {
  .news__wrap {
    box-sizing: content-box;
    max-width: 1200px;
    margin: 0 auto;
    display: grid;
    row-gap: 36px;
    grid-template-areas: "header more" "list list";
    grid-template-columns: 1fr auto;
  }
}
@media (min-width: 768px) {
  .news__header {
    grid-area: header;
    display: flex;
    gap: 23px;
    align-items: center;
  }
}
@media (max-width: 767px) {
  .news__header {
    margin: 0 0 5.1282051282dvw;
  }
}
.news__header p {
  font-size: 1.5rem;
}
@media (min-width: 768px) {
  .news__header p {
    font-weight: 400;
  }
}
@media (max-width: 767px) {
  .news__header p {
    text-align: center;
    font-size: 15px;
    font-size: 3.8461538462dvw;
  }
}
.news__ttl {
  line-height: 1;
  font-weight: 500;
  font-size: 1.5rem;
}
@media (min-width: 768px) {
  .news__ttl {
    display: flex;
    align-items: center;
    gap: 21px;
  }
}
@media (max-width: 767px) {
  .news__ttl {
    text-align: center;
    margin-bottom: 5.8974358974dvw;
    font-size: 15px;
    font-size: 3.8461538462dvw;
  }
}
.news__ttl span {
  font-size: 7rem;
  font-weight: 400;
  letter-spacing: 0.02em;
  font-family: alternate-gothic-no-2-d, sans-serif;
  text-box: trim-both cap alphabetic;
}
@media (max-width: 767px) {
  .news__ttl span {
    margin-bottom: 3.0769230769dvw;
    display: block;
    font-size: 52px;
    font-size: 13.3333333333dvw;
  }
}
.news__ttl span::first-letter {
  color: #25AFC2;
}
@media (min-width: 768px) {
  .news__more {
    grid-area: more;
    align-self: flex-end;
  }
}
@media (max-width: 767px) {
  .news__more {
    width: fit-content;
    margin: 13.5897435897dvw auto 0;
  }
}

@media (min-width: 768px) {
  .news-list {
    grid-area: list;
    display: grid;
    gap: 25px;
    grid-template-columns: repeat(4, 1fr);
  }
}
@media (max-width: 767px) {
  .news-list__item {
    margin: 0 2.5641025641dvw;
    width: 89.7435897436dvw;
  }
}
.news-list__item figure {
  margin-bottom: 16px;
  aspect-ratio: 281/181;
  overflow: hidden;
}
@media (max-width: 767px) {
  .news-list__item figure {
    margin-bottom: 4.6153846154dvw;
  }
}
.news-list__item img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.news-list__item ul {
  margin-bottom: 10px;
  display: flex;
  flex-flow: wrap;
  gap: 0.5em 1em;
}
.news-list__item li {
  background: none !important;
  font-size: 1.4rem;
  font-weight: 400;
  color: #656565;
  line-height: 1;
}
@media (max-width: 767px) {
  .news-list__item li {
    font-size: 14px;
    font-size: 3.5897435897dvw;
  }
}
.news-list__item li::before {
  content: "#";
}
.news-list__item p {
  font-weight: 500;
  font-size: 1.5rem;
  line-height: 1.4666666667;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
}
@media (max-width: 767px) {
  .news-list__item p {
    font-size: 18px;
    font-size: 4.6153846154dvw;
    line-height: 1.5555555556;
  }
}
.news-list__item time {
  margin-top: 10px;
  line-height: 1;
  display: block;
  font-weight: 400;
}
@media (max-width: 767px) {
  .news-list__item time {
    font-size: 13px;
    font-size: 3.3333333333dvw;
  }
}
.news-list .slick-dots {
  margin-top: 2.5641025641dvw !important;
  position: relative;
  inset: 0;
  display: flex !important;
  justify-content: center;
  flex-flow: wrap;
  gap: 2.5641025641dvw;
}
.news-list .slick-dots li,
.news-list .slick-dots button {
  margin: 0;
  padding: 0;
  width: 2.8205128205dvw;
  height: 2.8205128205dvw;
}
.news-list .slick-dots li {
  background-color: #cecece;
}
.news-list .slick-dots li.slick-active {
  background-color: #12408f;
}

.side-fixed-btn {
  position: fixed;
  z-index: 10;
  right: 36px;
  bottom: 36px;
  width: 158px;
  opacity: 0;
  transition: 0.3s;
}
@media (max-width: 767px) {
  .side-fixed-btn {
    width: 26.6666666667dvw;
    right: 4.1025641026dvw;
    bottom: 17.4358974359dvw;
  }
}
.side-fixed-btn.active {
  opacity: 1;
}

/*# sourceMappingURL=top.css.map */
