@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: "poppins", sans-serif;
  font-weight: 700;
  letter-spacing: 0;
  line-height: 1;
}

.en02 {
  font-family: "poppins", sans-serif;
  font-weight: 700;
  letter-spacing: 0;
  line-height: 1;
}

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

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

cmn

------------------------------------ */
.page-top .p-header {
  text-align: center;
  max-width: 90%;
  margin: 0 auto 20px;
}
@media print, screen and (max-width: 760px) {
  .page-top .p-header {
    margin: 0 auto 7.3vw;
  }
}
.page-top .p-header__title {
  font-size: 43px;
  letter-spacing: 1px;
  line-height: 1;
  color: #EF0025;
}
@media print, screen and (max-width: 760px) {
  .page-top .p-header__title {
    font-size: 9.74vw;
  }
}
.page-top .p-header__subtitle {
  font-size: 16px;
  margin-top: 1px;
}
.page-top .p-header__text {
  font-size: 15px;
  margin-top: 10px;
}

.page-top .l-main {
  padding-bottom: 3px;
}

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

side_border
コンテンツの横線

------------------------------------ */
.side_border {
  width: calc(100vw - 54px);
  border-radius: 14px;
  margin: 0 auto;
  padding: 0 27px;
  overflow: hidden;
  position: relative;
}
@media print, screen and (max-width: 760px) {
  .side_border {
    padding: 0 3vw;
    width: 100%;
  }
}

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

topvisual

------------------------------------ */
.page-top .l-visual {
  position: relative;
  background: url(../images/top/bg_visual.jpg) no-repeat center center;
  background-size: cover;
  padding: 66px 27px 0;
}
@media print, screen and (min-width: 761px) {
  .page-top .l-visual {
    height: 100svh;
  }
}
@media print, screen and (max-width: 760px) {
  .page-top .l-visual {
    background: url(../images/top/bg_visual_sp.jpg) no-repeat center center;
    background-size: cover;
    padding: 10.6vw 3vw 0;
    height: 156.15vw;
  }
}
.page-top .l-visual__text {
  position: absolute;
  top: 0;
  z-index: 100;
  top: 51%;
  left: 42%;
  transform: translateY(-50%) translateX(-9%);
}
@media print, screen and (min-width: 761px) {
  .page-top .l-visual__text {
    max-width: 831.35px;
  }
}
@media print, screen and (max-width: 760px) {
  .page-top .l-visual__text {
    width: 82.44vw;
    top: 24.8%;
    left: 18%;
  }
}
.page-top .l-visual__slide {
  position: relative;
  width: 100%;
  margin: 0 auto;
}
@media print, screen and (max-width: 760px) {
  .page-top .l-visual__slide {
    aspect-ratio: 390/354;
    margin-bottom: 13vw;
  }
}
.page-top .l-visual__slide li {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  opacity: 0;
  z-index: 0;
  border-radius: 14px;
  transition: opacity 1s ease;
  height: calc(100svh - 93px);
  overflow: hidden;
}
@media print, screen and (max-width: 760px) {
  .page-top .l-visual__slide li {
    height: 156.15vw;
  }
}
.page-top .l-visual__slide li.is-current {
  opacity: 1;
  z-index: 1;
}
.page-top .l-visual__slide li img {
  width: auto;
  height: calc(100svh - 93px);
  position: relative;
  left: 50%;
}
@media print, screen and (min-width: 761px) {
  .page-top .l-visual__slide li img {
    transform: translateX(-79%);
  }
}
@media print, screen and (max-width: 760px) {
  .page-top .l-visual__slide li img {
    width: 100%;
    position: absolute;
    height: auto;
    left: 0;
    bottom: 0;
  }
}
.page-top .l-visual__slide li.mv01 {
  background-color: #F280C4;
}
.page-top .l-visual__slide li.mv02 {
  background-color: #20BBFF;
}
.page-top .l-visual__slide li.mv03 {
  background-color: #FFCE00;
}
.page-top .l-visual__slide li.mv04 {
  background-color: #52E561;
}
.page-top .l-visual__slide li.mv05 {
  background-color: #FFAA22;
}
.page-top .l-visual__slide li.mv06 {
  background-color: #D38BBB;
}
.page-top .l-visual__slide li.mv07 {
  background-color: #FF3E5C;
}
.page-top .l-visual__slide li.mv08 {
  background-color: #8196E5;
}
.page-top .l-visual__news {
  width: 436px;
  margin: 0 auto;
  z-index: 1;
  position: absolute;
  bottom: 68px;
}
@media print, screen and (max-width: 760px) {
  .page-top .l-visual__news {
    bottom: -5vw;
    width: 88vw;
  }
}
.page-top .l-visual__news a {
  display: block;
  background: #fff;
  transition: 0.3s;
  border-radius: 0 17px 17px 0;
}
.page-top .l-visual__news .p-item__inner {
  height: 78px;
  margin: 0 auto;
  padding: 0 16px;
  display: grid;
  grid-template-columns: max-content max-content auto;
  align-items: center;
  transition: 0.3s;
}
@media print, screen and (max-width: 760px) {
  .page-top .l-visual__news .p-item__inner {
    height: 16vw;
    gap: 0 2.5vw;
    grid-template-columns: auto 1fr;
    align-items: flex-start;
    padding: 4.4vw 3.2vw 13.6vw 2vw;
  }
}
.page-top .l-visual__news .p-item__title {
  display: block;
  font-size: 27px;
  font-weight: 700;
  font-family: "poppins", sans-serif;
  line-height: 3;
  letter-spacing: 0.11rem;
  color: #EF0025;
  padding-right: 28px;
}
@media print, screen and (max-width: 760px) {
  .page-top .l-visual__news .p-item__title {
    display: flex;
    align-self: flex-end;
    padding: 0;
    font-size: 4.6vw;
    line-height: 0.6;
    margin-right: 3vw;
  }
}
.page-top .l-visual__news .p-item__info {
  display: flex;
  align-items: center;
  gap: 2px;
  padding-right: 10px;
  flex-wrap: wrap;
}
@media print, screen and (max-width: 760px) {
  .page-top .l-visual__news .p-item__info {
    gap: 0;
    align-self: flex-end;
    padding-right: 0;
    padding-bottom: 2.4vw;
    gap: 1vw;
  }
}
.page-top .l-visual__news .p-item__intro01 {
  display: flex;
  width: 100%;
  align-items: center;
}
.page-top .l-visual__news .p-item__date {
  display: block;
  line-height: 1;
  font-size: 15px;
  font-weight: 500;
}
@media print, screen and (max-width: 760px) {
  .page-top .l-visual__news .p-item__date {
    font-size: 3.58vw;
  }
}
@media print, screen and (max-width: 760px) {
  .page-top .l-visual__news .p-item__icons-category {
    line-height: 1;
  }
}
.page-top .l-visual__news .p-item__icons-category .icon {
  border-radius: 0;
}
@media print, screen and (max-width: 760px) {
  .page-top .l-visual__news .p-item__icons-category .icon {
    font-size: 2.8vw;
    margin-bottom: 0;
  }
}
.page-top .l-visual__news .p-item__text {
  width: 44.8%;
}
@media print, screen and (max-width: 760px) {
  .page-top .l-visual__news .p-item__text {
    grid-column: 1/3;
    width: 100%;
  }
}
.page-top .l-visual__news .p-item__text p {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 1;
  overflow: hidden;
  font-size: 15px;
  font-weight: 500;
}
@media print, screen and (max-width: 760px) {
  .page-top .l-visual__news .p-item__text p {
    font-size: 3.58vw;
  }
}

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

