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

web font

 ======================================= */

/* =======================================

共通設定

======================================= */
:root {
  --custom-rem:1px;
}

img {
  max-width: 100%;
  height: auto;
}

a:link, a:visited, a:active {
  text-decoration: none;
  color: inherit;
}

p {
}

/* 基本ボックス設定
------------------------------- */
.cs_class_container {
  width: 100%;
  overflow: hidden;
}
.cs_class_container ._inner {
  position: relative;
  z-index: 2;
}
.cs_class_container p:not(:first-child) {
  margin-top: 0;
}

.wrap_out, .wrap_main {
  width: 100%;
  height: auto;
  position: relative;
}

.wrap_in {
  width: calc(var(--custom-rem) * 1200);
  max-width: 100%;
  height: auto;
  margin: 0 auto;
}

/* =======================================

etc

 ======================================= */
/* 横並びリスト
------------------------------- */
ul.many_rows {
  display: block;
  height: auto;
  overflow: hidden;
}
ul.many_rows > li {
  display: block;
  height: auto;
  float: left;
}
ul.two_rows {
  display: block;
  height: auto;
  overflow: hidden;
}
ul.two_rows > li {
  display: block;
  height: auto;
  float: left;
}
ul.two_rows > li:nth-child(2n+2) {
  float: right;
}
ul.three_rows {
  display: block;
  height: auto;
  overflow: hidden;
}
ul.three_rows > li {
  display: block;
  height: auto;
  float: left;
}
ul.three_rows > li:nth-child(3n+2) {
  margin-right: 0;
}
ul.three_rows > li:nth-child(3n+3) {
  float: right;
  margin-right: 0;
}

/*テーブルブロック
------------------------------- */
.table_block {
  display: table;
  table-layout: fixed;
  width: 100%;
}
.table_block > .table_block--cell {
  display: table-cell;
  width: 50%;
  text-align: center;
  vertical-align: middle;
}

/* flex box
------------------------------- */
.flex_block {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
}

/* 画像ブロック
------------------------------- */
.img_block {
  display: block;
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
}
.img_block::after {
  content: "";
  display: block;
  padding-top: 100%;
}

/* object-fit
------------------------------- */
.fit_img {
  display: block;
  object-fit: cover;
  width: 100%;
  height: 100%;
}
/* ラインマーカー
------------------------------- */
.linemk {
  background: linear-gradient(transparent 70%, #fccb0f 70%);
}

/* その他
------------------------------- */
.tk_shdw {
  text-shadow: 1px 1px 5px rgba(0, 0, 0, 0.5), 1px 0px 5px rgba(0, 0, 0, 0.5), 0px 1px 5px rgba(0, 0, 0, 0.5), 0px 0px 5px rgba(0, 0, 0, 0.5), -1px -1px 5px rgba(0, 0, 0, 0.5), -1px 0px 5px rgba(0, 0, 0, 0.5), 0px -1px 5px rgba(0, 0, 0, 0.5);
}

.tk_shdw_1 {
  text-shadow: 1px 1px 3px rgba(0, 0, 0, 0.5), 1px 0px 3px rgba(0, 0, 0, 0.5), 0px 1px 3px rgba(0, 0, 0, 0.5), 0px 0px 3px rgba(0, 0, 0, 0.5), -1px -1px 3px rgba(0, 0, 0, 0.5), -1px 0px 3px rgba(0, 0, 0, 0.5), 0px -1px 3px rgba(0, 0, 0, 0.5);
}

/* =======================================

 スライダー

 ======================================= */
/* slick
------------------------------- */
#slider {
  opacity: 0;
  -webkit-transition: 1.2s;
  transition: 1.2s;
}
#slider.slick-initialized {
  opacity: 1;
}

#slider .slider_in img {
  width: 100%;
}

/* swiper
------------------------------- */
.swiper {
  opacity: 0;
  -webkit-transition: 1.2s;
  transition: 1.2s;
}
.swiper.swiper-initialized {
  opacity: 1;
}

.swiper .swiper-slide a {
  display: block;
}
.swiper .swiper-slide img {
  display: block;
  width: 100%;
}

.swiper-button-prev, .swiper-button-next {
  width: 5rem;
  height: 100%;
  cursor: pointer;
  background-color: rgba(255, 255, 255, 0.5);
  position: absolute;
  top: 0;
  z-index: 1;
}
.swiper-button-prev::after, .swiper-button-next::after {
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  font-size: 3rem;
  font-weight: bold;
  color: 333;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translateY(-50%) translateX(-50%);
  transform: translateY(-50%) translateX(-50%);
}

.swiper-button-prev {
  left: 0;
}
.swiper-button-prev::after {
  content: "\f053";
}

.swiper-button-next {
  right: 0;
}
.swiper-button-next::after {
  content: "\f054";
}

.swiper-pagination {
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center; /*縦方向（Safari用）*/
  align-items: center; /* 縦方向*/
  -webkit-justify-content: center; /*横方向（Safari用）*/
  justify-content: center; /*横方向*/
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  gap: 1.6rem;
  width: 100%;
  padding: 2rem;
  cursor: pointer;
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: 2;
}
.swiper-pagination .swiper-pagination-bullet {
  display: block;
  width: 2rem;
  height: 2rem;
  background-color: #eee;
  -webkit-border-radius: 2rem;
  border-radius: 2rem;
}
.swiper-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active {
  background-color: #666;
}

.swiper-scrollbar {
  width: 100%;
  height: 0.5rem;
  cursor: pointer;
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: 2;
}
.swiper-scrollbar .swiper-scrollbar-drag {
  background-color: #333;
  height: 100%;
}

/* =======================================

メインビジュアル

 ======================================= */
/* SLIDER
------------------------------- */
/* slick */
#slider {
  margin-bottom: 11.2rem;
}
#slider .slider_in {
  width: 100rem;
}

/* swiper */
.mv_slide_wrap {
  overflow: hidden;
}

.mv_slide {
  width: 100%;
  margin: 0 auto 10rem;
  overflow: visible;
}
.mv_slide--in {
  width: 80rem !important;
}
.mv_slide .swiper-button-prev, .mv_slide .swiper-button-next {
  width: calc((100% - 80rem) / 2);
}
.mv_slide .swiper-button-prev::after, .mv_slide .swiper-button-next::after {
  font-size: 5rem;
  color: #fff;
  text-shadow: 0 0 0.3rem #000;
}
.mv_slide .swiper-pagination {
  top: 100%;
  bottom: auto;
}

/* 下層用MV
------------------------------- */
.page_mv {
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center; /*縦方向（Safari用）*/
  align-items: center; /* 縦方向*/
  -webkit-justify-content: center; /*横方向（Safari用）*/
  justify-content: center; /*横方向*/
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  width: 100%;
  min-height: 40rem;
  background-color: #00948C;
  position: relative;
  padding: 4rem 0 12rem;
  margin-bottom: 4rem;
}
.page_mv::after {
  content: "";
  display: block;
  width: 140rem;
  max-width: 100%;
  height: calc(8rem + 1px);
  background-color: #fff;
  position: absolute;
  bottom: -1px;
  left: 50%;
  -webkit-transform: translateY(0) translateX(-50%);
  transform: translateY(0) translateX(-50%);
}
.page_mv--ttl {
  color: #fff;
  margin-bottom: 0;
  font-size: 3rem;
  font-weight: 700;
}
.page_mv--ttl small {
  display: block;
  color: #fff;
  font-size: 0.5em;
  font-weight: 500;
  text-align: center;
}
.cs_class_container {
  font-family: "NotoSansJP", sans-serif;
  font-size: calc(var(--custom-rem) * 16);
  font-weight: 400;
  line-height: 1.5;
  color: #000000;
}

._bg_square, ._bg_square_top {
  position: relative;
}
._bg_square::before, ._bg_square_top::before {
  content: "";
  display: block;
  width: 120%;
  height: 120%;
  background-color: #00948C;
  box-shadow: 0 calc(var(--custom-rem) * 3) calc(var(--custom-rem) * 18) 0 rgba(0, 0, 0, 0.16);
  position: absolute;
  bottom: 0;
  left: 50%;
  transform-origin: center bottom;
  -webkit-transform: translateX(-50%) rotate(5deg);
  transform: translateX(-50%) rotate(5deg);
  z-index: 0;
}
._bg_square::after, ._bg_square_top::after {
  content: "";
  display: block;
  width: 120%;
  height: calc(var(--custom-rem) * 860);
  background-color: #31BAB3;
  box-shadow: 0 calc(var(--custom-rem) * 3) calc(var(--custom-rem) * 18) 0 rgba(0, 0, 0, 0.16);
  position: absolute;
  bottom: 0;
  left: 50%;
  transform-origin: center bottom;
  -webkit-transform: translateX(-50%) rotate(-5deg);
  transform: translateX(-50%) rotate(-5deg);
  z-index: 1;
}
._bg_square .wrap_in, ._bg_square_top .wrap_in {
  position: relative;
  z-index: 2;
}

