@charset "UTF-8";
/** 色 **/
:root {
  /** 色:ブルーグレー **/
  --bluegray-06: #404144;
  --bluegray-05: #5d5e62;
  --bluegray-04: #acaeb8;
  --bluegray-03: #c9ccd5;
  --bluegray-02: #e2e4e9;
  --bluegray-01: #f6f7f8;
  --bluegray-00: #fff;
  /** 色:ブルー **/
  --gas_blue-06: #265c99;
  --gas_blue-05---bland: #2f6db6;
  --gas_blue-04: #5391d9;
  --gas_blue-03: #b0d0f3;
  --gas_blue-02: #d6e9fd;
  --gas_blue-01: #edf5fe;
  /** 色:スカイブルー **/
  --skyblue-06: #0083b4;
  --skyblue-05: #02a7dd;
  --skyblue-04: #3ac8f6;
  --skyblue-03: #7cd8f9;
  --skyblue-02: #bbeafc;
  --skyblue-01: #eaf8ff;
  /** 色:グリーン **/
  --green-06: #1c6d46;
  --green-05: #0d9357;
  --green-04: #20aa6c;
  --green-03: #7fe0a5;
  --green-02: #cbf2da;
  --green-01: #e5fbed;
  /** 色:ライトグリーン **/
  --lightgreen-06: #52842c;
  --lightgreen-05: #6faf33;
  --lightgreen-04: #89c259;
  --lightgreen-03: #bce695;
  --lightgreen-02: #def2c8;
  --lightgreen-01: #ecf9db;
  /** 色:オレンジ **/
  --orange-06: #d05a0b;
  --orange-05: #ec711d;
  --orange-04: #f09557;
  --orange-03: #f7b385;
  --orange-02: #ffd8bc;
  --orange-01: #fff3ea;
  /** 色:イエロー **/
  --yellow-06: #e4bb00;
  --yellow-05: #ffd43a;
  --yellow-04: #fd6;
  --yellow-03: #ffe899;
  --yellow-02: #fff3bf;
  --yellow-01: #fffae5;
  /** 色:レッド **/
  --red-06: #a7071c;
  --red-05: #c1303a;
  --red-04: #e06365;
  --red-03: #f2a2a2;
  --red-02: #fbd7d7;
  --red-01: #faeff1;
  /** 色:ピンク **/
  --pink-06: #a30057;
  --pink-05: #d82682;
  --pink-04: #f87cb1;
  --pink-03: #fabad2;
  --pink-02: #ffe0ef;
  --pink-01: #ffeff6;
  /** 色:ツートンカラー **/
  --duo-tone-blue-orange: linear-gradient(270deg, #f78131 50%, #2f6db6 50%);
  --duo-tone-white-orange: linear-gradient(90deg, #fff 50%, #f78131 50%);
  /** 色:テキスト **/
  --Text-text_primary: var(--bluegray-06);
  --Text-text_secondary: var(--bluegray-05);
  --Text-text_light: var(--bluegray-03);
  --Text-text_white: var(--bluegray-00);
  --Text-text_blue: var(--gas_blue-05---bland);
  --Text-text_skyblue: var(--skyblue-05);
  --Text-text_orange: var(--orange-05);
  --Text-text_yellow: var(--yellow-05);
  --Text-text_red: var(--red-05);
  --Text-text_green: var(--green-05);
  /** 背景色 ブルーグレー **/
  --Fill-Bluegray-bluegray_06: var(--bluegray-06);
  --Fill-Bluegray-bluegray_05: var(--bluegray-05);
  --Fill-Bluegray-bluegray_04: var(--bluegray-04);
  --Fill-Bluegray-bluegray_03: var(--bluegray-03);
  --Fill-Bluegray-bluegray_02: var(--bluegray-02);
  --Fill-Bluegray-bluegray_01: var(--bluegray-01);
  --Fill-Bluegray-bluegray_00: var(--bluegray-00);
  /** 背景色 ブルー **/
  --Fill-Blue-blue_06: var(--gas_blue-06);
  --Fill-Blue-blue_05---bland: var(--gas_blue-05---bland);
  --Fill-Blue-blue_04---bland: var(--gas_blue-04);
  --Fill-Blue-blue_04---hover: var(--gas_blue-04);
  --Fill-Blue-blue_03: var(--gas_blue-03);
  --Fill-Blue-blue_02: var(--gas_blue-02);
  --Fill-Blue-blue_01: var(--gas_blue-01);
  /** 背景色 スカイブルー **/
  --Fill-skyblue-skyblue_05: var(--skyblue-05);
  --Fill-skyblue-skyblue_04: var(--skyblue-04);
  --Fill-skyblue-skyblue_01: var(--skyblue-01);
  /** 背景色 レッド **/
  --Fill-Red-red_05: var(--red-05);
  --Fill-Red-red_04: var(--red-04);
  --Fill-Red-red_02: var(--red-02);
  --Fill-Red-red_01: var(--red-01);
  /** 背景色 オレンジ **/
  --Fill-Orange-orange_05: var(--orange-05);
  --Fill-Orange-orange_04---hover: var(--orange-04);
  --Fill-Orange-orange_02: var(--orange-02);
  --Fill-Orange-orange_01: var(--orange-01);
  /** 背景色 イエロー **/
  --Fill-Yellow-yellow_05: var(--yellow-05);
  --Fill-Yellow-yellow_01: var(--yellow-01);
  /** 背景色 ピンク **/
  --Fill-pink-pink_05: var(--pink-05);
  --Fill-pink-pink_01: var(--pink-01);
  /** 背景色 グリーン **/
  --Fill-Green-green_05: var(--green-05);
  --Fill-Green-green_04: var(--green-04);
  --Fill-Green-green_01: var(--green-01);
  /** ボーダーカラー **/
  --Border-border_lightgray: var(--bluegray-02);
  --Border-border_gray: var(--bluegray-03);
  --Border-border_white: var(--bluegray-00);
  --Border-border_blue: var(--gas_blue-05---bland);
  --Border-border_skyblue: var(--skyblue-05);
  --Border-border_red: var(--red-05);
  --Border-border_yellow: var(--yellow-05);
}

/** 影 **/
:root {
  --theme-shadow-dark: 4px 4px 14px 0px rgb(17 48 86 / 25%);
  --theme-shadow-gray: 4px 4px 14px 0px rgb(17 48 86 / 6%);
}

/** グラデーション **/
:root {
  --Gradient-white: 255, 255, 255;
}

/** ボタンホバー **/
:root {
  --Button-hover-white: rgb(255 255 255 / 10%);
}

/** 余白 **/
:root {
  --Spacing-Size-none: 0;
  --Spacing-Size-xxxxs: 4px;
  --Spacing-Size-xxxs: 4px;
  --Spacing-Size-xxs: 8px;
  --Spacing-Size-xs: 12px;
  --Spacing-Size-sm: 16px;
  --Spacing-Size-md: 24px;
  --Spacing-Size-lg: 32px;
  --Spacing-Size-xl: 40px;
  --Spacing-Size-xxl: 48px;
  --Spacing-Size-xxxl: 56px;
}

/** ライブラリ：swipeer **/
:root {
  --Swiper-navigation-border: #006fbc;
  --Filter-dropShadow: drop-shadow(4px 4px 14px rgb(17 48 86 / 12%));
}

/** 2カラム用カード：余白 **/
:root {
  --Spacing-2col_in-card-md: 24px;
}

/** セクション間余白 **/
:root {
  --Spacing-Section-section_none: 0;
  --Spacing-Section-section_sm: 32px;
  --Spacing-Section-section_md: 56px;
  --Spacing-Section-section_lg: 64px;
}

/** 左右余白 **/
:root {
  --Spacing-Side-side: 20px;
}

/** カードpadding：XXS **/
:root {
  --Padding-Card-XXS-side_xs: 20px;
  --Padding-Card-XXS-top-bottom_xs: 16px;
}

/** カードpadding：XS **/
:root {
  --Padding-Card-XS-side_sm: 20px;
  --Padding-Card-XS-top-bottom_sm: 16px;
}

/** カードpadding：S **/
:root {
  --Padding-Card-S-side_md: 20px;
  --Padding-Card-S-side_sm: 20px;
  --Padding-Card-S-top-bottom_sm: 24px;
}

/** カードpadding：M **/
:root {
  --Padding-Card-M-side_md: 20px;
  --Padding-Card-M-top-bottom_md: 24px;
}

/** カードpadding：L **/
:root {
  --Padding-Card-L-side_lg: 20px;
  --Padding-Card-L-top-bottom_lg: 24px;
}

/** テーブルセル余白 **/
:root {
  --Padding-Table-call_side: 20px;
  --Padding-Table-cell_top-bottom: 12px;
}

/** ボーダー：角丸 **/
:root {
  --Radius-radius_sm: 4px;
  --Radius-radius_md: 6px;
  --Radius-radius_lg: 10px;
  --Radius-radius_full: 999px;
}

/** ページ全体のフォント設定 **/
:root {
  --Font-family-Noto-Sans-JP: "Noto Sans JP", sans-serif;
  --Font-family-Jost: "Jost", sans-serif;
}

/** z-index **/
:root {
  --z-index-header: 9100;
  --z-index-modal: 9999;
}

/** ヘッダーメニュー(src/sass/layout/_gnav.scss,_header.scssで使用) **/
:root {
  --header-upper-list-height: auto;
  --header-inner-height: 90px;
  --header-height: auto;
}

/* housing page */
.l-page-housing-2 {
  font-size: 2.8rem;
}
.l-page-housing-2.housing-2-overflow-padding {
  margin-right: -4px;
  margin-left: -4px;
}

/* アコーディオン */
.l-page-housing-accordion {
  background: var(--Fill-Bluegray-bluegray_00);
  border-radius: 10px;
  box-shadow: 4px 4px 14px 0 rgba(17, 48, 86, 0.06);
}

.l-page-housing-accordion-title {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  padding: 16px 50px 16px 16px;
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1.25;
  position: relative;
  display: flex;
  align-items: center;
  width: 100%;
}
.l-page-housing-accordion-title::before, .l-page-housing-accordion-title::after {
  position: absolute;
  top: 50%;
  right: 40px;
  display: block;
  width: 12px;
  height: 2px;
  content: "";
  background-color: var(--Fill-Blue-blue_05---bland);
  transition: opacity 300ms, transform 300ms;
}
.l-page-housing-accordion-title::before {
  transform: translateY(-50%);
}
.l-page-housing-accordion-title::after {
  transform: translateY(-50%) rotate(90deg);
}
.l-page-housing-accordion-title.is-open::after {
  transform: translateY(-50%) rotate(0deg);
}

.l-page-housing-accordion-body .accordion-contents {
  padding: 12px 16px;
}
.l-page-housing-accordion-body .accordion-contents {
  padding-top: 0;
}

.l-page-housing-accordion-body-inner {
  display: grid;
}

.l-page-housing-accordion-body-item {
  overflow: clip;
  border: 1px solid var(--Border-border_gray, #c9ccd5);
}

.l-page-housing-accordion-body-head {
  padding: 0 16px 12px;
  background: var(--Fill-Bluegray-bluegray_01, #f6f7f8);
  border-bottom: 1px solid var(--Border-border_gray, #c9ccd5);
}

.l-page-housing-accordion-body-data {
  padding: 0;
}

.l-page-housing-accordion-body-list {
  display: grid;
  gap: 8px;
  font-size: 1.3rem;
}
.l-page-housing-accordion-body-list * + * {
  margin-top: 0;
}
@media (min-width: 1025px){
  :root {
    --Spacing-Size-none: 0;
    --Spacing-Size-xxxxs: 4px;
    --Spacing-Size-xxxs: 8px;
    --Spacing-Size-xxs: 12px;
    --Spacing-Size-xs: 16px;
    --Spacing-Size-sm: 24px;
    --Spacing-Size-md: 32px;
    --Spacing-Size-lg: 40px;
    --Spacing-Size-xl: 48px;
    --Spacing-Size-xxl: 56px;
    --Spacing-Size-xxxl: 64px;
  }
  :root {
    --Spacing-2col_in-card-md: 56px;
  }
  :root {
    --Spacing-Section-section_sm: 64px;
    --Spacing-Section-section_md: 96px;
    --Spacing-Section-section_lg: 120px;
  }
  :root {
    --Spacing-Side-side: 48px;
  }
  :root {
    --Padding-Card-XXS-side_xs: 24px;
    --Padding-Card-XXS-top-bottom_xs: 20px;
  }
  :root {
    --Padding-Card-XS-side_sm: 40px;
    --Padding-Card-XS-top-bottom_sm: 32px;
  }
  :root {
    --Padding-Card-S-side_sm: 64px;
    --Padding-Card-S-top-bottom_sm: 48px;
  }
  :root {
    --Padding-Card-M-side_md: 80px;
    --Padding-Card-M-top-bottom_md: 64px;
  }
  :root {
    --Padding-Card-L-side_lg: 96px;
    --Padding-Card-L-top-bottom_lg: 80px;
  }
  :root {
    --Padding-Table-call_side: 24px;
    --Padding-Table-cell_top-bottom: 16px;
  }
  :root {
    --Radius-radius_sm: 4px;
    --Radius-radius_md: 6px;
    --Radius-radius_lg: 14px;
    --Radius-radius_full: 999px;
  }
  .l-page-housing-2 {
    font-size: 4.4rem;
  }
  .l-page-housing-accordion {
    border-radius: 14px;
  }
  .l-page-housing-accordion-title {
    padding: 24px 100px 24px 40px;
    font-size: 2rem;
  }
  .l-page-housing-accordion-body .accordion-contents {
    padding: 0 40px var(--Spacing-Size-lg) 40px;
  }
  .l-page-housing-accordion-body-item:first-child {
    border-right: none;
    border-radius: var(--Radius-radius_md) 0 0 var(--Radius-radius_md);
  }
  .l-page-housing-accordion-body-item:last-child {
    border-radius: 0 var(--Radius-radius_md) var(--Radius-radius_md) 0;
  }
  .l-page-housing-accordion-body-head {
    padding: 16px 24px;
  }
  .l-page-housing-accordion-body-list {
    font-size: 1.6rem;
  }
  .l-page-housing-accordion-body-list:not(.column-1) {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media not (min-width: 1025px){
  .l-page-housing-accordion-body-item:first-child {
    border-bottom: none;
    border-radius: var(--Radius-radius_md) var(--Radius-radius_md) 0 0;
  }
  .l-page-housing-accordion-body-item:last-child {
    border-radius: 0 0 var(--Radius-radius_md) var(--Radius-radius_md);
  }
}