LEAD

------------------------------------ */
.lead {
  margin-bottom: 24px;
  position: relative;
}
@media print, screen and (max-width: 760px) {
  .lead {
    font-size: 3.58vw;
  }
}
.lead__ttl {
  margin: 57px auto 22px;
  text-align: center;
  font-family: "ryo-gothic-plusn", sans-serif;
  line-height: 1;
  font-size: 77px;
  color: #EF0025;
  font-family: "corporate-logo-ver2", sans-serif;
}
@media print, screen and (max-width: 760px) {
  .lead__ttl {
    font-size: 6.92vw;
    margin: 28.5vw auto 6vw;
  }
}
.lead p {
  text-align: center;
  font-size: 31px;
  line-height: 1.96;
  font-family: "corporate-logo-ver2", sans-serif;
}
@media print, screen and (max-width: 760px) {
  .lead p {
    font-size: 4.36vw;
    line-height: 2.04;
  }
}
.lead__catch {
  margin: 9px 0 85px;
  text-align: center;
  font-weight: bold;
  font-size: 46px;
  color: #EF0025;
  font-family: "corporate-logo-ver2", sans-serif;
}
@media print, screen and (max-width: 760px) {
  .lead__catch {
    font-size: 6.41vw;
    margin: 3vw 0 12.5vw;
  }
}
.lead__movie {
  position: relative;
  width: 100vw;
  padding: 0 27px;
  margin: 0 auto;
  height: 722px;
}
@media print, screen and (max-width: 760px) {
  .lead__movie {
    padding: 0 3vw;
    height: 80.26vw;
  }
}
.lead__movie iframe {
  width: 100%;
  height: 722px;
  object-fit: cover;
  display: block;
  border-radius: 14px;
}
@media print, screen and (max-width: 760px) {
  .lead__movie iframe {
    height: 80.26vw;
  }
}
.lead__movie_text {
  position: absolute;
  top: 55%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 100%;
  color: #fff;
  text-align: center;
}
.lead__movie_tit {
  font-size: 76px;
  font-weight: 700;
  letter-spacing: 0.23rem;
}
@media print, screen and (max-width: 760px) {
  .lead__movie_tit {
    font-size: 5.38vw;
  }
}
.lead__movie_subtit {
  font-size: 21px;
}
@media print, screen and (max-width: 760px) {
  .lead__movie_subtit {
    font-size: 3.85vw;
  }
}
.lead__movie_button {
  position: absolute;
  width: 191px;
  bottom: -58px;
  right: 63px;
  z-index: 100;
}
@media print, screen and (max-width: 760px) {
  .lead__movie_button {
    width: 90%;
    margin: 4vw auto;
    position: relative;
    right: 0;
    bottom: 0;
  }
}
@media print, screen and (min-width: 761px) {
  .lead__movie_button a:hover {
    opacity: 1;
  }
}

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