._bg_square_top {
  overflow: hidden;
}
._bg_square_top::before {
  bottom: 100%;
  left: 0;
  transform-origin: left bottom;
  -webkit-transform: translateX(0) rotate(5deg);
  transform: translateX(0) rotate(5deg);
  z-index: 0;
}
._bg_square_top::after {
  height: 120%;
  bottom: 100%;
  left: auto;
  right: 0;
  transform-origin: right bottom;
  -webkit-transform: translateX(0) rotate(-5deg);
  transform: translateX(0) rotate(-5deg);
  z-index: 1;
}

/* MV
------------------------------- */
.cs_class_mv {
  height: calc(var(--custom-rem) * 829);
  padding-top: calc(var(--custom-rem) * 50);
  z-index: 1;
}
.cs_class_mv--intro {
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center; /*縦方向（Safari用）*/
  align-items: center; /* 縦方向*/
  -webkit-justify-content: center; /*横方向（Safari用）*/
  justify-content: center; /*横方向*/
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  width: calc(var(--custom-rem) * 1180);
  height: calc(var(--custom-rem) * 60);
  font-size: calc(var(--custom-rem) * 23);
  font-weight: 700;
  color: #00948C;
  -webkit-border-radius: calc(var(--custom-rem) * 30);
  border-radius: calc(var(--custom-rem) * 60);
  background-color: #fff;
  margin-bottom: calc(var(--custom-rem) * 55);
  position: relative;
  z-index: 1;
}
.cs_class_mv--ttl {
  font-size: calc(var(--custom-rem) * 72);
  font-weight: 900;
  line-height: 1.1;
  color: #fff;
  padding-left: calc(var(--custom-rem) * 42);
  margin-bottom: calc(var(--custom-rem) * 41);
}
.cs_class_mv--ttl--text1 {
  font-size: calc(var(--custom-rem) * 56);
  line-height: 1.5;
}
.cs_class_mv--ttl--text2 {
  display: block;
  font-size: calc(var(--custom-rem) * 40);
  line-height: 1.7142857143;
  color: #FFEC3D;
}
.cs_class_mv--ttl--text3 {
  display: block;
  font-size: inherit;
  font-weight: inherit;
  line-height: 1.15;
  color: #FFEC3D;
}

.cs_class_mv--ttl--text4 {
  display: block;
  font-size: calc(var(--custom-rem) * 45);
  font-weight: inherit;
  line-height: 1.0;
  color: #FFFFFF;
}
.cs_class_mv--desc {
  font-size: calc(var(--custom-rem) * 16);
  font-weight: 500;
  line-height: 1.875;
  color: #fff;
  margin-bottom: calc(var(--custom-rem) * 22);
  padding-left: calc(var(--custom-rem) * 42);
}
.cs_class_mv--img01 {
  display: block;
  width: calc(var(--custom-rem) * 616);
  position: absolute;
  top: calc(var(--custom-rem) * 53);
  right: calc(var(--custom-rem) * -66);
}

.cs_class_btn_more {
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center; /*縦方向（Safari用）*/
  align-items: center; /* 縦方向*/
  -webkit-justify-content: center; /*横方向（Safari用）*/
  justify-content: center; /*横方向*/
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  width: calc(var(--custom-rem) * 480);
  height: calc(var(--custom-rem) * 72);
  font-size: calc(var(--custom-rem) * 24);
  font-weight: 700;
  color: #fff !important;
  position: relative;
  margin-left: calc(var(--custom-rem) * 42);
}
.cs_class_btn_more span {
  position: relative;
  z-index: 2;
}
.cs_class_btn_more::before {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  -webkit-border-radius: calc(var(--custom-rem) * 72);
  border-radius: calc(var(--custom-rem) * 72);
  background-color: #D85700;
  position: absolute;
  top: calc(var(--custom-rem) * 8);
  left: 0;
  z-index: 0;
}
.cs_class_btn_more::after {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  -webkit-border-radius: calc(var(--custom-rem) * 72);
  border-radius: calc(var(--custom-rem) * 72);
  background-color: #FF8800;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
}

.cs_class_btn_more2 {
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center; /*縦方向（Safari用）*/
  align-items: center; /* 縦方向*/
  -webkit-justify-content: center; /*横方向（Safari用）*/
  justify-content: center; /*横方向*/
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  width: calc(var(--custom-rem) * 480);
  height: calc(var(--custom-rem) * 72);
  font-size: calc(var(--custom-rem) * 24);
  font-weight: 700;
  color: #fff !important;
  position: relative;
  margin: auto;
}
.cs_class_btn_more2 span {
  position: relative;
  z-index: 2;
}
.cs_class_btn_more2::before {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  -webkit-border-radius: calc(var(--custom-rem) * 72);
  border-radius: calc(var(--custom-rem) * 72);
  background-color: #D85700;
  position: absolute;
  top: calc(var(--custom-rem) * 8);
  left: 0;
  z-index: 0;
}
.cs_class_btn_more2::after {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  -webkit-border-radius: calc(var(--custom-rem) * 72);
  border-radius: calc(var(--custom-rem) * 72);
  background-color: #FF8800;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
}


@media (max-width:768px){
.cs_class_mv--ttl--text4 {
  font-size: calc(var(--custom-rem) * 30);
  line-height: 1.5;
}
}

/* 
------------------------------- */
.cs_class_ttl_line {
  font-size: calc(var(--custom-rem) * 40);
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.04em;
  text-align: center;
  color: #00948C;
  margin-bottom: calc(var(--custom-rem) * 10);
}
.cs_class_ttl_line::after {
  content: "";
  display: block;
  width: calc(var(--custom-rem) * 120);
  height: 1px;
  background-color: #00948C;
  margin: calc(var(--custom-rem) * 23) auto 0;
}
.cs_class_ttl_line--text {
  font-size: calc(var(--custom-rem) * 20);
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: 0.04em;
  text-align: center;
  margin: 0 0 calc(var(--custom-rem) * 60.2);
}

.cs_class_ttl_plain {
  font-size: calc(var(--custom-rem) * 32);
  font-weight: 700;
  line-height: 1.875;
  text-align: center;
  margin: 0 0 calc(var(--custom-rem) * 32);
}

