@charset "UTF-8";
/**
 * .about_page base_wrap
 * aboutページ 共通画面幅
 * 他ページと異なり間延びすると文字が読みにくいため狭める
**/
.about_page .base_wrap {
  max-width: 1440px;
}
/**
 * .about_title__type00
 * aboutページ 共通タイトル
 * 共通スタイルのためflex内を想定したorder、widthは以下に記述しない
 * flex内を想定したorder、width付与する場合は
 * 親要素（もしくはグループ名）のクラス名を前方に付加、もしくは別クラス名をHTMLへ新たに追記し、CSS内該当パーツ記述箇所にて調整
**/
.about_title__type01 {
  font-size: 20px;
  font-weight: 700;
  line-height: 32px;
  letter-spacing: 0.1ex;
  text-align: center;
  margin: 0 0 100px;
  position: relative;
}
.about_title__type01>span {
  position: relative;
  z-index: 5;
}
.about_title__type01::before {
  content: attr(data-small);
  display: block;
  color: #6fc3fe29;
  /* font-size: 5em; */
  font-size: min(8.33333vw, 100px);
  font-family: "Segoe UI", "San Francisco", "Roboto", Arial, Helvetica, sans-serif;
  font-feature-settings: "palt";
  letter-spacing: normal;
  line-height: 1;
  text-transform: uppercase;
  position: absolute;
  inset: 50% auto auto 50%;
  z-index: 1;
  transform: translate(-50%,-50%);
  pointer-events: none;
  width: 100%;
}
.has--bg-color .about_title__type01::before {
  color: #fff;
}
@media (max-width: 767.98px) {
  .about_title__type01 {
    font-size: 20px;
    margin: 0 0 30px;
  }
  .about_title__type01::before {
    /* font-size: 3.333em; */
    font-size: min(13.3333vmin, 50px);
  }
}
.about_title__type02 {
  color: inherit;
  font-size: 24px;
  font-weight: 700;
  font-feature-settings: "palt";
  line-height: 32px;
  text-align: center;
  margin: 0 0 32px;
  padding: 0 16px;
}
.about_title__type01 + .about_title__type02 {
  margin-top: -24px;
}
@media (max-width: 767.98px) {
  .about_title__type02 {
    font-size: 16px;
    line-height: 32px;
    margin: 12px 0 0;
    padding: 0 16px;
  }
}
.about_title__type03 {
  display: inline-block;
  border-bottom: 4px double var(--site-c-sub);
  color: var(--site-c-sub);
  font-size: 22px;
  font-weight: 700;
  padding-bottom: 4px;
  margin: 10px 0 8px;
}
@media (max-width: 959.98px) {
  .about_title__type03 {
    font-size: 20px;
    padding-bottom: 4px;
    margin: 16px 0 8px;
  }
}
/**
 * .about_box__type00
 * aboutページ 共通囲みスタイル
**/
.about_box__type01 {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: min(6.25vw, 80px);
}
.about_box__type01.many_letters {}
.about_box__type01 + .about_box__type01 {
  margin-top: 80px;
}

@media (max-width: 767.98px) {
  .about_box__type01 {
    display: grid;
    grid-template-columns: 1fr;
    gap: 24px;
  }
  .about_box__type01 + .about_box__type01 {
    margin-top: 32px;
  }
}


.about_box__type01_image {
  position: relative;
}
.about_box__type01_image::before {
  content: "";
  display: block;
  padding: 66.66% 0 0;
  position: relative;
  z-index: 1;
}

.about_box__type01_image>img {
  border-radius: 0;
  position: absolute;
  left: 0;
  top: 0;
  z-index: 1;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.about_box__type01_image.item--3col {
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-template-rows: 1fr 1fr;
  gap: 24px;
  /* aspect-ratio: 3 / 2; */
}
.about_box__type01_image.item--3col::before {
  display: none;
}
.about_box__type01_image.item--3col>img {
  box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16);
  border-radius: 10px;
}
.about_box__type01_image.item--3col>img:nth-child(1) {
    grid-column: 1 / 2; 
    grid-row: 1 / 3;    
    object-fit: cover;
    width: 100%;
    height: 100%;
}
.about_box__type01_image.item--3col>img:nth-child(2) {
    grid-column: 2 / 3; 
    grid-row: 1 / 2;    
    object-fit: cover; 
    width: 100%;
    height: 100%;
}
.about_box__type01_image.item--3col>img:nth-child(3) {
    grid-column: 2 / 3; 
    grid-row: 2 / 3;    
    object-fit: cover;
    width: 100%;
    height: 100%;
}