mv-slide-txt

------------------------------------ */
.mv-slide-txt {
  overflow-x: clip;
  display: flex;
  align-items: center;
  box-sizing: border-box;
  height: 101.53px;
  position: relative;
  z-index: -1;
}
@media print, screen and (max-width: 760px) {
  .mv-slide-txt {
    height: 15.58vw;
  }
}
.mv-slide-txt > div {
  flex: 0;
  height: fit-content;
  animation: slideShow 70s infinite linear;
  display: flex;
  align-items: center;
  white-space: nowrap;
  transform: translateX(0);
}
@keyframes slideShow {
  0% {
    transform: translateX(0%);
  }
  100% {
    transform: translateX(-100%);
  }
}
.mv-slide-txt > div img {
  width: min(1500px, 147.362dvw);
}
@media print, screen and (max-width: 760px) {
  .mv-slide-txt > div img {
    width: 940.78px;
  }
}
.mv-slide-txt--01 {
  position: absolute;
}
@media print, screen and (max-width: 760px) {
  .mv-slide-txt--01 {
    top: 172vw;
  }
}
.mv-slide-txt--02 {
  position: absolute;
  top: 482px;
}
@media print, screen and (max-width: 760px) {
  .mv-slide-txt--02 {
    top: 112vw;
  }
}
.mv-slide-txt--02 > div {
  animation: slideShowReverse 70s infinite linear;
  transform: translateX(-100%);
}
@keyframes slideShowReverse {
  0% {
    transform: translateX(-100%);
  }
  100% {
    transform: translateX(0%);
  }
}

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

l-vision

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

l-interview

------------------------------------ */
.side_border.l-interview {
  margin-bottom: 23px !important;
}
@media print, screen and (max-width: 760px) {
  .side_border.l-interview {
    margin-top: 34.7vw;
  }
}
@media print, screen and (min-width: 761px) {
  .side_border.l-interview::after {
    position: absolute;
    z-index: 99;
    right: 24px;
    bottom: 18px;
    display: block;
    width: 139.41px;
    height: 23px;
    content: "";
    background: url(../images/cmn/simple_btn.png) no-repeat center center;
    background-size: cover;
  }
}