.cs_class_casestudies {
  background-color: #F7F7F7;
  padding: calc(var(--custom-rem) * 166) 0 calc(var(--custom-rem) * 212);
}
.cs_class_casestudies--fx {
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: flex-start; /*縦方向（Safari用）*/
  align-items: flex-start; /* 縦方向*/
  -webkit-justify-content: space-between; /*横方向（Safari用）*/
  justify-content: space-between; /*横方向*/
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  width: calc(var(--custom-rem) * 1180);
  max-width: 100%;
  margin: 0 auto calc(var(--custom-rem) * 67);
}
.cs_class_casestudies--fx > li {
  width: calc(var(--custom-rem) * 360);
  background-color: #656565;
  color: #fff;
  padding: calc(var(--custom-rem) * 42) calc(var(--custom-rem) * 40) calc(var(--custom-rem) * 36);
  -webkit-border-radius: calc(var(--custom-rem) * 8);
  border-radius: calc(var(--custom-rem) * 8);
  position: relative;
}
.cs_class_casestudies--fx > li p {
  font-size: calc(var(--custom-rem) * 16);
  font-weight: 400;
  line-height: 2;
  letter-spacing: 0.04em;
}
.cs_class_casestudies--fx--ttl {
  font-size: calc(var(--custom-rem) * 24);
  font-weight: 700;
  line-height: 1.25;
  text-align: center;
  margin: 0 0 calc(var(--custom-rem) * 13);
}
.cs_class_casestudies--fx--img {
  display: block;
  width: auto;
  height: calc(var(--custom-rem) * 67);
  margin: 0 auto calc(var(--custom-rem) * 14.9);
}
.cs_class_casestudies--fx--check {
  display: block;
  width: calc(var(--custom-rem) * 46);
  position: absolute;
  top: 0;
  left: 0;
  -webkit-transform: translateY(-50%) translateX(-50%);
  transform: translateY(-50%) translateX(-50%);
}
.cs_class_casestudies--block {
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: flex-start; /*縦方向（Safari用）*/
  align-items: flex-start; /* 縦方向*/
  -webkit-justify-content: space-between; /*横方向（Safari用）*/
  justify-content: space-between; /*横方向*/
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  width: calc(var(--custom-rem) * 1020);
  max-width: 100%;
  margin: 0 auto;
}
.cs_class_casestudies--block + .cs_class_casestudies--block {
  margin: calc(var(--custom-rem) * 52) auto 0;
  padding: calc(var(--custom-rem) * 52) 0 0;
  border-top: 1px solid #CCCCCC;
}
.cs_class_casestudies--block--img {
  width: calc(var(--custom-rem) * 344);
  max-width: 100%;
  -webkit-border-radius: calc(var(--custom-rem) * 8);
  border-radius: calc(var(--custom-rem) * 8);
  overflow: hidden;
}
.cs_class_casestudies--block--img img {
  display: block;
  width: 100%;
}
.cs_class_casestudies--block--text {
  width: calc(100% - var(--custom-rem) * 344);
  max-width: 100%;
  padding-left: calc(var(--custom-rem) * 36);
}
.cs_class_casestudies--block--text--ttl {
  font-size: calc(var(--custom-rem) * 30);
  font-weight: 700;
  line-height: 1.5;
  margin: 0 0 calc(var(--custom-rem) * 23);
}
.cs_class_casestudies--block--text--ttl strong {
  font-weight: 700;
  color: #fff;
  background: linear-gradient(transparent 0%, #E93137 0%);
}
.cs_class_casestudies--block--text dl {
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: flex-start; /*縦方向（Safari用）*/
  align-items: flex-start; /* 縦方向*/
  -webkit-justify-content: flex-start; /*横方向（Safari用）*/
  justify-content: flex-start; /*横方向*/
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  gap: calc(var(--custom-rem) * 12) 0;
  font-size: calc(var(--custom-rem) * 12);
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 0.04em;
  margin: 0 0 calc(var(--custom-rem) * 24);
}
.cs_class_casestudies--block--text dl dt {
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center; /*縦方向（Safari用）*/
  align-items: center; /* 縦方向*/
  -webkit-justify-content: center; /*横方向（Safari用）*/
  justify-content: center; /*横方向*/
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  width: calc(var(--custom-rem) * 75);
  height: calc(var(--custom-rem) * 22);
  color: #fff;
  background-color: #000;
  -webkit-border-radius: calc(var(--custom-rem) * 22);
  border-radius: calc(var(--custom-rem) * 22);
}
.cs_class_casestudies--block--text dl dd {
  display: block;
  width: calc(100% - var(--custom-rem) * 75);
  line-height: 1.5;
  padding: calc(var(--custom-rem) * 2) 0 0 calc(var(--custom-rem) * 8);
}
.cs_class_casestudies--block--text p {
  font-size: calc(var(--custom-rem) * 16);
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: 0.04em;
}

/*
------------------------------- */
.cs_class_about {
  background-color: #F8FFFF;
  padding: calc(var(--custom-rem) * 250) 0 calc(var(--custom-rem) * 126);
}
.cs_class_about::before {
  background-color: #fff;
}
.cs_class_about::after {
  background-color: #f7f7f7;
}
.cs_class_about .wrap_in ._inner {
  width: calc(var(--custom-rem) * 1120);
  max-width: 100%;
  margin: 0 auto;
}
.cs_class_about .cs_class_ttl_line {
  margin-bottom: calc(var(--custom-rem) * 10);
}
.cs_class_about .cs_class_ttl_line--text strong {
  color: #00948C;
}
.cs_class_about--fx {
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: flex-start; /*縦方向（Safari用）*/
  align-items: flex-start; /* 縦方向*/
  -webkit-justify-content: space-between; /*横方向（Safari用）*/
  justify-content: space-between; /*横方向*/
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  margin: calc(var(--custom-rem) * 110) auto calc(var(--custom-rem) * 96);
}
.cs_class_about--fx--item {
  width: calc(var(--custom-rem) * 540);
  max-width: 100%;
  padding: calc(var(--custom-rem) * 62) 0 calc(var(--custom-rem) * 60);
  position: relative;
}
.cs_class_about--fx--item--img_ttl {
  display: block;
  width: calc(var(--custom-rem) * 96);
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
  -webkit-transform: translateY(-21%) translateX(-18%);
  transform: translateY(-21%) translateX(-18%);
}
.cs_class_about--fx--item--intro {
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center; /*縦方向（Safari用）*/
  align-items: center; /* 縦方向*/
  -webkit-justify-content: center; /*横方向（Safari用）*/
  justify-content: center; /*横方向*/
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  height: calc(var(--custom-rem) * 60);
  font-size: calc(var(--custom-rem) * 20);
  font-weight: 700;
  line-height: 1.5;
  text-align: center;
  margin: 0 0 calc(var(--custom-rem) * 10) !important;
}
.cs_class_about--fx--item--ttl {
  font-size: calc(var(--custom-rem) * 24);
  font-weight: 700;
  line-height: 1.25;
  text-align: center;
  margin: 0 0 calc(var(--custom-rem) * 24);
}
.cs_class_about--fx--item--ttl .linemk {
  color: #FF8800;
  background: linear-gradient(transparent 70%, #F8FF91 70%);
}
.cs_class_about--fx--item--img {
  display: block;
  width: calc(var(--custom-rem) * 269);
  margin: 0 auto calc(var(--custom-rem) * 36);
}
.cs_class_about--fx--item--desk {
  font-size: calc(var(--custom-rem) * 16);
  font-weight: 400;
  line-height: 2;
  letter-spacing: 0.04em;
  text-align: center;
}
.cs_class_about--fx--item._blockA {
  z-index: 2;
}
.cs_class_about--fx--item._blockA::before {
  content: "";
  display: block;
  width: calc(100% + var(--custom-rem) * 24);
  height: 100%;
  -webkit-border-radius: calc(var(--custom-rem) * 8);
  border-radius: calc(var(--custom-rem) * 8);
  border: calc(var(--custom-rem) * 3) solid #000000;
  background-color: #f5f5f5;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
}
.cs_class_about--fx--item._blockB {
  z-index: 2;
}
.cs_class_about--fx--item._blockB::before {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  -webkit-border-radius: calc(var(--custom-rem) * 8);
  border-radius: calc(var(--custom-rem) * 8);
  border: calc(var(--custom-rem) * 8) solid #FF8800;
  background-color: #fff;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
}
.cs_class_about--fx--item._blockB .cs_class_about--fx--item--img_ttl {
  width: calc(var(--custom-rem) * 158);
  -webkit-transform: translateY(-32%) translateX(-29%);
  transform: translateY(-32%) translateX(-29%);
}
.cs_class_about--block {
  background-color: #31BAB3;
  -webkit-border-radius: calc(var(--custom-rem) * 8);
  border-radius: calc(var(--custom-rem) * 8);
  overflow: hidden;
  padding: calc(var(--custom-rem) * 47) calc(var(--custom-rem) * 45) calc(var(--custom-rem) * 58);
  margin: calc(var(--custom-rem) * 62) 0 0;
  position: relative;
}
.cs_class_about--block::before {
  content: "";
  display: block;
  width: 100%;
  height: calc(var(--custom-rem) * 350);
  background-color: #00948C;
  position: absolute;
  bottom: 0;
  left: 0;
}
.cs_class_about--block ul {
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: flex-start; /*縦方向（Safari用）*/
  align-items: flex-start; /* 縦方向*/
  -webkit-justify-content: center; /*横方向（Safari用）*/
  justify-content: center; /*横方向*/
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  gap: calc(var(--custom-rem) * 30);
  color: #fff;
  position: relative;
  z-index: 1;
}
.cs_class_about--block ul > li {
  width: calc((100% - var(--custom-rem) * 30) / 2);
}
.cs_class_about--block--ttl {
  font-size: calc(var(--custom-rem) * 32);
  font-weight: 700;
  line-height: 1.875;
  text-align: center;
  margin: 0 0 calc(var(--custom-rem) * 31);
}
.cs_class_about--block--ttl span {
  display: inline-block;
  border-bottom: 4px solid #fff;
}
.cs_class_about--block--img {
  display: block;
  width: calc(var(--custom-rem) * 174);
  margin: 0 auto calc(var(--custom-rem) * 24);
}
.cs_class_about--block--desc {
  font-size: calc(var(--custom-rem) * 24);
  font-weight: 700;
  line-height: 1.5;
  text-align: center;
}
.cs_class_about--block--desc > span {
  display: block;
  font-size: calc(var(--custom-rem) * 16);
  font-weight: 400;
  line-height: 2;
  letter-spacing: 0.04em;
  text-align: center;
  margin: calc(var(--custom-rem) * 12) 0 0;
}
.cs_class_about--block--caption {
  width: calc(var(--custom-rem) * 993);
  max-width: 100%;
  background-color: #fff;
  -webkit-border-radius: calc(var(--custom-rem) * 8);
  border-radius: calc(var(--custom-rem) * 8);
  margin: calc(var(--custom-rem) * 41) auto calc(var(--custom-rem) * 28);
  padding: calc(var(--custom-rem) * 39) 0 calc(var(--custom-rem) * 47);
  position: relative;
  z-index: 1;
}
.cs_class_about--block--caption::after {
  content: "";
  display: block;
  width: calc(var(--custom-rem) * 36);
  height: auto;
  border-top: calc(var(--custom-rem) * 30) solid #fff;
  border-left: calc(var(--custom-rem) * 18) solid transparent;
  border-right: calc(var(--custom-rem) * 18) solid transparent;
  position: absolute;
  top: 100%;
  left: 50%;
  -webkit-transform: translateY(-1px) translateX(-50%);
  transform: translateY(-1px) translateX(-50%);
}
.cs_class_about--block--caption--ttl {
  font-size: calc(var(--custom-rem) * 32);
  font-weight: 700;
  line-height: 1.875;
  text-align: center;
  color: #00948C;
  margin: 0 0 calc(var(--custom-rem) * 18);
}
.cs_class_about--block--caption--ttl span {
  background: linear-gradient(transparent 70%, #FFEC3D 0%);
}
.cs_class_about--block--caption--desc {
  font-size: calc(var(--custom-rem) * 16);
  font-weight: 400;
  line-height: 2;
  text-align: center;
}
.cs_class_about--block--conclusion {
  font-size: calc(var(--custom-rem) * 32);
  font-weight: 700;
  line-height: 2;
  text-align: center;
  color: #fff;
  margin: 0 !important;
}
.cs_class_about--block--conclusion span {
  background: linear-gradient(transparent 70%, #31BAB3 0%);
}

.cs_class_bg_text {
  display: block;
  width: calc(var(--custom-rem) * 240);
  position: absolute;
  top: calc(var(--custom-rem) * -121);
  left: calc(var(--custom-rem) * -125);
  z-index: 0;
}
.cs_class_bg_text._right {
  left: auto;
  right: calc(var(--custom-rem) * -85);
}

/* 
------------------------------- */
.cs_class_support {
  background-color: #E9F9F8;
  padding: calc(var(--custom-rem) * 265) 0 calc(var(--custom-rem) * 137);
}
.cs_class_support .cs_class_bg_text {
  top: calc(var(--custom-rem) * -136);
}
.cs_class_support .wrap_in {
  z-index: 0;
}
.cs_class_support .wrap_in > ._inner {
  width: calc(var(--custom-rem) * 1120);
  max-width: 100%;
  margin: 0 auto;
}
.cs_class_support::before {
  background-color: #F8FFFF;
  z-index: 2;
}
.cs_class_support::after {
  background-color: #EFFAFA;
  z-index: 1;
}
.cs_class_support ul {
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: flex-start; /*縦方向（Safari用）*/
  align-items: flex-start; /* 縦方向*/
  -webkit-justify-content: space-between; /*横方向（Safari用）*/
  justify-content: space-between; /*横方向*/
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-top: calc(var(--custom-rem) * 48);
}
.cs_class_support ul > li {
  width: calc(var(--custom-rem) * 265);
}
.cs_class_support--list--img {
  aspect-ratio: 265/184;
  -webkit-border-radius: calc(var(--custom-rem) * 8);
  border-radius: calc(var(--custom-rem) * 8);
  overflow: hidden;
  position: relative;
}
.cs_class_support--list--img img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.cs_class_support--list--img .cs_class_chip {
  position: absolute;
  top: calc(var(--custom-rem) * 10);
  left: calc(var(--custom-rem) * 12);
  z-index: 1;
}
.cs_class_support--list--intro {
  font-size: calc(var(--custom-rem) * 16);
  font-weight: 700;
  line-height: 2;
  letter-spacing: 0.04em;
  margin: calc(var(--custom-rem) * 11) 0 calc(var(--custom-rem) * 1);
}
.cs_class_support--list--ttl {
  font-size: calc(var(--custom-rem) * 18);
  font-weight: 700;
  line-height: 1.3333333333;
  letter-spacing: 0.04em;
  color: #00948C;
  margin: 0 0 calc(var(--custom-rem) * 21);
}
.cs_class_support--list--ttl small {
  display: block;
  font-size: calc(var(--custom-rem) * 14);
  line-height: 1.7142857143;
  margin-top: calc(var(--custom-rem) * 2);
}
.cs_class_support--list--desc {
  font-size: calc(var(--custom-rem) * 14);
  font-weight: 400;
  line-height: 1.2857142857;
  letter-spacing: 0.04em;
  margin: calc(var(--custom-rem) * 20) 0 0;
}
.cs_class_support--list--desc > span {
  display: block;
  padding-left: 1em;
  text-indent: -1em;
}
.cs_class_support--list--desc > span + span {
  margin-top: 1.27em;
}
.cs_class_support--block {
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: flex-start; /*縦方向（Safari用）*/
  align-items: flex-start; /* 縦方向*/
  -webkit-justify-content: flex-start; /*横方向（Safari用）*/
  justify-content: flex-start; /*横方向*/
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  background-color: #fff;
  -webkit-border-radius: calc(var(--custom-rem) * 8);
  border-radius: calc(var(--custom-rem) * 8);
  padding: calc(var(--custom-rem) * 48);
  margin: calc(var(--custom-rem) * 44) 0 0;
  position: relative;
}
.cs_class_support--block::after {
  content: "";
  display: block;
  width: calc(var(--custom-rem) * 60);
  aspect-ratio: 1/1;
  background-image: url("../img/ico_plus.png.webp");
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  position: absolute;
  top: 0;
  left: 50%;
  -webkit-transform: translateY(-50%) translateX(-50%);
  transform: translateY(-50%) translateX(-50%);
  z-index: 1;
}
.no-webp .cs_class_support--block::after {
  background-image: url("../img/ico_plus.png");
}
.cs_class_support--block--img {
  width: calc(var(--custom-rem) * 265);
  aspect-ratio: 265/184;
  -webkit-border-radius: calc(var(--custom-rem) * 8);
  border-radius: calc(var(--custom-rem) * 8);
  overflow: hidden;
  position: relative;
}
.cs_class_support--block--img img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.cs_class_support--block--img .cs_class_chip {
  position: absolute;
  top: calc(var(--custom-rem) * 10);
  left: calc(var(--custom-rem) * 12);
  z-index: 1;
}
.cs_class_support--block--text {
  width: calc(100% - var(--custom-rem) * 265);
  padding-top: calc(var(--custom-rem) * 14);
  padding-left: calc(var(--custom-rem) * 18);
}
.cs_class_support--block--text--intro {
  font-size: calc(var(--custom-rem) * 16);
  font-weight: 700;
  line-height: 2;
  margin: 0 0 calc(var(--custom-rem) * 2) calc(var(--custom-rem) * 8);
}
.cs_class_support--block--text--ttl {
  font-size: calc(var(--custom-rem) * 18);
  font-weight: 700;
  line-height: 1.3333333333;
  margin: 0 0 calc(var(--custom-rem) * 17) calc(var(--custom-rem) * 8);
  color: #00948C;
}
.cs_class_support--block--text--desc {
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: flex-start; /*縦方向（Safari用）*/
  align-items: flex-start; /* 縦方向*/
  -webkit-justify-content: space-between; /*横方向（Safari用）*/
  justify-content: space-between; /*横方向*/
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  gap: calc(var(--custom-rem) * 6.5) 0;
  font-size: calc(var(--custom-rem) * 14);
  font-weight: 400;
  line-height: 1.5;
}
.cs_class_support--block--text--desc span {
  display: block;
  width: calc(var(--custom-rem) * 310);
  padding-left: 1em;
  text-indent: -1em;
}
.cs_class_support--block--text--desc span:nth-child(even) {
  width: calc(100% - var(--custom-rem) * 310);
}

.cs_class_chip {
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center; /*縦方向（Safari用）*/
  align-items: center; /* 縦方向*/
  -webkit-justify-content: center; /*横方向（Safari用）*/
  justify-content: center; /*横方向*/
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  width: calc(var(--custom-rem) * 120);
  height: calc(var(--custom-rem) * 24);
  font-size: calc(var(--custom-rem) * 12);
  font-weight: 500;
  line-height: 1.2;
  color: #fff;
  -webkit-border-radius: calc(var(--custom-rem) * 24);
  border-radius: calc(var(--custom-rem) * 24);
  background-color: #FF8800;
  margin: 0 0 calc(var(--custom-rem) * 20);
}
.cs_class_chip._bk {
  background-color: #000;
}

/* 機能紹介
------------------------------- */
.cs_class_function {
  background-color: #00948C;
  padding: calc(var(--custom-rem) * 280) 0 calc(var(--custom-rem) * 99);
}
.cs_class_function .wrap_in {
  z-index: 0;
}
.cs_class_function .wrap_in > ._inner {
  width: calc(var(--custom-rem) * 1120);
  max-width: 100%;
  margin: 0 auto;
}
.cs_class_function::before {
  background-color: #E9F9F8;
  z-index: 1;
}
.cs_class_function::after {
  background-color: #E9F9F8;
  z-index: 2;
}
.cs_class_function .cs_class_bg_text {
  top: calc(var(--custom-rem) * -167);
}
.cs_class_function .cs_class_ttl_line {
  color: #fff;
  margin-bottom: calc(var(--custom-rem) * 10);
}
.cs_class_function .cs_class_ttl_line::after {
  background-color: #fff;
}
.cs_class_function--block {
  background-color: #fff;
  -webkit-border-radius: calc(var(--custom-rem) * 8);
  border-radius: calc(var(--custom-rem) * 8);
  padding: calc(var(--custom-rem) * 64) calc(var(--custom-rem) * 64) calc(var(--custom-rem) * 60);
}
.cs_class_function--block .cs_class_chip {
  margin-bottom: calc(var(--custom-rem) * 14);
}
.cs_class_function--block + .cs_class_function--block {
  margin-top: calc(var(--custom-rem) * 32);
}
.cs_class_function--block--img {
  -webkit-border-radius: calc(var(--custom-rem) * 8);
  border-radius: calc(var(--custom-rem) * 8);
  margin-bottom: calc(var(--custom-rem) * 32);
  overflow: hidden;
}
.cs_class_function--block--img img {
  display: block;
  width: 100%;
}
.cs_class_function--block--intro {
  font-size: calc(var(--custom-rem) * 16);
  font-weight: 700;
  line-height: 2;
  letter-spacing: 0.04em;
}
.cs_class_function--block--ttl {
  font-size: calc(var(--custom-rem) * 24);
  font-weight: 700;
  line-height: 1.3333333333;
  letter-spacing: 0.04em;
  color: #00948C;
  margin: 0 0 calc(var(--custom-rem) * 17);
}
.cs_class_function--block--ttl small {
  display: block;
  font-size: calc(var(--custom-rem) * 14);
  line-height: 1.7142857143;
  margin-top: calc(var(--custom-rem) * 2);
}
.cs_class_function--block--desc {
  font-size: calc(var(--custom-rem) * 16);
  font-weight: 400;
  line-height: 1.875;
  letter-spacing: 0.04em;
}

/* 導入フロー
------------------------------- */
.cs_class_flow {
  background-color: #F7F7F7;
  padding: calc(var(--custom-rem) * 349) 0 calc(var(--custom-rem) * 91);
}
.cs_class_flow .wrap_in {
  z-index: 0;
}
.cs_class_flow .wrap_in > ._inner {
  width: calc(var(--custom-rem) * 1120);
  max-width: 100%;
  margin: 0 auto;
}
.cs_class_flow::before {
  background-color: #00948C;
  transform: translateX(0) rotate(8.5deg);
  z-index: 2;
}
.cs_class_flow::after {
  background-color: #137D77;
  transform: translateX(0) rotate(-8.7deg);
  z-index: 1;
}
.cs_class_flow .cs_class_bg_text {
  top: calc(var(--custom-rem) * -139);
  left: calc(var(--custom-rem) * -151);
  width: calc(var(--custom-rem) * 270);
}
.cs_class_flow .cs_class_ttl_line {
  margin-bottom: calc(var(--custom-rem) * 10);
}
.cs_class_flow--slide {
  width: calc(var(--custom-rem) * 1120 + (100% - var(--custom-rem) * 1120) / 2);
  max-width: 100%;
  margin: 0 0 calc(var(--custom-rem) * 122) auto;
  overflow: hidden;
}
.cs_class_flow--slide--block {
  width: calc(var(--custom-rem) * 1120);
  max-width: 100%;
  margin: 0 auto 0 0;
  overflow: visible;
}
.cs_class_flow--slide--itrm {
  padding-right: calc(var(--custom-rem) * 20);
}
.cs_class_flow--slide--itrm img {
  display: block;
  width: 100%;
  -webkit-border-radius: calc(var(--custom-rem) * 8);
  border-radius: calc(var(--custom-rem) * 8);
}
.cs_class_flow--slide--scrollbar {
  width: calc(var(--custom-rem) * 600);
  margin: calc(var(--custom-rem) * 48) auto 0;
  position: relative;
}
.cs_class_flow--slide--scrollbar .swiper-scrollbar {
  height: calc(var(--custom-rem) * 12);
  background-color: #E6E6E6;
  -webkit-border-radius: 0.8rem;
  border-radius: 0.8rem;
}
.cs_class_flow--slide--scrollbar .swiper-scrollbar-drag {
  background-color: #00948C;
  -webkit-border-radius: calc(var(--custom-rem) * 8);
  border-radius: calc(var(--custom-rem) * 8);
}
.cs_class_flow--price {
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: stretch; /*縦方向（Safari用）*/
  align-items: stretch; /* 縦方向*/
  -webkit-justify-content: space-between; /*横方向（Safari用）*/
  justify-content: space-between; /*横方向*/
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  width: calc(var(--custom-rem) * 1100);
  max-width: 100%;
  margin: calc(var(--custom-rem) * 80) auto 0;
}
.cs_class_flow--price--item {
  width: calc(var(--custom-rem) * 540);
  min-height: calc(var(--custom-rem) * 540);
  background-color: #fff;
  -webkit-border-radius: calc(var(--custom-rem) * 8);
  border-radius: calc(var(--custom-rem) * 8);
  border: calc(var(--custom-rem) * 4) solid #FF8800;
  padding: calc(var(--custom-rem) * 45) calc(var(--custom-rem) * 26);
  position: relative;
}
.cs_class_flow--price--item--ico {
  display: block;
  width: calc(var(--custom-rem) * 96);
  position: absolute;
  top: 0;
  left: 0;
  -webkit-transform: translateY(-26%) translateX(-26%);
  transform: translateY(-26%) translateX(-26%);
}
.cs_class_flow--price--item--ttl {
  font-size: calc(var(--custom-rem) * 24);
  font-weight: 700;
  line-height: 1.5;
  text-align: center;
  border-bottom: 2px solid #FF8800;
  padding: 0 0 calc(var(--custom-rem) * 10);
  margin: calc(var(--custom-rem) * 35) 0 calc(var(--custom-rem) * 26);
}
.cs_class_flow--price--item--ttl:first-child {
  margin-top: 0;
}
.cs_class_flow--price--item--dlA {
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: flex-start; /*縦方向（Safari用）*/
  align-items: flex-start; /* 縦方向*/
  -webkit-justify-content: space-between; /*横方向（Safari用）*/
  justify-content: space-between; /*横方向*/
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  font-size: calc(var(--custom-rem) * 16);
  line-height: 2;
}
.cs_class_flow--price--item--dlA dt {
  width: calc(var(--custom-rem) * 297);
  font-weight: 700;
}
.cs_class_flow--price--item--dlA dd {
  width: calc(var(--custom-rem) * 80);
  font-weight: 400;
}
.cs_class_flow--price--item--dlA dd + dd {
  width: calc(100% - var(--custom-rem) * 297 - var(--custom-rem) * 80);
  font-weight: 700;
  text-align: right;
}
.cs_class_flow--price--item--dlB {
  font-size: calc(var(--custom-rem) * 16);
  line-height: 2;
}
.cs_class_flow--price--item--dlB dt, .cs_class_flow--price--item--dlB dd {
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: flex-start; /*縦方向（Safari用）*/
  align-items: flex-start; /* 縦方向*/
  -webkit-justify-content: space-between; /*横方向（Safari用）*/
  justify-content: space-between; /*横方向*/
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  width: 100%;
}
.cs_class_flow--price--item--dlB dt span, .cs_class_flow--price--item--dlB dd span {
  display: block;
  width: calc(var(--custom-rem) * 320);
  font-weight: 700;
}
.cs_class_flow--price--item--dlB dt span small, .cs_class_flow--price--item--dlB dd span small {
  font-weight: 400;
}
.cs_class_flow--price--item--dlB dt strong, .cs_class_flow--price--item--dlB dd strong {
  display: block;
  width: calc(100% - var(--custom-rem) * 320);
  font-weight: 700;
  text-align: right;
}
.cs_class_flow--price--item--dlB dd {
  line-height: 1.375;
  margin-top: calc(var(--custom-rem) * 7);
}
.cs_class_flow--price--item--dlB dd span {
  padding-left: 1em;
  font-weight: 400;
}
.cs_class_flow--price--item--dlB dd + dt {
  margin-top: calc(var(--custom-rem) * 5);
}
.cs_class_flow--price--item--dlB dd + dd {
  margin-top: 1em;
}

/* 
------------------------------- */
.field {
  display: flex;
  margin: 0 auto;
}

.field1 {
  display: flex;
  margin: 0 auto;
}

.box {
  margin: 20px;
  width        : calc(var(--custom-rem) * 530);
  height       : calc(var(--custom-rem) * 480);
  background   : #FFFFFF;
  border: solid 4px #d3d3d3;
  border-radius: calc(var(--custom-rem) * 8);
}

.box1 {
  margin: 20px;
  width        : calc(var(--custom-rem) * 530);
  height       : calc(var(--custom-rem) * 480);
  background   : #FFFFFF;
  border: solid 4px #d3d3d3;
  border-radius: calc(var(--custom-rem) * 8);
}

.box_null {
  margin: 20px;
  width        : calc(var(--custom-rem) * 530);
  height       : calc(var(--custom-rem) * 1);
  border-radius: calc(var(--custom-rem) * 8);
}

.inner_box {
 margin       : auto;
 margin-bottom: 20px;
  width        :  calc(var(--custom-rem) * 526);
  height       : 46px;
  background   :  #d3d3d3;
}

.inner_box_null {
 margin       : auto;
 margin-bottom: 20px;
  width        :  calc(var(--custom-rem) * 526);
  height       : 46px;
}

.cs_class_about--assignment {
 text-align: center;
 font-size: calc(var(--custom-rem) * 30);
 color: #FFFFFF;
 line-height: 1.6;
 font-weight: bold;
}

.cs_class_about--assignment2 {
  text-align: center;
 font-size: calc(var(--custom-rem) * 25);
 color: #000000;
 line-height: 1.6;
 font-weight: bold;
 margin: 0 0 calc(var(--custom-rem)* 8);
}

.cs_class_about--fx--item--img1 {
  display: -webkit-flex;
  display: flex;
  width: auto;
  heifht: calc(var(--custom-rem) * 180);
  margin: 0 auto;
  margin-bottom: 20px;
  margin-top:5px;
  pading: 10px;
  max-width: 90%;
}

.cs_class_assignment--fx {
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: flex-start; /*縦方向（Safari用）*/
  align-items: flex-start; /* 縦方向*/
  -webkit-justify-content: space-between; /*横方向（Safari用）*/
  justify-content: space-between; /*横方向*/
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  margin: calc(var(--custom-rem) * 10) auto calc(var(--custom-rem) * 10);
}


.cs_class_assignment--fx--item--ttl {
  font-size: calc(var(--custom-rem) * 24);
  font-weight: 700;
  line-height: 1.25;
  text-align: center;
  margin: 0 0 calc(var(--custom-rem) * 24);
}

.cs_class_about--fx--item--desk1 {
  font-size: calc(var(--custom-rem) * 16);
  font-weight: 400;
  line-height: 1.7;
  letter-spacing: 0.04em;
  text-align: center;
  margin: 0 0 calc(var(--custom-rem)* 5);
}


/* レスポンシブ
  ------------------------------- */

@media (max-width:1310px){
.field {
 display: block;
 }

.box1 {
  margin-top: 0px;
 }
}

@media (max-width:1050px){
.box {
  height: calc(var(--custom-rem) * 500);
 }

.box1 {
  height: calc(var(--custom-rem) * 500);
 }

.box_null {
  display: none;
 }
}

@media (max-width:950px){
.box {
  height: calc(var(--custom-rem) * 520);
 }

.box1 {
  height: calc(var(--custom-rem) * 520);
 }

.box_null {
  display: none;
 }
}

@media (max-width:860px){
.box {
  height: calc(var(--custom-rem) * 560);
 }

.box1 {
  height: calc(var(--custom-rem) * 560);
 }

.box_null {
  display: none;
 }
}

@media (max-width: 767px) {
.cs_class_about--assignment2 {
 font-size: calc(var(--custom-rem) * 13);
 }

.cs_class_about--assignment {
 font-size: calc(var(--custom-rem) * 15);
 line-height: 1.6;
 font-weight: bold;
 }

.box {
 width: calc(var(--custom-rem) * 250);
 height: 500px;
 }

.box1 {
 width: calc(var(--custom-rem) * 250);
 height: 500px;
 }

.box_null {
 display: none;
 }

.cs_class_about--fx--item--desk1 {
 font-size: calc(var(--custom-rem) * 9);
 line-height: 1;
 }

.inner_box {
 width: calc(var(--custom-rem) * 246);
 }
}

@media (max-width: 690px) {
.box {
  height       : 450px;
}

.box1 {
  height       : 450px;
}

.box_null {
  display: none;
}

}

@media (max-width: 650px) {
.box {
 width: 480px;
 }

.box1 {
 width: 480px;
 }

.box_null {
 display: none;
 }

.inner_box {
 width: 473px;
 }

.inner_box_null {
 display: none;
 }
}

@media (max-width: 570px) {
.box {
 width: calc(var(--custom-rem) * 300);
 height: calc(var(--custom-rem) * 290);
 }

.box1 {
 width: calc(var(--custom-rem) * 300);
 height: calc(var(--custom-rem) * 290);
 }

.box_null {
 display: none;
 }

.inner_box {
 width: calc(var(--custom-rem) * 296);
 }

.inner_box_null {
 display: none;
 }
}

@media (max-width: 500px) {
.box {
 width: 350px;
 height: 390px;
 }

.box1 {
 width: 350px;
 height: 390px;
 }

.box_null {
 display: none;
 }
 
.inner_box {
 width: 344px;
 }

.inner_box_null {
 display: none;
 }
}

@media (max-width: 417px) {
.box {
 width: calc(var(--custom-rem) * 320);
 height: calc(var(--custom-rem) * 320);
 margin: 0 auto;
 margin-top: 10px;
 }

.box1 {
 width: calc(var(--custom-rem) * 320);
 height: calc(var(--custom-rem) * 320);
 margin: 0 auto;
 margin-top: 0px;
 }

.box_null {
 display: none;
 }

.inner_box {
 width: calc(var(--custom-rem) * 312);
 height:  30px;
 }

.inner_box_null {
 display: none;
 }

.cs_class_about--fx--item--img1 {
 width: calc(var(--custom-rem) * 200);
 }

.field {
 padding: 5px;
 }
.cs_class_about--assignment2 {
 font-size: calc(var(--custom-rem) * 16);
 }

.cs_class_about--fx--item--desk1 {
 font-size: calc(var(--custom-rem) * 14);
 }

}

/* 
------------------------------- */
.cs_class_qa {
  background-color: #fff;
}
.cs_class_qa .wrap_in {
  z-index: 0;
}
.cs_class_qa .wrap_in > ._inner {
  width: calc(var(--custom-rem) * 1120);
  max-width: 100%;
  margin: 0 auto;
}
.cs_class_qa::before {
  background-color: #F7F7F7;
  transform: translateX(0) rotate(8.5deg);
  z-index: 2;
}
.cs_class_qa::after {
  background-color: #fff;
  transform: translateX(0) rotate(-8.7deg);
  z-index: 1;
}
.cs_class_qa .cs_class_bg_text {
  top: calc(var(--custom-rem) * -139);
}
.cs_class_qa .cs_class_ttl_line {
  margin-bottom: calc(var(--custom-rem) * 10);
}
.cs_class_qa--ttl {
  font-size: calc(var(--custom-rem) * 20);
  font-weight: 700;
  line-height: 1.6;
  letter-spacing: 0.04em;
  color: #fff;
  background-color: #00948C;
  border-top-left-radius: calc(var(--custom-rem) * 8);
  border-top-right-radius: calc(var(--custom-rem) * 8);
  padding: calc(var(--custom-rem) * 18) calc(var(--custom-rem) * 20) calc(var(--custom-rem) * 18) calc(var(--custom-rem) * 60);
  position: relative;
}
.cs_class_qa--ttl::before {
  content: "";
  display: block;
  width: calc(var(--custom-rem) * 11);
  height: calc(var(--custom-rem) * 26);
  background-image: url("../img/img_06_t_01.svg");
  background-size: 100% auto;
  background-position: 0 0;
  background-repeat: no-repeat;
  position: absolute;
  top: calc(var(--custom-rem) * 22);
  left: calc(var(--custom-rem) * 40);
}
.cs_class_qa--desc {
  font-size: calc(var(--custom-rem) * 16);
  font-weight: 500;
  line-height: 2;
  letter-spacing: 0.04em;
  background-color: #fff;
  border-bottom-left-radius: calc(var(--custom-rem) * 8);
  border-bottom-right-radius: calc(var(--custom-rem) * 8);
  padding: calc(var(--custom-rem) * 11) calc(var(--custom-rem) * 35) calc(var(--custom-rem) * 11) calc(var(--custom-rem) * 60);
  position: relative;
}
.cs_class_qa--desc::before {
  content: "";
  display: block;
  width: calc(var(--custom-rem) * 11);
  height: calc(var(--custom-rem) * 26);
  background-image: url("../img/img_06_t_02.svg");
  background-size: 100% auto;
  background-position: 0 0;
  background-repeat: no-repeat;
  position: absolute;
  top: calc(var(--custom-rem) * 17);
  left: calc(var(--custom-rem) * 40);
}
.cs_class_qa--desc + .cs_class_qa--ttl {
  margin-top: calc(var(--custom-rem) * 50);
}

/* フロートバナー
------------------------------- */
.cs_class_float_bnr {
  width: calc(var(--custom-rem) * 120);
  position: fixed;
  top: 50%;
  right: 0;
  z-index: 10;
  -webkit-transform: translateY(-50%) translateX(0);
  transform: translateY(-50%) translateX(0);
}
.cs_class_float_bnr img {
  display: block;
  width: 100%;
}
@media (max-width: 1240px) {
  :root {
    --custom-rem:(100vw / 1240);
  }
}
@media (max-width: 1240px) and (max-width: 767px) {
  :root {
    --custom-rem:(100vw / 375);
  }
}
@media (max-width: 767px) {
  a:hover {
    text-decoration: none;
    color: inherit;
  }
  .wrap_in {
    width: calc(var(--custom-rem) * 343);
  }
  .table_block._sp_tate {
    display: block;
    table-layout: auto;
  }
  .table_block._sp_tate > .table_block--cell {
    display: block;
    width: 100%;
  }
  #slider {
    margin-bottom: 5rem;
  }
  #slider .slider_in {
    width: 100vw;
  }
  .mv_slide--in {
    width: 100vw;
  }
  .mv_slide .swiper-button-prev, .mv_slide .swiper-button-next {
    width: 5rem;
  }
  .page_mv {
    min-height: 36rem;
    padding: 4rem 0;
    margin-bottom: 7.8rem;
  }
  .page_mv::after {
    display: none;
  }
  .page_mv--ttl {
    font-size: 5rem;
  }
  .pc {
    display: none !important;
  }
  input[type=button], input[type=submit] {
    -webkit-appearance: none;
  }
  /* フォントサイズが大きくなってしまう不具合対策
  ------------------------------- */
  h1, h2, h3, h4, h5, h6, p {
    max-height: 100%;
  }
  ._bg_square::before, ._bg_square_top::before {
    width: 200%;
  }
  ._bg_square::after, ._bg_square_top::after {
    width: 200%;
    height: 120%;
  }
  .cs_class_mv {
    height: auto;
    padding-top: calc(var(--custom-rem) * 23);
    padding-bottom: calc(var(--custom-rem) * 60);
  }
  .cs_class_mv--intro {
    width: 100%;
    height: calc(var(--custom-rem) * 80);
    font-size: calc(var(--custom-rem) * 18);
    text-align: center;
    margin-bottom: calc(var(--custom-rem) * 8);
  }
  .cs_class_mv--ttl {
    font-size: calc(var(--custom-rem) * 39);
    font-weight: 900;
    line-height: 1.3333333333;
    padding-left: 0;
    margin-bottom: calc(var(--custom-rem) * -24);
    position: relative;
    z-index: 1;
  }
  .cs_class_mv--ttl--text1 {
    font-size: calc(var(--custom-rem) * 29);
  }
  .cs_class_mv--ttl--text2 {
    display: inline;
    font-size: calc(var(--custom-rem) * 21);
  }
  .cs_class_mv--ttl--text3 {
    display: inline;
    font-size: calc(var(--custom-rem) * 36);
  }
  .cs_class_mv--desc {
    text-align: center;
    margin-bottom: calc(var(--custom-rem) * 21);
    padding-left: 0;
  }
  .cs_class_mv--img01 {
    position: static;
    width: 100vw;
    max-width: none;
    margin-left: calc(var(--custom-rem) * -16);
    margin-bottom: calc(var(--custom-rem) * -10);
  }
  .cs_class_mv--img02 {
    display: block;
    width: 100%;
    margin-top: calc(var(--custom-rem) * 40);
  }
  .cs_class_btn_more {
    width: calc(var(--custom-rem) * 343);
    height: calc(var(--custom-rem) * 72);
    margin: 0 auto;
  }
  .cs_class_btn_more2 {
    width: calc(var(--custom-rem) * 343);
    height: calc(var(--custom-rem) * 72);
    margin: 0 auto;
  }
  .cs_class_ttl_line {
    font-size: calc(var(--custom-rem) * 10);
    line-height: 1.5;
  }
  .cs_class_ttl_line--text {
    margin: 0 0 calc(var(--custom-rem) * 42);
  }
  .cs_class_ttl_plain {
    font-size: calc(var(--custom-rem) * 28);
    margin: 0 0 calc(var(--custom-rem) * 27);
  }
  .cs_class_casestudies {
    padding: calc(var(--custom-rem) * 60) 0 calc(var(--custom-rem) * 40);
  }
  .cs_class_casestudies--fx {
    gap: calc(var(--custom-rem) * 16);
  }
  .cs_class_casestudies--fx > li {
    width: 100%;
    padding: calc(var(--custom-rem) * 40) calc(var(--custom-rem) * 32) calc(var(--custom-rem) * 36);
  }
  .cs_class_casestudies--fx--check {
    width: calc(var(--custom-rem) * 42);
    -webkit-transform: translateY(-30%) translateX(-30%);
    transform: translateY(-30%) translateX(-30%);
  }
  .cs_class_casestudies--block + .cs_class_casestudies--block {
    margin: calc(var(--custom-rem) * 40) auto 0;
    padding: calc(var(--custom-rem) * 40) 0 0;
  }
  .cs_class_casestudies--block--text {
    width: 100%;
    padding-top: calc(var(--custom-rem) * 18);
    padding-left: 0;
  }
  .cs_class_casestudies--block--text--ttl {
    font-size: calc(var(--custom-rem) * 24);
    margin: 0 0 calc(var(--custom-rem) * 30);
  }
  .cs_class_about {
    padding: calc(var(--custom-rem) * 80) 0 calc(var(--custom-rem) * 40);
  }
  .cs_class_about .cs_class_ttl_line {
    margin-bottom: calc(var(--custom-rem) * 10);
  }
  .cs_class_about .cs_class_ttl_line--text {
    text-align: justify;
    text-justify: inter-ideograph;
    margin-bottom: calc(var(--custom-rem) * 52);
  }
  .cs_class_about--fx {
    margin: calc(var(--custom-rem) * 0) auto calc(var(--custom-rem) * 95);
  }
  .cs_class_about--fx--item {
    padding: calc(var(--custom-rem) * 78) 0 calc(var(--custom-rem) * 34);
  }
  .cs_class_about--fx--item--img_ttl {
    -webkit-transform: translateY(-21%) translateX(-15%);
    transform: translateY(-21%) translateX(-15%);
  }
  .cs_class_about--fx--item--intro {
    height: auto;
    margin: 0 0 calc(var(--custom-rem) * 24) !important;
  }
  .cs_class_about--fx--item--ttl {
    margin: 0 0 calc(var(--custom-rem) * 10);
  }
  .cs_class_about--fx--item--img {
    margin: 0 auto calc(var(--custom-rem) * 4);
  }
  .cs_class_about--fx--item._blockA {
    margin-bottom: calc(var(--custom-rem) * 32);
  }
  .cs_class_about--fx--item._blockA::before {
    width: 100%;
    height: calc(100% + var(--custom-rem) * 18);
  }
  .cs_class_about--fx--item._blockB {
    padding: calc(var(--custom-rem) * 54) 0 calc(var(--custom-rem) * 41);
  }
  .cs_class_about--fx--item._blockB .cs_class_about--fx--item--img_ttl {
    width: calc(var(--custom-rem) * 113);
    -webkit-transform: translateY(-46%) translateX(-11%);
    transform: translateY(-46%) translateX(-11%);
  }
  .cs_class_about--fx--item._blockB .cs_class_about--fx--item--intro {
    margin: 0 0 calc(var(--custom-rem) * 12) !important;
  }
  .cs_class_about--fx--item._blockB .cs_class_about--fx--item--ttl {
    margin: 0 0 calc(var(--custom-rem) * 28);
  }
  .cs_class_about--fx--item._blockB .cs_class_about--fx--item--img {
    width: calc(var(--custom-rem) * 239);
    margin: 0 auto calc(var(--custom-rem) * 15);
  }
  .cs_class_about--block {
    margin: calc(var(--custom-rem) * 28) 0 0;
    padding: calc(var(--custom-rem) * 47) calc(var(--custom-rem) * 15) calc(var(--custom-rem) * 50);
  }
  .cs_class_about--block::before {
    height: calc(var(--custom-rem) * 666);
  }
  .cs_class_about--block ul {
    gap: calc(var(--custom-rem) * 14);
  }
  .cs_class_about--block ul > li {
    width: 100%;
  }
  .cs_class_about--block--caption {
    margin: calc(var(--custom-rem) * 104) auto calc(var(--custom-rem) * 44);
    padding: calc(var(--custom-rem) * 22) 0 calc(var(--custom-rem) * 58);
  }
  .cs_class_about--block--caption--ttl {
    font-size: calc(var(--custom-rem) * 22);
    line-height: 2;
    margin: 0 0 calc(var(--custom-rem) * 10);
  }
  .cs_class_about--block--caption--desc {
    text-align: justify;
    text-justify: inter-ideograph;
    padding: 0 calc(var(--custom-rem) * 12);
  }
  .cs_class_about--block--conclusion {
    font-size: calc(var(--custom-rem) * 22);
    line-height: 2.1818181818;
  }
  .cs_class_bg_text {
    display: none;
  }
  .cs_class_support {
    padding: calc(var(--custom-rem) * 60) 0 calc(var(--custom-rem) * 50);
  }
  .cs_class_support ul {
    gap: calc(var(--custom-rem) * 41);
    margin-top: calc(var(--custom-rem) * 38);
    padding-left: calc(var(--custom-rem) * 24.5);
    padding-right: calc(var(--custom-rem) * 24.5);
  }
  .cs_class_support ul > li {
    width: 100%;
  }
  .cs_class_support--list--img {
    aspect-ratio: 294/184;
  }
  .cs_class_support--list--ttl {
    letter-spacing: 0;
    margin-right: calc(var(--custom-rem) * -24);
  }
  .cs_class_support--block {
    margin: calc(var(--custom-rem) * 60) 0 0;
    padding: calc(var(--custom-rem) * 48) calc(var(--custom-rem) * 24);
  }
  .cs_class_support--block::after {
    width: calc(var(--custom-rem) * 30);
  }
  .cs_class_support--block--img {
    width: 100%;
    aspect-ratio: 294/184;
  }
  .cs_class_support--block--text {
    width: 100%;
    padding-top: calc(var(--custom-rem) * 11);
    padding-left: 0;
  }
  .cs_class_support--block--text--desc span {
    width: 100%;
  }
  .cs_class_support--block--text--desc span:nth-child(even) {
    width: 100%;
  }
  .cs_class_function {
    padding: calc(var(--custom-rem) * 60) 0 calc(var(--custom-rem) * 50);
  }
  .cs_class_function .cs_class_ttl_line {
    margin-bottom: calc(var(--custom-rem) * 10);
  }
  .cs_class_function--block {
    padding: calc(var(--custom-rem) * 24) calc(var(--custom-rem) * 16) calc(var(--custom-rem) * 21);
  }
  .cs_class_function--block--ttl {
    line-height: 1.2;
    letter-spacing: 0;
    margin: 0 0 calc(var(--custom-rem) * 12);
  }
  .cs_class_flow {
    padding: calc(var(--custom-rem) * 80) 0 calc(var(--custom-rem) * 40);
  }
  .cs_class_flow .cs_class_ttl_line {
    margin-bottom: calc(var(--custom-rem) * 10);
  }
  .cs_class_flow--slide {
    width: 100%;
    margin: 0 0 calc(var(--custom-rem) * 61);
  }
  .cs_class_flow--slide--block {
    width: 100%;
    margin: 0 auto 0;
    padding-left: calc(var(--custom-rem) * 16);
    padding-right: calc(var(--custom-rem) * 16);
    opacity: 1 !important;
  }
  .cs_class_flow--slide--block .swiper-wrapper {
    display: block;
  }
  .cs_class_flow--slide--block .swiper-slide {
    width: 100%;
  }
  .cs_class_flow--slide--block .swiper-slide + .swiper-slide {
    margin-top: calc(var(--custom-rem) * 16);
  }
  .cs_class_flow--slide--itrm {
    padding-right: 0;
  }
  .cs_class_flow--slide--scrollbar {
    display: none !important;
  }
  .cs_class_flow--price {
    gap: calc(var(--custom-rem) * 16);
    margin: calc(var(--custom-rem) * 40) auto 0;
  }
  .cs_class_flow--price--item {
    width: 100%;
    min-height: 0;
    padding-bottom: calc(var(--custom-rem) * 30);
  }
  .cs_class_flow--price--item--ico {
    -webkit-transform: translateY(-16%) translateX(-19%);
    transform: translateY(-16%) translateX(-19%);
  }
  .cs_class_flow--price--item--ttl {
    margin: calc(var(--custom-rem) * 16) 0 calc(var(--custom-rem) * 26);
  }
  .cs_class_flow--price--item--ttl:first-child {
    margin-top: 0;
  }
  .cs_class_flow--price--item--dlA {
    -webkit-justify-content: flex-start; /*横方向（Safari用）*/
    justify-content: flex-start; /*横方向*/
    line-height: 1.9;
  }
  .cs_class_flow--price--item--dlA dt {
    width: 100%;
  }
  .cs_class_flow--price--item--dlA dd + dd {
    width: calc(var(--custom-rem) * 110);
  }
  .cs_class_flow--price--item--dlB dt span, .cs_class_flow--price--item--dlB dd span {
    width: calc(var(--custom-rem) * 120);
  }
  .cs_class_flow--price--item--dlB dt strong, .cs_class_flow--price--item--dlB dd strong {
    width: calc(var(--custom-rem) * 150);
  }
  .cs_class_flow--price--item--dlB dd span {
    width: 100%;
  }
  .cs_class_flow--price--item--dlB dd strong {
    width: 100%;
  }
  .cs_class_qa {
    padding: calc(var(--custom-rem) * 40) 0 calc(var(--custom-rem) * 40);
  }
  .cs_class_qa .cs_class_ttl_line {
    margin-bottom: calc(var(--custom-rem) * 10);
  }
  .cs_class_qa--ttl {
    padding: calc(var(--custom-rem) * 18) calc(var(--custom-rem) * 20) calc(var(--custom-rem) * 11) calc(var(--custom-rem) * 37);
  }
  .cs_class_qa--ttl::before {
    top: calc(var(--custom-rem) * 24);
    left: calc(var(--custom-rem) * 17);
  }
  .cs_class_qa--desc {
    padding: calc(var(--custom-rem) * 11) calc(var(--custom-rem) * 25) calc(var(--custom-rem) * 11) calc(var(--custom-rem) * 36);
  }
  .cs_class_qa--desc::before {
    left: calc(var(--custom-rem) * 16);
  }
  .cs_class_qa--desc + .cs_class_qa--ttl {
    margin-top: calc(var(--custom-rem) * 10);
  }
  .cs_class_float_bnr {
    width: 100%;
    top: auto;
    bottom: 0;
    -webkit-transform: translateY(0) translateX(0);
    transform: translateY(0) translateX(0);
  }
}
@media all and (-ms-high-contrast: none) {
  .fit_img {
    object-fit: cover;
    font-family: "object-fit: cover;";
  }
}
@media (min-width: 768px) {
  .sp {
    display: none !important;
  }
  .wrap_out a:not(.no_hover):hover, .wrap_in a:not(.no_hover):hover {
    opacity: 0.8;
    filter: alpha(opacity=80);
    -ms-filter: "alpha( opacity=80 )";
  }
  .wrap_out a:not(.no_hover):hover img, .wrap_in a:not(.no_hover):hover img {
    opacity: 0.8;
    filter: alpha(opacity=80);
    -ms-filter: "alpha( opacity=80 )";
  }
  .cs_class_btn_more:hover {
    opacity: 1 !important;
    filter: brightness(1.2);
  }
  .cs_class_btn_more2:hover {
    opacity: 1 !important;
    filter: brightness(1.2);
  }
  .cs_class_float_bnr a:hover {
    opacity: 1 !important;
    filter: brightness(1.15);
  }

}


/*# sourceMappingURL=_maps/style.css.map */