.about_box__type01_text {
  padding-bottom: 48px;
}
.about_box__type01.many_letters .about_box__type01_text {
  padding-top: 48px;
  padding-bottom: 0;
}
.about_box__type01:nth-child(even) .about_box__type01_image {
  order: 2;
}
.about_box__type01:nth-child(even) .about_box__type01_text {
  order: 1;
}
@media (max-width: 767.98px) {
  .about_box__type01_image {
    order: 2;
  }
  .about_box__type01_image.item--3col {
    gap: 12px;
    aspect-ratio: 3 / 2;
  }
  .about_box__type01_text {
    order: 1;
    padding-top: 16px;
    padding-bottom: 32px;
  }
  .about_box__type01.many_letters .about_box__type01_text {
    padding-top: 16px;
    padding-bottom: 32px;
  }
}


.about_box__type01_title {
  font-size: 20px;
  font-weight: 700;
  line-height: 32px;
  letter-spacing: 0.1ex;
  text-align: center;
  margin: 0 0 48px;
  position: relative;
}
.about_box__type01_title>span {
  position: relative;
  z-index: 5;
}

.about_box__type01_title::before {
  content: attr(data-small);
  display: block;
  color: #6fc3fe29;
  font-size: 4em;
  font-size: min(6.66666vw, 80px);
  font-family: "Segoe UI", "San Francisco", "Roboto", Arial, Helvetica, sans-serif;
  font-feature-settings: "palt";
  letter-spacing: normal;
  line-height: 1;
  text-transform: uppercase;
  white-space: nowrap;
  position: absolute;
  inset: 50% 0 auto;
  z-index: 1;
  transform: translate(0,-50%);
  pointer-events: none;
}
@media (max-width: 767.98px) {
  .about_box__type01_title {
    font-size: 20px;
    margin: 0 0 30px;
  }
  .about_box__type01_title::before {
    font-size: min(13.3333vmin, 50px);
  }
}

.about_box__type01_text p, .about_box__type01_text ol, .about_box__type01_text ul {
  font-size: inherit;
  font-weight: 400;
  letter-spacing: 0.1ex;
  line-height: 2.7;
}
.about_box__type01_text p + p {
  margin-top: 2.75em;
}
@media (max-width: 767.98px) {
  .about_box__type01_text p, .about_box__type01_text ol, .about_box__type01_text ul {
    line-height: 2;
  }
  .about_box__type01_text * + p, .about_box__type01_text * + ol, .about_box__type01_text * + ul {
    margin-top: 16px;
  }
  .about_box__type01_text p + p {
    margin-top: .75em;
  }
}