.page-top .interview {
  margin-bottom: 80px;
  position: relative;
  max-width: 1275px;
  height: 601px;
  margin: 0 auto;
}
@media print, screen and (max-width: 760px) {
  .page-top .interview {
    height: auto;
  }
}
.page-top .interview_bg {
  background-color: #20BBFF;
  position: absolute;
  left: 419px;
  width: 100vw;
  height: 601px;
  top: 0;
  z-index: -1;
}
.page-top .interview_tit {
  width: 808px;
  padding-top: 84px;
}
@media print, screen and (max-width: 760px) {
  .page-top .interview_tit {
    padding-top: 7.44vw;
    width: 68.72vw;
    margin: 0 auto;
  }
}
.page-top .interview_subtit {
  font-size: 16px;
  font-weight: 700;
  margin-top: 27px;
}
@media print, screen and (max-width: 760px) {
  .page-top .interview_subtit {
    font-size: 4.1vw;
    color: #fff;
    text-align: center;
    margin-top: 1.8vw;
    z-index: 1;
    position: relative;
  }
}
.page-top .interview_text01 {
  font-size: 30px;
  color: #20BBFF;
  font-weight: 800;
  margin-top: 18px;
  line-height: 1.5;
}
@media print, screen and (max-width: 760px) {
  .page-top .interview_text01 {
    font-size: 6.67vw;
    margin-left: 3vw;
    margin-top: 5vw;
  }
}
.page-top .interview_text02 {
  font-size: 15px;
  margin-top: 22px;
  line-height: 2;
}
@media print, screen and (max-width: 760px) {
  .page-top .interview_text02 {
    font-size: 3.85vw;
    margin: 2vw 3vw 2vw 2vw;
    margin-top: 2vw;
  }
}
.page-top .interview_img {
  width: 912px;
  position: absolute;
  bottom: 0;
  left: 32.8%;
}
@media print, screen and (max-width: 760px) {
  .page-top .interview_img {
    width: 91.79vw;
    position: relative;
    left: 1vw;
    bottom: 11vw;
  }
}
.page-top .interview__list {
  display: flex;
  flex-wrap: wrap;
  gap: 50px 30px;
}
.page-top .interview .p-item {
  width: 23%;
}
.page-top .interview_bg {
  border-radius: 14px;
}
@media print, screen and (max-width: 760px) {
  .page-top .interview .interview_box_sp {
    background: #20BBFF;
    height: 82.6vw;
    border-radius: 14px;
    position: relative;
  }
}
@media print, screen and (max-width: 760px) {
  .page-top .interview .interview_box_sp::after {
    position: absolute;
    z-index: 99;
    right: 13px;
    bottom: 13px;
    display: block;
    width: 26px;
    height: 26px;
    margin-top: -3px;
    content: "";
    transition-duration: 200ms;
    background: url(../images/cmn/next_light_top.png) no-repeat center center;
    background-size: cover;
  }
}

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

ourwork

------------------------------------ */
@media print, screen and (min-width: 761px) {
  .side_border.l-ourwork {
    margin-bottom: 23px !important;
    padding: 0;
  }
}
@media print, screen and (min-width: 761px) {
  .side_border.l-ourwork::after {
    position: absolute;
    z-index: 99;
    right: 24px;
    bottom: 18px;
    display: block;
    width: 139.41px;
    height: 23px;
    content: "";
    background: url(../images/cmn/simple_btn.png) no-repeat center center;
    background-size: cover;
  }
}

.page-top .ourwork {
  margin-bottom: 80px;
  position: relative;
  max-width: 1200px;
  height: 773px;
  margin: 0 auto;
  padding-top: 60.8px;
}
@media print, screen and (max-width: 760px) {
  .page-top .ourwork {
    padding-top: 6vw;
    height: auto;
  }
}
.page-top .ourwork_bg {
  position: absolute;
  width: 100vw;
  height: 773px;
  top: 0;
  z-index: -1;
}
@media print, screen and (min-width: 761px) {
  .page-top .ourwork_bg {
    background-color: #52E561;
  }
}
.page-top .ourwork_tit {
  width: 247px;
  position: absolute;
}
@media print, screen and (min-width: 761px) {
  .page-top .ourwork_tit {
    margin-left: -21px;
    margin-top: -6px;
  }
}
@media print, screen and (max-width: 760px) {
  .page-top .ourwork_tit {
    width: 70.26vw;
    position: relative;
    margin: 0 auto;
    padding-top: 7.05vw;
  }
}
.page-top .ourwork_subtit {
  font-size: 16px;
  font-weight: 700;
  margin-top: 7px;
}
@media print, screen and (min-width: 761px) {
  .page-top .ourwork_subtit {
    padding-left: 297px;
  }
}
@media print, screen and (max-width: 760px) {
  .page-top .ourwork_subtit {
    font-size: 4.1vw;
    text-align: center;
  }
}
.page-top .ourwork_text01 {
  font-size: 30px;
  font-weight: 800;
  margin-top: 13px;
}
@media print, screen and (min-width: 761px) {
  .page-top .ourwork_text01 {
    padding-left: 297px;
  }
}
@media print, screen and (max-width: 760px) {
  .page-top .ourwork_text01 {
    font-size: 6.67vw;
    margin: 5vw 3vw;
    line-height: 1.4;
  }
}
.page-top .ourwork_text02 {
  font-size: 15px;
  line-height: 2;
  margin-top: 15px;
}
@media print, screen and (min-width: 761px) {
  .page-top .ourwork_text02 {
    padding-left: 297px;
    padding-right: 72px;
    width: 90%;
  }
}
@media print, screen and (max-width: 760px) {
  .page-top .ourwork_text02 {
    font-size: 3.85vw;
    margin: -1vw 3vw;
  }
}
.page-top .ourwork_img {
  width: 1168px;
  position: absolute;
  bottom: 0;
  left: 6.9%;
}
@media print, screen and (max-width: 760px) {
  .page-top .ourwork_img {
    width: 100%;
    position: relative;
    left: 0;
    margin-top: -3vw;
  }
}
.page-top .ourwork__list {
  display: flex;
  flex-wrap: wrap;
  gap: 50px 30px;
}
.page-top .ourwork .p-item {
  width: 23%;
}
.page-top .ourwork_bg {
  border-radius: 14px;
}
@media print, screen and (max-width: 760px) {
  .page-top .ourwork_bg {
    width: 94%;
    margin: 0 auto;
  }
}
.page-top .ourwork .ourwork_box_sp {
  background-color: #52E561;
  border-radius: 14px;
}
@media print, screen and (max-width: 760px) {
  .page-top .ourwork .ourwork_box_sp {
    position: relative;
  }
}
@media print, screen and (max-width: 760px) {
  .page-top .ourwork .ourwork_box_sp::after {
    position: absolute;
    z-index: 99;
    right: 13px;
    bottom: 13px;
    display: block;
    width: 26px;
    height: 26px;
    margin-top: -3px;
    content: "";
    transition-duration: 200ms;
    background: url(../images/cmn/next_light_top.png) no-repeat center center;
    background-size: cover;
  }
}

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

l-crosstalk

------------------------------------ */
.page-top .side_border.l-crosstalk {
  margin-bottom: 23px !important;
}
@media print, screen and (max-width: 760px) {
  .page-top .side_border.l-crosstalk {
    margin-top: 18vw;
  }
}
@media print, screen and (min-width: 761px) {
  .page-top .side_border.l-crosstalk {
    padding: 0;
  }
}

.page-top .l-crosstalk .crosstalk_flex {
  display: flex;
  max-width: 1386px;
  margin: 0 auto;
  gap: 37px;
}
@media print, screen and (max-width: 760px) {
  .page-top .l-crosstalk .crosstalk_flex {
    width: 100%;
    flex-wrap: wrap;
  }
}
.page-top .l-crosstalk .crosstalk_img {
  width: 64.5%;
  position: relative;
}
@media print, screen and (max-width: 760px) {
  .page-top .l-crosstalk .crosstalk_img {
    width: 100%;
  }
}
@media print, screen and (min-width: 761px) {
  .page-top .l-crosstalk .crosstalk_img::after {
    position: absolute;
    z-index: 99;
    right: 24px;
    bottom: 18px;
    display: block;
    width: 139.41px;
    height: 23px;
    content: "";
    background: url(../images/cmn/simple_btn.png) no-repeat center center;
    background-size: cover;
  }
}
.page-top .l-crosstalk .crosstalk_img img {
  border-radius: 14px;
}
@media print, screen and (max-width: 760px) {
  .page-top .l-crosstalk .crosstalk_img::after {
    position: absolute;
    z-index: 99;
    right: 13px;
    bottom: 13px;
    display: block;
    width: 26px;
    height: 26px;
    margin-top: -3px;
    content: "";
    transition-duration: 200ms;
    background: url(../images/cmn/next_light_top.png) no-repeat center center;
    background-size: cover;
  }
}
.page-top .l-crosstalk .crosstalk_tit_box {
  width: 40%;
}
@media print, screen and (max-width: 760px) {
  .page-top .l-crosstalk .crosstalk_tit_box {
    width: 100%;
  }
}
.page-top .l-crosstalk .crosstalk_tit {
  font-size: 93px;
  color: #586BBC;
  letter-spacing: 2.6px;
  line-height: 0.95;
}
@media print, screen and (min-width: 761px) {
  .page-top .l-crosstalk .crosstalk_tit {
    margin-top: 98px;
  }
}
@media print, screen and (max-width: 760px) {
  .page-top .l-crosstalk .crosstalk_tit {
    font-size: 12.05vw;
  }
}
.page-top .l-crosstalk .crosstalk_subtit {
  font-size: 16px;
  margin-top: 10px;
  margin-left: 12px;
}
.page-top .l-crosstalk .crosstalk_text01 {
  font-size: 30px;
  color: #586BBC;
  font-weight: 800;
  margin-left: 12px;
  margin-top: 16px;
}
@media print, screen and (max-width: 760px) {
  .page-top .l-crosstalk .crosstalk_text01 {
    font-size: 6.67vw;
    margin: -4.1vw 3vw;
  }
}
.page-top .l-crosstalk .crosstalk_text02 {
  font-size: 15px;
  line-height: 2;
  margin-left: 12px;
  margin-top: 11px;
  width: 81%;
}
@media print, screen and (max-width: 760px) {
  .page-top .l-crosstalk .crosstalk_text02 {
    font-size: 3.85vw;
    margin: 5.5vw 3vw;
    width: 90%;
  }
}
@media print, screen and (max-width: 760px) {
  .page-top .l-crosstalk .crosstalk_sp_tit {
    text-align: center;
    width: 100%;
    z-index: 1;
    margin-bottom: -7vw;
  }
  .page-top .l-crosstalk .crosstalk_sp_tit .crosstalk_subtit {
    margin-top: 0vw;
    font-weight: 600;
    margin-left: 0;
  }
}

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