.about_box__type02 {
  display: flex;
  flex-flow: row wrap;
  justify-content: space-between;
  align-content: center;
  align-items: center;
  position: relative;
}
.about_box__type02 + .about_box__type02 {
  margin-top: 96px;
}
.about_box__type02_image {
  position: relative;
  width: 50%;
  order: 2;
  pointer-events: none;
}
.about_box__type02_image::before {
  content: "";
  display: block;
  padding: 100% 0 0;
  position: relative;
  z-index: 1;
}
.about_box__type02_image img {
  border-radius: 0;
  position: absolute;
  left: 0;
  top: 0;
  z-index: 1;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: left top;
  transform: translate(12.5%, 39%) rotate(30deg) scale(1.5);
  filter: drop-shadow(8px 8px 8px #ddd);
}
.about_box__type02_text {
  width: 50%;
  position: relative;
  z-index: 5;
  order: 1;
}
.about_box__type02_title {
  font-size: 28px;
  font-weight: 700;
  letter-spacing: 0.1ex;
  line-height: 1.5;
  margin: 0 0 24px;
}
.about_box__type02_text p {
  font-size: 16px;
  font-weight: 500;
  line-height: 2;
}
.about_box__type02_text p + p {
  margin-top: 16px;
}
@media (max-width: 767.98px) {
  .about_box__type02 {
    align-content: flex-start;
    align-items: flex-start;
  }
  .about_box__type02 + .about_box__type02 {
    margin-top: 48px;
  }
  .about_box__type02_image {
    order: 2;
    width: 100%;
  }
  .about_box__type02_text {
    order: 1;
    width: 100%;
    padding-bottom: 16px;
  }
  .about_box__type02_title {
    font-size: 24px;
    line-height: 1.5;
    margin: 0 0 20px;
  }
  .about_box__type02_text p {
    font-size: 14px;
    line-height: 2;
  }
}
/**
 * .about_section__base
 * aboutページ 共通セクション
 * 
 * 使用範囲が広いため、全て共通の場合以外、画像・色の設定はしない
**/
.about_section__base {
  padding: 120px 0;
}
.base_wrap+.about_section__base {
  margin-top: 80px;
}
.about_section__base+.base_wrap {
  margin-top: 120px;
}
@media (max-width: 767.98px) {
  .about_section__base {
    padding: 64px 0;
  }
  .base_wrap+.about_section__base {
    margin-top: 64px;
  }
  .about_section__base+.base_wrap {
    margin-top: 64px;
  }
}

.about_section__base.has--bg-color {
  background: var(--site-bg-c-underlayer);
  background: #E9F5FF;
}

.about_page .parts_lead {
  background: transparent;
  margin: 0 auto;
  padding: 0;
}
.about_page *+.parts_lead {
  margin-top: 32px;
}
.about_page .parts_lead > p {
  font-size: inherit;
  font-weight: 400;
  letter-spacing: 0.1ex;
  text-align: center;
  line-height: 2.75;
}
.about_page .parts_lead > *+p {
  margin-top: 2.75em;
}
@media (max-width: 767.98px) {
  .about_page .parts_lead > p {
    /* text-align: left; */
    line-height: 2;
    letter-spacing: 0.07em;
    margin-top: .75em;
  }
}
@media (max-width: 690.98px) {
  .about_page .parts_lead > p {
    text-align: left;
  }
}

/**
 * .plan_list
 * aboutページ 掲載プラン
**/
.plan_list > table {
  table-layout: fixed;
  border-collapse: collapse;
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.25);
  background: #fff;
  font-size: 14px;
  font-weight: 500;
  max-width: 960px;
  width: 100%;
  margin: 0 auto;
}
.plan_list > table > thead > tr > th, .plan_list > table > thead > tr > td {
  background-color: var(--font-c);
  color: #fff;
  font-weight: 700;
  text-align: center;
  padding: 12px 16px;
}
.plan_list > table > tbody > tr > th, .plan_list > table > tbody > tr > td {
  font-weight: 700;
  font-feature-settings: "palt";
  padding: 12px 16px;
  border-left: solid 1px rgba(0, 0, 0, 0.13);
}
.plan_list > table > tbody > tr > th {
  text-align: left;
}
.plan_list > table > tbody > tr > td {
  text-align: center;
}
.plan_list > table > tbody > tr:nth-child(even) > th, .plan_list > table > tbody > tr:nth-child(even) > td {
  background-color: rgba(229, 240, 248, 0.66);
}
.plan_list_option {
  display: inline-block;
  border-radius: 3px;
  border: solid 1px #6fc3fe;
  background: #6fc3fe;
  color: #ff8d98;
  color: #fff;
  font-size: 10px;
  font-weight: 500;
  letter-spacing: 0.05ex;
  line-height: 14px;
  padding: 4px 8px;
  margin-top: 4px;
}
@media (min-width: 768px) {
  .plan_list > table > tbody > tr:nth-child(even) > :first-child {
    background-color: rgba(192, 214, 231, 0.66);
  }
}
@media (max-width: 767.98px) {
  .plan_list > table {
    font-size: 11px;
  }
  .plan_list > table > thead > tr > :first-child, .plan_list > table > tbody > tr > :first-child {
    width: 144px;
  }
}
.plan_list > p {
  color: rgba(0, 0, 0, 0.56);
  font-size: 16px;
  text-align: center;
  margin: 16px 0 0;
}
.plan_list table i {
  display: inline-block;
  transform: scale(1.5);
}
/**
 * .about_cta__box_btn
 * aboutページ CTA
**/
.about_cta {
  padding: 40px;
  background: #fff;
  border-radius: 5px;
  max-width: 980px;
  margin: 0 auto 40px;
}
* + .about_cta {
  margin: 40px auto;
}
.about_cta > p {
  font-size: 16px;
  font-weight: 500;
  line-height: 32px;
  text-align: center;
}
.about_cta > p small {
  color: rgba(0, 0, 0, 0.56);
  font-size: inherit;
}
@media (max-width: 767.98px) {
  .about_cta {
    margin: 24px auto 24px;
    padding: 24px;
  }
  .about_cta > p {
    font-size: 14px;
    line-height: 28px;
  }
}
.about_cta__box_btn {
  margin: 40px 0 0;
}
.about_cta .about_cta__box_btn {
  margin-top: 24px;
}
.about_cta__box_btn a {
  display: block;
  border-radius: 10px;
  box-shadow: 0 8px 20px 0px rgb(36 143 131 / 50%);
  background: linear-gradient(45deg, #41df9b 0%, #3db7b6 100%);
  color: #fff;
  font-size: 22px;
  font-weight: 700;
  text-align: center;
  max-width: 500px;
  width: 100%;
  padding: 20px 50px;
  margin: 0 auto;
}
.about_cta__box_btn a:hover {
  opacity: 0.9;
}
@media (max-width: 767.98px) {
  .about_cta__box_btn {
    max-width: 350px;
    margin: 20px auto 0;
  }
  .about_cta__box_btn a {
    font-size: 18px;
    padding: 15px 5px;
  }
}

/**
 * /about/ページ
**/
#about_benefit {
  background-color: #fff;
}
#about_useful {
  background-color: #fff;
}
.about_howtosearch {
  display: flex;
  justify-content: space-evenly;
  margin: 70px 0;
}
.about_howtosearch > div {
  width: 15%;
  display: flex;
  flex-flow: column nowrap;
  align-items: center;
  align-content: center;
}
.about_howtosearch :first-child {
  position: relative;
}
.about_howtosearch > div > div {
  padding: 40px 42px;
  border-radius: 50%;
  background: #fff;
  box-shadow: 0 0 20px rgba(0, 0, 0, 0.1);
}
.about_howtosearch > div > div > img {
  width: 90px;
  height: 95px;
  object-fit: contain;
}
.about_howtosearch > div > span {
  font-size: 18.5px;
  font-weight: 500;
  background: #fdfc78;
  color: var(--site-c-sub);
  padding: 2px 12px;
  position: absolute;
  left: 0;
  top: 10px;
}
.about_howtosearch > div > p {
  font-size: 26px;
  font-weight: 500;
  text-align: center;
  margin: 20px 0;
}
@media (max-width: 767.98px) {
  .about_howtosearch {
    flex-wrap: wrap;
    justify-content: center;
    align-content: flex-start;
    align-items: flex-start;
    margin: 30px 0;
  }
  .about_howtosearch > div {
    width: 32%;
    margin: 0 20px;
  }
  .about_howtosearch > div > span {
    font-size: 10px;
    padding: 0 5px;
    top: 5px;
  }
  .about_howtosearch > div > div {
    padding: 20px 23px;
  }
  .about_howtosearch > div > div > img {
    width: 60px;
    height: 65px;
  }
  .about_howtosearch > div > p {
    font-size: 14px;
    margin: 15px 0;
  }
}
/**
* /about_services/ページ
**/
#about_service_elaborate {
  background-color: #fff;
}
#about_service_plans {
  background-color: var(--site-bg-c-underlayer)
}
/**
* /about_kuchikomi/ページ
**/
#about_kuchikomi_3point {
  background-color: #fff;
}
#about_kuchikomi_3point .base_wrap {
  max-width: 1280px;
}
.about_kuchikomi_3point_parts {
  counter-reset: kuchikomi-3point;
  display: flex;
  flex-flow: row wrap;
  justify-content: center;
  align-content: stretch;
  align-items: stretch;
}
.about_kuchikomi_3point_parts > dl {
  border-radius: 8px;
  border: solid 4px var(--site-border-c);
  background: #fff;
  box-shadow: 0 8px 16px 0 rgba(0, 0, 0, 0.06);
  padding: 24px 24px 96px;
  position: relative;
}
.about_kuchikomi_3point_parts > dl::before {
  counter-increment: kuchikomi-3point;
  content: "0"counter(kuchikomi-3point);
  display: block;
  color: var(--site-c-disabledgray);
  font-family: "Segoe UI", "San Francisco", "Roboto", Arial, Helvetica, sans-serif;
  font-weight: 700;
  font-size: 64px;
  line-height: 1;
  text-align: right;
  padding: 0 20px 20px;
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 1;
  pointer-events: none;
}
.about_kuchikomi_3point_parts > dl > dt {
  color: var(--site-c-sub);
  font-size: 20px;
  font-feature-settings: "palt";
  font-weight: 700;
  line-height: 32px;
}
.about_kuchikomi_3point_parts > dl > dd {
  color: rgba(0, 0, 0, 0.56);
  font-size: 14px;
  font-weight: 500;
  line-height: 28px;
  margin-top: 16px;
}
@media (min-width: 768px) {
  .about_kuchikomi_3point_parts {
    margin: 0 -24px;
  }
  .about_kuchikomi_3point_parts > dl {
    width: calc((100% - 144px) / 3);
    margin: 0 24px;
  }
}
@media (max-width: 767.98px) {
  .about_kuchikomi_3point_parts {
    margin: 0;
  }
  .about_kuchikomi_3point_parts > dl + dl {
    margin-top: 24px;
  }
}
#about_kuchikomi_equally {
  background-color: #fff;
  overflow: hidden;
}
@media (min-width: 768px) {
  #about_kuchikomi_equally {
    padding: 0;
  }
}
@media (max-width: 767.98px) {
  #about_kuchikomi_equally {
    padding-top: 48px;
  }
}
#about_kuchikomi_equally .about_box__type02 {
  min-height: 640px;
}
#about_kuchikomi_equally .about_box__type02_title > img {
  width: auto;
  height: 48px;
  vertical-align: top;
  margin: 0 0 32px;
}
#about_kuchikomi_equally .about_box__type02_title > span {
  display: block;
}
@media (max-width: 767.98px) {
  #about_kuchikomi_equally .about_box__type02 {
    min-height: 0;
  }
  #about_kuchikomi_equally .about_box__type02_title {
    text-align: center;
  }
  #about_kuchikomi_equally .about_box__type02_title > img {
    width: auto;
    height: 28px;
    margin: 0 0 16px;
  }
}
.about_disclaimer_parts {
  color: rgba(0, 0, 0, 0.56);
  font-size: 14px;
  font-weight: 500;
  line-height: 28px;
}
.about_disclaimer_parts .title_parts {
  font-size: 14px;
  font-weight: 500;
  letter-spacing: 0.5ex;
  text-align: center;
}
.about_disclaimer_parts > * + * {
  margin-top: 28px;
}
@media (max-width: 767.98px) {
  .about_disclaimer_parts {
    font-size: 12px;
    line-height: 24px;
  }
  .about_disclaimer_parts .title_parts {
    font-size: 12px;
  }
  .about_disclaimer_parts > * + * {
    margin-top: 16px;
  }
}