welfare

------------------------------------ */
.side_border.l-welfare {
  margin-bottom: 23px !important;
}
@media print, screen and (min-width: 761px) {
  .side_border.l-welfare {
    padding: 0;
    background: #F581C4;
  }
}
@media print, screen and (min-width: 761px) {
  .side_border.l-welfare {
    position: relative;
  }
  .side_border.l-welfare::after {
    position: absolute;
    z-index: 99;
    right: 24px;
    bottom: 18px;
    display: block;
    width: 139.41px;
    height: 23px;
    content: "";
    background: url(../images/cmn/simple_btn.png) no-repeat center center;
    background-size: cover;
  }
}

.page-top .welfare {
  margin-bottom: 80px;
  position: relative;
  max-width: 1200px;
  height: 745px;
  margin: 0 auto;
  padding-top: 77.8px;
  color: #fff;
  text-align: center;
}
@media print, screen and (max-width: 760px) {
  .page-top .welfare {
    padding-top: 0vw;
    height: auto;
  }
}
.page-top .welfare_tit {
  font-size: 122px;
  letter-spacing: 4.3px;
}
@media print, screen and (max-width: 760px) {
  .page-top .welfare_tit {
    font-size: 12.05vw;
    padding-top: 8.08vw;
  }
}
.page-top .welfare_subtit {
  font-size: 16px;
  font-weight: 700;
}
@media print, screen and (max-width: 760px) {
  .page-top .welfare_subtit {
    font-size: 4.1vw;
  }
}
.page-top .welfare_text01 {
  font-size: 30px;
  font-weight: 800;
  margin-top: 15px;
  letter-spacing: 0.5px;
  font-feature-settings: "palt";
}
@media print, screen and (max-width: 760px) {
  .page-top .welfare_text01 {
    font-size: 6.67vw;
    color: #F581C4;
    text-align: left;
    margin: 7vw 3vw;
  }
}
.page-top .welfare_text02 {
  font-size: 15px;
  line-height: 2;
  margin-left: 12px;
  margin-top: 14px;
}
@media print, screen and (max-width: 760px) {
  .page-top .welfare_text02 {
    font-size: 3.85vw;
    color: #131313;
    text-align: left;
    margin-top: -4vw;
  }
}
.page-top .welfare_img {
  width: 1224px;
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
}
@media print, screen and (max-width: 760px) {
  .page-top .welfare_img {
    width: 100%;
    position: relative;
    margin-top: -3vw;
  }
}
.page-top .welfare__list {
  display: flex;
  flex-wrap: wrap;
  gap: 50px 30px;
}
.page-top .welfare .p-item {
  width: 23%;
}
.page-top .welfare_bg {
  border-radius: 14px;
}
@media print, screen and (max-width: 760px) {
  .page-top .welfare .welfare_box_sp {
    background: #F581C4;
    position: relative;
    border-radius: 14px;
  }
}
@media print, screen and (max-width: 760px) {
  .page-top .welfare .welfare_box_sp::after {
    position: absolute;
    z-index: 99;
    right: 13px;
    bottom: 13px;
    display: block;
    width: 26px;
    height: 26px;
    margin-top: -3px;
    content: "";
    transition-duration: 200ms;
    background: url(../images/cmn/next_light_top.png) no-repeat center center;
    background-size: cover;
  }
}

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

l-feature

------------------------------------ */
.side_border.l-feature {
  margin-bottom: 23px !important;
  display: flex;
  max-width: 1386px;
  padding: 0;
}
@media print, screen and (max-width: 760px) {
  .side_border.l-feature {
    flex-wrap: wrap;
    padding: 0 3vw;
    margin-top: 11vw;
    gap: 7.5vw;
  }
}
.side_border.l-feature .feature_box {
  width: 50%;
}
@media print, screen and (max-width: 760px) {
  .side_border.l-feature .feature_box {
    width: 100%;
  }
}
.side_border.l-feature .feature_box a {
  width: 100%;
  display: flex;
  align-items: center;
  gap: 36px;
}
@media print, screen and (max-width: 760px) {
  .side_border.l-feature .feature_box a {
    flex-wrap: wrap;
    gap: 5vw;
  }
}
@media print, screen and (max-width: 760px) {
  .side_border.l-feature .feature_box a .feature_img {
    width: 53%;
  }
}
@media print, screen and (min-width: 761px) {
  .side_border.l-feature .feature_img {
    max-width: 378px;
    width: 70%;
  }
}
.side_border.l-feature .feature_img img {
  border-radius: 14px;
}
.side_border.l-feature .feature_text {
  position: relative;
}
@media print, screen and (min-width: 761px) {
  .side_border.l-feature .feature_text {
    width: 30%;
  }
}
.side_border.l-feature .feature_text .feature_tit {
  font-size: 30px;
  font-weight: 800;
}
@media print, screen and (max-width: 760px) {
  .side_border.l-feature .feature_text .feature_tit {
    font-size: 5.9vw;
    margin-top: -4vw;
  }
}
.side_border.l-feature .feature_text .feature_subtit {
  font-size: 17px;
  font-weight: 700;
  margin-top: -2px;
}
@media print, screen and (max-width: 760px) {
  .side_border.l-feature .feature_text .feature_subtit {
    font-size: 3.33vw;
  }
}
.side_border.l-feature .feature_text::before {
  width: 42.28px;
  height: 1px;
  position: absolute;
  content: "";
  background: #EF0025;
  bottom: -18px;
}
@media print, screen and (max-width: 760px) {
  .side_border.l-feature .feature_text::before {
    bottom: -3.3vw;
  }
}

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

l-message

------------------------------------ */
.side_border.l-message {
  padding: 0;
  margin-bottom: 23px !important;
}
@media print, screen and (max-width: 760px) {
  .side_border.l-message {
    margin-top: 11vw;
    padding: 0 3vw;
    height: 137.2vw;
  }
}
@media print, screen and (min-width: 761px) {
  .side_border.l-message {
    position: relative;
  }
  .side_border.l-message::after {
    position: absolute;
    z-index: 99;
    right: 24px;
    bottom: 18px;
    display: block;
    width: 139.41px;
    height: 23px;
    content: "";
    background: url(../images/cmn/simple_btn.png) no-repeat center center;
    background-size: cover;
  }
}

.page-top .message {
  margin-bottom: 80px;
  position: relative;
  max-width: 1200px;
  height: 568px;
  margin: 0 auto;
  color: #fff;
  padding-left: 689.6px;
  padding-top: 132px;
}
@media print, screen and (max-width: 760px) {
  .page-top .message {
    width: 88.4vw;
    bottom: -4.8vw;
    padding-left: 0;
    padding-top: 63vw;
    height: auto;
    padding-top: 0;
  }
}
.page-top .message_tit {
  width: 375px;
  position: absolute;
  margin-left: -50.2px;
  top: -19.1px;
  left: 0;
}
@media print, screen and (max-width: 760px) {
  .page-top .message_tit {
    width: 83vw;
    margin: 0 auto;
    top: 1vw;
    left: 3vw;
  }
}
.page-top .message_subtit {
  font-size: 16px;
  font-weight: 700;
}
@media print, screen and (min-width: 761px) {
  .page-top .message_subtit {
    margin-top: 134px;
    max-width: 553px;
    margin: 0 0 0 auto;
    font-weight: 600;
  }
}
@media print, screen and (max-width: 760px) {
  .page-top .message_subtit {
    font-size: 4.1vw;
    color: #131313;
    margin-top: 6vw;
  }
}
@media print, screen and (max-width: 760px) {
  .page-top .message .message_box_sp {
    font-size: 4.1vw;
    height: 57.51vw;
    position: relative;
  }
}
@media print, screen and (max-width: 760px) {
  .page-top .message .message_box_sp::after {
    position: absolute;
    z-index: 99;
    right: 2px;
    bottom: 13px;
    display: block;
    width: 26px;
    height: 26px;
    margin-top: -3px;
    content: "";
    transition-duration: 200ms;
    background: url(../images/cmn/next_light_top.png) no-repeat center center;
    background-size: cover;
  }
}
.page-top .message_text01 {
  font-size: 44px;
  font-feature-settings: "palt";
  letter-spacing: -0.21px;
  font-weight: 600;
  line-height: 1.4;
}
@media print, screen and (min-width: 761px) {
  .page-top .message_text01 {
    max-width: 553px;
    margin: 0 0 0 auto;
    margin-top: 17px;
  }
}
@media print, screen and (max-width: 760px) {
  .page-top .message_text01 {
    font-size: 6.67vw;
    color: #FFAD2A;
    margin-top: 2.2vw;
  }
}
.page-top .message_text02 {
  font-size: 15px;
  line-height: 2;
}
@media print, screen and (min-width: 761px) {
  .page-top .message_text02 {
    max-width: 553px;
    margin: 0 0 0 auto;
    padding-right: 72px;
    margin-top: 20px;
  }
}
@media print, screen and (max-width: 760px) {
  .page-top .message_text02 {
    font-size: 3.85vw;
    color: #131313;
    margin-top: 3vw;
  }
}
.page-top .message_img {
  width: 568px;
  position: absolute;
  bottom: 0;
  left: 10.6%;
}
@media print, screen and (max-width: 760px) {
  .page-top .message_img {
    width: 90%;
    left: 0;
    left: 6vw;
  }
}
.page-top .message__list {
  display: flex;
  flex-wrap: wrap;
  gap: 50px 30px;
}
.page-top .message .p-item {
  width: 23%;
}
.page-top .message_bg {
  border-radius: 14px;
  position: absolute;
  width: 100vw;
  height: 773px;
  top: 0;
  z-index: -1;
  background-color: #FFAD2A;
}
@media print, screen and (max-width: 760px) {
  .page-top .message_bg {
    width: 94%;
    margin: 0 auto;
    height: 62.31vw;
  }
}

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