/* about_features */
/* ========================= */
.about_features {}
@media (max-width: 767.98px) {
  .about_features {
    padding-bottom: 0;
  }
}

/* about_for */
/* ========================= */
.about_for {}
.about_for .about_box__type01 {}

@media (max-width: 767.98px) {
  .about_for .about_box__type01_image {
    width: 100vw;
    margin: 0 calc(50% - 50vw);
  }
}

/**
 * slider
**/
.about_slider{
  display: none;
}
.about_slider.slick-initialized{
  display: block; /*slick-initializedが付与されたら表示*/
}
.about_slider {}
.about_slider__item {
  width: 356px;
  padding: 0 20px;
}
.about_slider__item img {}
.about_slider.item--cap .about_slider__item img {
  box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16);
  width: 100%;
  height: auto;
}
@media (max-width: 767.98px) {
  .about_slider.item--cap .about_slider__item {
    max-width: 220px;
    width: 220px;
  }
}

.about_slider.item--bg .about_slider__item {
  width: 270px;
  padding: 0 10px;
}
.about_slider.item--bg .about_slider__item img {
  width: 100%;
  height: auto;
}
@media (max-width: 767.98px) {
  .about_slider.item--bg .about_slider__item {
    max-width: 248px;
    width: 248px;
  }
}