l-link

------------------------------------ */
.page-top .l-link {
  padding: 0 27px;
}
@media print, screen and (max-width: 760px) {
  .page-top .l-link {
    padding: 0 3vw;
  }
}
.page-top .l-link__container {
  margin: 0 auto;
}
@media print, screen and (min-width: 761px) {
  .page-top .l-link__container {
    max-width: 1386px;
  }
}
@media print, screen and (max-width: 760px) {
  .page-top .l-link__container {
    width: 90%;
  }
}
.page-top .l-link ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 22px;
}
@media print, screen and (max-width: 760px) {
  .page-top .l-link ul {
    gap: 3%;
  }
}
.page-top .l-link li {
  width: calc(50% - 11px);
  position: relative;
  border: 1px solid #131313;
}
@media print, screen and (max-width: 760px) {
  .page-top .l-link li {
    width: 100%;
    margin-bottom: 3%;
  }
}
.page-top .l-link li::after {
  position: absolute;
  z-index: 99;
  right: 17.4px;
  bottom: 16.9px;
  display: block;
  width: 31.03px;
  height: 6.01px;
  margin-top: -3px;
  content: "";
  transition-duration: 200ms;
  background: url(../images/cmn/next_border.svg) no-repeat center center;
  background-size: cover;
}
@media print, screen and (max-width: 760px) {
  .page-top .l-link li::after {
    right: 11.4px;
    bottom: 10.9px;
  }
}
.page-top .l-link li a {
  display: block;
  transition: 0.3s;
  padding: 50px 25px;
  text-align: center;
}
@media print, screen and (max-width: 760px) {
  .page-top .l-link li a {
    padding: 4.7vw 0;
  }
}
.page-top .l-link li a .tit {
  font-size: 28px;
  font-weight: 800;
}
@media print, screen and (max-width: 760px) {
  .page-top .l-link li a .tit {
    font-size: 6.15vw;
  }
}
.page-top .l-link li a .subtit {
  font-size: 15px;
  color: #EF0025;
  letter-spacing: 0.07rem;
  margin-top: 5px;
}
@media print, screen and (max-width: 760px) {
  .page-top .l-link li a .subtit {
    font-size: 3.25vw;
  }
}

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

l-news

------------------------------------ */
.page-top .l-news.page-system.page-system-index {
  margin-bottom: 69px;
  margin-top: 65px;
}
.page-top .l-news.page-system.page-system-index .list-page__list {
  float: none;
  width: 100%;
  margin: 0 auto 31px;
}
@media print, screen and (min-width: 761px) {
  .page-top .l-news.page-system.page-system-index .list-page__list {
    padding: 0 46px;
    max-width: 1386px;
    margin: 0 auto 31px;
  }
}
@media print, screen and (max-width: 760px) {
  .page-top .l-news.page-system.page-system-index .list-page__list {
    width: 100%;
    margin: 0 auto -5vw;
  }
}
.page-top .l-news.page-system.page-system-index .l-list {
  margin: 0 auto;
  grid-template-columns: repeat(4, 1fr);
  gap: 39px 28px;
}
@media print, screen and (max-width: 760px) {
  .page-top .l-news.page-system.page-system-index .l-list {
    width: 90%;
    grid-template-columns: repeat(1, 1fr);
    gap: 2vw 0;
    margin: 0 auto 12.5vw;
  }
}
@media print, screen and (max-width: 760px) {
  .page-top .l-news.page-system.page-system-index .p-item {
    margin-right: 0;
    margin-bottom: 7vw;
  }
}
.page-top .l-news.page-system.page-system-index .c-button {
  margin: 0 auto;
}

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