@charset "utf-8";

/* ========================================================
	module.css => モジュール用CSS
======================================================== */
/*変数 var_____*/
:root {
      /* カラー（variable.cssの実値と揃える） */
      --mo_col_main: #0C5918;
      --mo_col_main_d: #094312;
      --mo_col_main_l: #E7EEE8;
      --mo_col_btn: #0C5918;
      --mo_col_btn_back: #898989;
      --mo_col_white: #FFFFFF;
      --mo_col_gray: #666666;
      --mo_col_green: #81BF24;
      --mo_col_green_l: #9BD445;

      --mo_col_green_b: #1B982F;
      --mo_col_yellow: #F4AD26;
      /* module固有カラー */
      --mo_col_blue: #0079AE;
      --mo_col_blue_l: #009FE5;
      --mo_col_red: #D80000;
      --mo_col_pup: #9947AA;
      --mo_bg_black: #d1d1d1;
      /* 背景色 */
      --mo_bg_main_l: #F7F8F7;
      --mo_bg_gray_l: #F7F8F7;
      --mo_bg_gray_ll: #E7E8E7;
      --mo_bg_green_ll: #DCF5E5;
      /* SVGフィルター */
      --mo_fil_main: invert(18%) sepia(57%) saturate(979%) hue-rotate(112deg) brightness(88%) contrast(97%);
      --mo_fil_ff: brightness(0) invert(1);
      /* ボックスシャドウ */
      --mo_box_shadow: 0px 2px 11px 0px rgba(0, 0, 0, 0.09);
      --mo_box_shadow_none: none;
      /* レイアウト */
      --mo_arrow_aspct_01: 7/11;
      --mo_arrow_aspct_02: 8/13;
      --mo_rudius_pc: 4px;
      --mo_rudius_pc_tr: 4px 4px 0 0;
      --mo_font_mon: "Montserrat", sans-serif;
}

/*page_title_area ページタイトル
----------------------------------------------------------------------------------------------------------------------------------------------------*/
.page_title_info_cont {
      overflow: hidden;
}

.page_title_area {
      background: linear-gradient(135deg, var(--mo_col_main_d) 0%, var(--mo_col_main) 100%);
}

.page_title_bg {
      display: none;
}

.page_title_w {
      max-width:1200px;
      margin: 0 auto;
      padding: 3em 0;
}

.page_title {
      color: var(--mo_col_white);
      font-size: 2.0em;
      font-weight: bold;
      letter-spacing: 0.08em;
      line-height: 1.4;
      position: relative;
}

/* .page_title:before {
      content: "";
      position: absolute;
      left: 0;
      top: 0.1em;
      bottom: 0.1em;
      width: 4px;
      background: var(--mo_col_white);
      border-radius: 2px;
} */

@media screen and (max-width:1300px) {
.page_title_w {
      max-width:90%;
}
}

@media screen and (max-width: 680px) {
      .page_title {
            font-size: 1.8rem;
            padding-left: 0.8em;
      }
}

/*.topic_path
---------------------------------------------------------------------------------------------------*/
.topic_path {
      max-width: 1200px;
      margin: auto;
}

.topic_path li {
      display: inline-block;
}

.topic_path li a:after {
      content: ">";
      margin-left: 5px;
}

@media screen and (min-width: 961px),
print {
      .topic_path {
            font-size: 1.2rem;
            background: #ffffff;
            padding: 7px 0;
            margin-bottom: 0px;
            position: relative;
            z-index: 1;
      }
}

@media screen and (max-width: 1300px) {

      .topic_path {
            max-width: 90%;
      }
}

/*topic_path sp */
@media screen and (max-width: 960px) {

      /*追従あり*/
      .topic_path {
            padding: 7px 15px;
            margin-top: 0em;
            margin-bottom: 0;
            position: relative;
            z-index: 1;
            white-space: nowrap;
            height: 20px;
            overflow: hidden;
            font-size: 1.2rem;
            -webkit-overflow-scrolling: touch;
      }

      .topic_path ul {
            white-space: nowrap;
            overflow-x: auto;
            overflow-y: hidden;
            height: 50px;
            transform: translateZ(0);
      }

      .topic_path ul li:last-child {
            margin-right: 20px;
      }
}

/*section
----------------------------------------------------------------------------------------------------------------------------------------------------*/
.mo_section {
      padding: 5em 0;
}

.mo_section_s {
      padding: 3em 0;
}

.mo_section_l {
      padding: 8em 0;
}

@media screen and (max-width: 680px) {
      .mo_section {
            padding: 2em 0;
      }

      .mo_section_s {
            padding: 1em 0;
      }

      .mo_section_l {
            padding: 3em 0;
      }
}

@media screen and (max-width: 1200px) {
      .sp_w12 {
            width: 90%;
            margin: auto;
      }
}

/*flex
----------------------------------------------------------------------------------------------------------------------------------------------------*/
.mo_fbox {
      display: flex;
      gap: 0 1em;
}

@media screen and (min-width: 681px),
print {
      .mo_fbox.mo_f_pc {
            display: flex;
      }

      .mo_fbox.mo_f_sp {
            display: block;
      }
}

@media screen and (max-width: 680px) {
      .mo_fbox.mo_f_pc {
            display: block;
      }

      .mo_fbox.mo_f_sp {
            display: flex;
      }
}

.mo_ff_re {
      flex-flow: row-reverse;
}

.mo_jc_sp {
      justify-content: space-between;
}

.mo_it_cener {
      align-items: center;
}

.mo_it_start {
      align-items: flex-start;
}

/*分割比
----------------------------------------------*/
/*fbox_col2*/
.mo_fbox_col2 {
      gap: 2em 3%;
      flex-wrap: wrap;
}

.mo_fbox_col2>* {
      width: calc((100% / 2) - 1.5%);
}

@media screen and (max-width: 680px) {
      .mo_fbox_col2.mo_f_pc>* {
            width: auto;
            margin-top: 3%;
      }

      .mo_fbox_col2.mo_f_pc>*+* {
            margin-top: 8%
      }
}

/*fbox_col3*/
.mo_fbox_col3 {
      gap: 2em 3%;
      flex-wrap: wrap;
}

.mo_fbox_col3>* {
      width: calc((100% / 3) - 2%);
}

@media screen and (max-width: 680px) {
      .mo_fbox_col3.mo_f_pc>* {
            width: auto;
      }

      .mo_fbox_col3.mo_f_pc>*+* {
            margin-top: 8%
      }
}

/*fbox_col4*/
.mo_fbox_col4 {
      gap: 1.5em 2%;
      flex-wrap: wrap;
}

.mo_fbox_col4>* {
      width: calc((100% / 4) - 1.5%);
}

@media screen and (max-width: 680px) {
      .mo_fbox_col4.mo_f_pc>* {
            width: auto;
      }

      .mo_fbox_col4.mo_f_pc>*+* {
            margin-top: 8%
      }
}

/*fbox_4_6*/
.mo_fbox_4_6 {
      gap: 5%;
}

.mo_fbox_4_6>*:nth-child(1) {
      width: 37%;
}

.mo_fbox_4_6>*:nth-child(2) {
      width: 58%;
}

@media screen and (max-width: 680px) {
      .mo_box_4_6.mo_f_pc>*:nth-child(1) {
            width: auto;
      }

      .mo_fbox_4_6.mo_f_pc>*:nth-child(2) {
            width: auto;
      }

      .mo_fbox_4_6.mo_f_pc>*+* {
            margin-top: 8%
      }
}

/*fbox_6_4*/
.mo_fbox_6_4 {
      gap: 5%;
}

.mo_fbox_6_4>*:nth-child(1) {
      width: 58%;
}

.mo_fbox_6_4>*:nth-child(2) {
      width: 37%;
}

@media screen and (max-width: 680px) {
      .mo_fbox_6_4.mo_f_pc>*:nth-child(1) {
            width: auto;
      }

      .mo_fbox_6_4.mo_f_pc>*:nth-child(2) {
            width: auto;
      }

      .mo_fbox_6_4.mo_f_pc>*+* {
            margin-top: 8%
      }
}

/*fbox_7_3*/
.mo_fbox_7_3 {
      gap: 5%;
}

.mo_fbox_7_3>*:nth-child(1) {
      width: 65%;
}

.mo_fbox_7_3>*:nth-child(2) {
      width: 30%;
}

@media screen and (max-width: 680px) {
      .mo_fbox_7_3.mo_f_pc>*:nth-child(1) {
            width: auto;
      }

      .mo_fbox_7_3.mo_f_pc>*:nth-child(2) {
            width: auto;
      }

      .mo_fbox_7_3.mo_f_pc>*+* {
            margin-top: 8%
      }
}

/*fbox_3_7*/
.mo_fbox_3_7 {
      gap: 5%;
}

.mo_fbox_3_7>*:nth-child(1) {
      width: 30%;
}

.mo_fbox_3_7>*:nth-child(2) {
      width: 65%;
}

@media screen and (max-width: 680px) {
      .mo_fbox_3_7.mo_f_pc>*:nth-child(1) {
            width: auto;
      }

      .mo_fbox_3_7.mo_f_pc>*:nth-child(2) {
            width: auto;
      }

      .mo_fbox_3_7.mo_f_pc>*+* {
            margin-top: 8%
      }
}

/*fbox_8_2*/
.mo_fbox_8_2 {
      gap: 5%;
}

.mo_fbox_8_2>*:nth-child(1) {
      width: 80%;
}

.mo_fbox_8_2>*:nth-child(2) {
      width: 15%;
}

@media screen and (max-width: 680px) {
      .mo_fbox_8_2.mo_f_pc>*:nth-child(1) {
            width: auto;
      }

      .mo_fbox_8_2.mo_f_pc>*:nth-child(2) {
            width: auto;
      }

      .mo_fbox_8_2.mo_f_pc>*+* {
            margin-top: 8%
      }

      .mo_fbox_8_2>*:nth-child(1) {
            width: 60%;
      }

      .mo_fbox_8_2>*:nth-child(2) {
            width: 35%;
      }
}

/*fbox_2_8*/
.mo_fbox_2_8 {
      gap: 5%;
}

.mo_fbox_2_8>*:nth-child(1) {
      width: 15%;
}

.mo_fbox_2_8>*:nth-child(2) {
      width: 80%;
}

@media screen and (max-width: 680px) {
      .mo_fbox_2_8.mo_f_pc>*:nth-child(1) {
            width: auto;
      }

      .mo_fbox_2_8.mo_f_pc>*:nth-child(2) {
            width: auto;
      }

      .mo_fbox_2_8>*:nth-child(1) {
            width: 35%;
      }

      .mo_fbox_2_8.mo_f_pc>*+* {
            margin-top: 8%
      }

      .mo_fbox_2_8>*:nth-child(2) {
            width: 60%;
      }
}

/*lead
-------------------------------------------------------------------------------------------------------------------------------------------------*/
.mo_lead {
      line-height: 1.8;
}

/*title 01はなしにしてます。 title_____
----------------------------------------------------------------------------------------------------------------------------------------------------*/
/*mo_title_02 h2
-----------------------------------------------------------------------------*/
.mo_title_02 {
      font-size: 1.8em;
      font-weight: 500;
      position: relative;
      padding: 0.5em 1em 0.5em 1.0em;
      letter-spacing: 1px;
      margin-bottom: 1.5em;
      z-index: 0;
}

.mo_title_02:before,
.mo_title_02:after {
      content: "";
      position: absolute;
      z-index: -1;
}

.mo_title_02:before {
      background: var(--bg_green_ll);
      width: 100%;
      height: 100%;
      left: 0;
      top: 0;
}

.mo_title_02:after {
      background: var(--mo_col_green_b);
      width: 4px;
      top: 0;
      left: 0;
      height: 100%;
}

@media screen and (max-width: 680px) {
      .mo_title_02 {
            padding: 0.5em 1em 0.5em 0.2em;
            font-size: 1.6em;
            margin-left: 0em;
            margin-bottom: 1.0em;
      }

      .mo_title_02:before {
            width: 120%;
            left: -6%;
      }

      .mo_title_02:after {
            left: -6%;
      }
}

/*mo_title_03 h3 
-----------------------------------------------------------------------------*/
.mo_title_03 {
      letter-spacing: 1px;
         font-size: 1.5em;
      padding: 0.2em 0 0.2em 1em;
      border-left: 4px solid var(--mo_col_green_b);
      margin-bottom: 1em;
}

@media screen and (max-width: 680px) {
      .mo_title_03 {
            font-size: 1.4em;
      }
}

/*mo_title_04 h4
-----------------------------------------------------------------------------*/
.mo_title_04 {
      letter-spacing: 1px;
        font-size: 1.5em;
      position: relative;
      padding-bottom: 0.5em;
      margin-bottom: 1em;
}

.mo_title_04:before,
.mo_title_04:after {
      content: "";
      position: absolute;
      left: 0;
      height: 2px;
      bottom: 0;
}

.mo_title_04:before {
      width: 100%;
      background: var(--mo_col_btn_back);
}

.mo_title_04:after {
      width: 5em;
      background: var(--mo_col_green_b);
}

@media screen and (max-width: 680px) {
      .mo_title_04 {
            font-size: 1.3em;
      }
}

/*mo_title_05 上部に線タイトル 
-----------------------------------------------------------------------------*/
.mo_title_05 {
      position: relative;
      padding: 1em 0 0.7em 0;
      margin-bottom: 1.25em;;
      font-size: 1.4em;
      font-weight: 400;
}

.mo_title_05:before {
      position: absolute;
      content: "";
      background: var(--mo_col_green_b);
      width: 1.6em;
      height: 3px;
      left: 0;
      bottom: 0;
}

.mo_title_05 span {
      font-size: 0.7em;
      font-weight: 400;
}

/*mo_title_06　左横に線タイトル 
-----------------------------------------------------------------------------*/
.mo_title_06 {
      position: relative;
      font-size: 1.25em;
      font-weight: 400;
      padding: 0.8em 0 0.8em 1.2em;
}

.mo_title_06:before {
      position: absolute;
      content: "";
      background: var(--mo_col_main);
      width: 0.8em;
      height: 2px;
      left: 0;
      top: 1.5em;
}

.mo_title_06 span {
      font-size: 0.8em;
      font-weight: 400;
}

/*mo_title_07　太字　ややおおきめ　アクセス 
-----------------------------------------------------------------------------*/
.mo_title_07 {
      font-size: 1.1em;
      font-weight: 700;
      letter-spacing: 1px;
      margin-bottom: 1.5em;
}

/*list
----------------------------------------------------------------------------------------------------------------------------------------------------*/
/*mo_li_disc
-----------------------------------------------------------------------------*/
ul.mo_li_disc>li {
      position: relative;
      padding-left: 1.5em;
      margin-bottom: 0.2em;
}

ul.mo_li_disc>li:before {
      content: "・";
      position: absolute;
      left: 0;
      top: -0.3em;
      font-size: 1.4em;
      color: var(--mo_col_main);
}

ul.mo_li_disc>li+li {
      margin-top: 0.5em;
}

/*mo_li_deci 数字リスト
-----------------------------------------------------------------------------*/
ol.mo_li_deci {
      padding: 0;
      counter-reset: cp_clist;
      /*数字をリセット*/
      list-style-type: none;
      font-family: "Noto Sans JP";
}

ol.mo_li_deci li {
      position: relative;
      margin: 0 0 0 2.0em;
}

ol.mo_li_deci>li+li {
      margin-top: 1em;
}

ol.mo_li_deci li::after {
      position: absolute;
      display: flex;
      justify-content: center;
      align-items: center;
      counter-increment: cp_clist;
      content: counter(cp_clist);
      top: 0em;
      font-weight: bold;
      left: -1.6em;
      color: #fff;
      font-size: 0.9em;
}

ol.mo_li_deci li::before {
      content: "";
      position: absolute;
      top: 0;
      left: -2.0em;
      background: var(--mo_col_main);
      width: 1.6em;
      aspect-ratio: 1/1;
      border-radius: 50%;
}

ol.mo_li_deci li:nth-child(n+10):after {
      left: -1.9em;
}

/*mo_blank_list 　別タブリスト
-----------------------------------------------------------------------------*/
.mo_blank_list>li+li {
      margin-top: 0.5em;
}

.mo_blank_list>li a {
      text-decoration: underline;
      color: var(--mo_col_blue);
}

.mo_blank_list>li a span {
      position: relative;
      padding-right: 1.4em;
}

.mo_blank_list>li span:before {
      content: "";
      background: url("../images/icn_blank.svg") no-repeat;
      background-size: contain;
      width: 1em;
      aspect-ratio: 1/1;
      position: absolute;
      top: 50%;
      right: 0;
      transform: translate(-0%, -50%);
}

@media screen and (min-width: 961px),
print {
      .mo_blank_list>li a:hover {
            text-decoration: none;
      }
}

/*parts
----------------------------------------------------------------------------------------------------------------------------------------------------*/
/*mo_link_style　テキスト内リンク例　アンダーバーのみ
-----------------------------------------------------------------------------*/
.mo_link_style {
      text-decoration: underline;
      color: var(--mo_col_blue);
}

@media screen and (min-width: 961px),
print {
      .mo_link_style:hover {
            text-decoration: none;
      }
}

/*mo_ico_blank　テキスト内リンク例　別タブ
-----------------------------------------------------------------------------*/
.mo_ico {
      position: relative;
      padding-right: 1.5em;
      margin-right: 0.5em;
      text-decoration: underline;
      color: var(--mo_col_blue);
      display: inline-block;
}

.mo_ico:after {
      content: "";
      position: absolute;
      top: 50%;
      right: 0;
      transform: translate(-0%, -50%);
}

@media screen and (min-width: 961px),
print {
      .mo_ico:hover {
            text-decoration: none;
      }
}

.mo_ico_blank:after {
      background: url("../images/icn_blank.svg") no-repeat;
      background-size: contain;
      aspect-ratio: 1/1;
      width: 1em;
}

/*mo_ico_pdf　PDFリンク
-----------------------------------------------------------------------------*/
.mo_ico_pdf {
      padding-right: 1.9em;
}

.mo_ico_pdf:after {
      background: url("../images/ico_pdf.svg") no-repeat;
      background-size: contain;
      aspect-ratio: 1/1;
      width: 1.6em;
}

/*mo_btn_flex ボタンの並び　3個ずつ
-----------------------------------------------------------------------------*/
.mo_btn_flex {
      display: flex;
      gap: 1em 2%;
      flex-wrap: wrap;
      align-items: center;
}

.mo_btn_flex>* {
      width: calc(33% - 1%);
}

.mo_btn_flex a {
      display: block;
}

@media screen and (max-width: 680px) {
      .mo_btn_flex>* {
            width: auto;
      }

      .mo_btn_flex>*+* {
            margin-top: 1em;
      }
}

/*mo_btn　基本ボタン
-----------------------------------------------------------------------------*/
.mo_btn>* {
      text-align: center;
      display: inline-flex;
      border: solid 1px var(--mo_col_main);
      background: var(--mo_col_main);
      padding: 1em 2.5em;
      color: #fff;
      transition: 0.3s;
      font-weight: 600;
      letter-spacing: 1px;
      box-sizing: border-box;
      border-radius: 0.2em;
      box-shadow: var(--mo_box_shadow);
}

@media screen and (min-width: 961px),
print {
      .mo_btn>*:hover {
            border: solid 1px var(--mo_col_green_b);
            background: var(--mo_col_green_b);
      }
}

/*基本ボタン size
----------------------------------------------------------------------------------------------------------------*/
.btn_s>* {
      width: 15em;
      display: block;
}

.btn_m>* {
      width: 20em;
      display: block;
}

.btn_l>* {
      width: 25em;
      display: block;
}

/*ボタンの位置*/
.btn_center>* {
      margin: auto;
}

.btn_center_left>* {
      margin: auto;
}

.btn_right>* {
      margin: auto 0 auto auto;
}

@media screen and (max-width: 680px) {
      .btn_center_left>* {
            margin: inherit;
      }

      .btn_sp_center>* {
            margin: auto !important;
      }
}

/*btn_blank ボタン形式の外部リンク
-----------------------------------------------------------------------------*/
.mo_btn_ico>* {
      position: relative;
      padding-right: 3em;
}

.mo_btn_ico>*:before {
      content: "";
      position: absolute;
      top: 50%;
      right: 1.5em;
      transform: translate(-0%, -50%);
      filter: var(--mo_fil_ff);
}

.mo_btn_blank>*:before {
      background: url("../images/icn_blank.svg") no-repeat;
      background-size: contain;
      width: 1em;
      aspect-ratio: 1/1;
}

/*mo_btn_arrow ボタン矢印
-----------------------------------------------------------------------------*/
.mo_btn_arrow>*:before {
      background: url("../images/arrow.svg") no-repeat;
      background-size: contain;
      width: 0.5em;
      aspect-ratio: var(--mo_arrow_aspct_01);
}

/*mo_btn_sec セカンダリボタン
-----------------------------------------------------------------------------*/
.mo_btn_sec>* {
      border: solid 1px var(--mo_col_btn_back);
      background: var(--mo_col_btn_back);
      color: #fff;
}

/*mo_text_btn テキストボタン
-----------------------------------------------------------------------------*/
.mo_text_btn>* {
      display: inline-block;
      margin-left: 1.7em;
      position: relative;
      text-decoration: underline;
      color: var(--mo_col_blue);
      font-weight: bold;
}

.mo_text_btn>*:before {
      position: absolute;
      content: "";
      background: url("../images/arrow_text.svg") no-repeat;
      background-size: contain;
      aspect-ratio: 1/1;
      width: 1.3em;
      left: -1.7em;
      top: 0.2em;
}

@media screen and (min-width: 961px),
print {
      .mo_text_btn>*:hover {
            text-decoration: none;
      }
}

/*コンテンツ
----------------------------------------------------------------------------------------------------------------------------------------------------*/
/*テキストと画像セット
-----------------------------------------------------------------------------*/
.mo_imgtext_flex {
      align-items: center;
      display: flex;
      justify-content: space-between;
      gap: 0 4%;
}

.mo_imgtext_flex+.mo_imgtext_flex {
      margin-top: 6em;
}

.mo_imgtext_flex .text_box {
      width: 55%;
}

.mo_imgtext_flex .img {
      width: 45%;
}

.mo_imgtext_flex .img img {
      width: 100%;
      object-fit: cover;
      object-position: center;
}

/*セットで使うとき*/
.mo_imgtext_flex_area .mo_imgtext_flex:nth-child(even) {
      flex-direction: row-reverse;
}

@media screen and (max-width: 680px) {
      .mo_imgtext_flex {
            display: block;
      }

      .mo_imgtext_flex+.mo_imgtext_flex {
            margin-top: 4em;
      }

      .mo_imgtext_flex .text_box {
            width: auto;
            margin-bottom: 1.5em;
      }

      .mo_imgtext_flex .img {
            width: auto;
      }
}

/*テキストと画像セット カード型
-----------------------------------------------------------------------------*/
.mo_imgtext_card_area {
      display: flex;
      flex-wrap: wrap;
      gap: 3em 6.6%;
}

.mo_imgtext_card_area>* {
      width: calc(50% - 3.3%);
}

.mo_imgtext_card .img img {
      width: 100%;
      object-fit: cover;
      object-position: center;
}

@media screen and (max-width: 680px) {
      .mo_imgtext_card_area {
            display: block;
      }

      .mo_imgtext_card_area>* {
            width: auto;
      }

      .mo_imgtext_card_area>*+* {
            margin-top: 4em;
      }
}

/*重要なお知らせ　黄色線四角
-----------------------------------------------------------------------------*/
.mo_notice_box {
      border: solid 2px var(--mo_col_yellow);
      padding: 2em;
      border-radius: var(--mo_rudius_pc);
}

.mo_notice_box_title {
      letter-spacing: 1px;
      font-size: 1.5em;
      font-weight: bold;
      padding: 0em 0 0em 0.8em;
      line-height: 1.5;
      border-left: 4px solid var(--mo_col_yellow);
      margin-bottom: 1em;
}

/*入居資格について グレイ線四角
-----------------------------------------------------------------------------*/
.mo_gray_box {
      border: solid 1px var(--mo_bg_gray_ll);
      padding: 2em;
      border-radius: var(--mo_rudius_pc);
}

.mo_gray_box_title {
      letter-spacing: 1px;
      font-size: 1.5em;
      font-weight: bold;
      line-height: 1.5;
      margin-bottom: 1em;
}

/*カード型リスト　４個ずつ
-----------------------------------------------------------------------------*/
.mo_card_list {
      display: flex;
      flex-wrap: wrap;
      gap: 6em 2.5%;
}

.mo_card_list>li {
      width: calc(25% - 1.9%);
}

@media screen and (max-width: 680px) {
      .mo_card_list {
            gap: 2em 5%;
      }

      .mo_card_list>li {
            width: calc(50% - 2.5%);
      }
}

.mo_card_list_inner .img img {
      width: 100%;
      object-fit: cover;
      object-position: center;
}

.mo_card_list_inner .text_box {
      position: relative;
}

.mo_card_list_inner .text_box .mo_card_list_title {
      position: absolute;
      top: -1em;
      width: 85%;
      background: #fff;
      border-top: solid 2px var(--mo_col_main);
      border-bottom: solid 2px var(--mo_col_main);
      padding: 1em 0.5em;
}

.mo_card_list_inner .text_box .mo_card_list_title span {
      position: relative;
      display: inline-block;
      padding-right: 1.5em;
      font-size: 1.15em;
      font-weight: bold;
      color: var(--mo_col_main);
}

.mo_card_list_inner .text_box .mo_card_list_title span:before {
      content: "";
      background: url("../images/icn_blank.svg") no-repeat;
      background-size: contain;
      width: 0.8em;
      aspect-ratio: 1/1;
      position: absolute;
      top: 50%;
      right: 0;
      transform: translate(-0%, -50%);
}

@media screen and (max-width: 680px) {
      .mo_card_list_inner .text_box .mo_card_list_title {
            top: 0;
            position: static;
            padding: 0.5em 0.5em;
            border-top: none;
            border-bottom: solid 1px var(--mo_col_main);
      }

      .mo_card_list_inner .text_box .mo_card_list_title span {
            font-size: 1.1em;
      }
}

/*カード型リスト02　デザイン別　3個ずつ
-----------------------------------------------------------------------------*/
.mo_card_list_02 {
      display: flex;
      flex-wrap: wrap;
      gap: 3em 3%;
}

.mo_card_list_02>li {
      width: calc(33% - 1.7%);
      border-bottom: 1px solid var(--mo_col_green_b);
       padding-bottom: 1em;
}

@media screen and (max-width: 680px) {
      .mo_card_list_02 {
            display: block;
      }

      .mo_card_list_02>li {
            width: auto;
      }

      .mo_card_list_02>li+li {
            margin-top: 3em;
      }
}

.mo_card_list_inner_02 .img {
      position: relative;
      overflow: hidden;
}

.mo_card_list_inner_02 .img:before,
.mo_card_list_inner_02 .img:after {
      content: "";
      position: absolute;
}

.mo_card_list_inner_02 .img:before {
      aspect-ratio: 1/1;
      width: 2.5em;
      background: var(--mo_col_green_b);
      bottom: 0;
      right: 0;
}

.mo_card_list_inner_02 .img:after {
      background: url("../images/arrow.svg") no-repeat;
      background-size: contain;
      width: 0.6em;
      aspect-ratio: var(--mo_arrow_aspct_01);
      bottom: 0.8em;
      right: 0.8em;
      filter: var(--mo_fil_ff);
}

.mo_card_list_inner_02 .img img {
      width: 100%;
      object-fit: cover;
      object-position: center;
      aspect-ratio: 4/2.5;
      transition: transform 0.4s ease;
}

@media screen and (min-width: 961px) {
      .mo_card_list_02 > li a:hover .mo_card_list_inner_02 .img img {
            transform: scale(1.06);
      }
}

.mo_card_list_inner_02 .mo_card_list_title {
      text-align: center;
      color: var(--mo_col_green_b);
      font-size: 1.1em;
      padding: 1em 0 0 0;
}



/*タブ切り替え
-----------------------------------------------------------------------------*/
.mo_tub_btn_flex {
      display: flex;
      align-items: flex-end;
}

.mo_tub_btn_flex>* {
      width: 100%;
      background: var(--mo_col_btn_back);
      color: #fff;
      display: flex;
      justify-content: center;
      align-items: center;
      min-height: 2em;
      text-align: center;
      border-radius: var(--mo_rudius_pc_tr);
      font-size: 1.1em;
      cursor: pointer;
      padding: 0.5em 0.5em;
}

.mo_tub_btn_flex>*.is-active {
      padding: 0.8em 0.5em;
      background: var(--mo_col_main);
}

.mo_tub_btn_flex>*+* {
      border-left: solid 2px #fff;
}

.mo_panel_inner {
      padding: 2em;
      background: var(--mo_bg_gray_l);
}

/*mo_sns_list SNSリスト
-----------------------------------------------------------------------------*/
.mo_sns_list {
      display: flex;
      gap: 2em 3%;
}

.mo_sns_list>* {
      width: calc(100% / 3);
}

@media screen and (max-width: 680px) {
      .mo_sns_list {
            display: block;
      }

      .mo_sns_list>* {
            width: auto;
      }

      .mo_sns_list>*+* {
            margin-top: 2em;
      }
}

.mo_sns_title {
      display: flex;
      align-items: center;
}

.mo_sns_title img {
      aspect-ratio: 1/1;
      height: 3em;
}

.mo_sns_list>* a {
      text-decoration: underline;
      color: var(--mo_col_blue);
      display: inline-block;
      margin-left: 1em;
}

@media screen and (min-width: 961px),
print {
      .mo_sns_list>* a:hover {
            text-decoration: none;
      }
}

/*テーブル
----------------------------------------------------------------------------------------------------------------------------------------------------*/
/*mo_table_01
-----------------------------------------------------------------------------*/
.mo_table_01 table {
      table-layout: fixed;
      width: 100%;
}

.mo_table_01 table th,
.mo_table_01 table td {
      padding: 2em 3em;
}

.mo_table_01 table th {
      width: 20%;
      border-bottom: 1px solid var(--mo_col_main);
}

.mo_table_01 table td {
      width: 80%;
      border-bottom: 1px solid var(--mo_bg_gray_ll);
}

.mo_table_01 table tr:first-child th {
      border-top: 1px solid var(--mo_col_main);
}

.mo_table_01 table tr:first-child td {
      border-top: 1px solid var(--mo_bg_gray_ll);
}

@media screen and (max-width: 680px) {

      .mo_table_01 table th,
      .mo_table_01 table td {
            padding: 1em 1.2em;
            display: block;
      }

      .mo_table_01 table th {
            color: var(--mo_col_main);
            padding-bottom: 0.25em;
            width: auto;
            border-bottom: none;
      }

      .mo_table_01 table td {
            padding-top: 0.25em;
            width: auto;
            border-bottom: 1px solid var(--mo_bg_gray_ll);
      }

      .mo_table_01 table tr:first-child th {
            border-top: 1px solid var(--mo_bg_gray_ll);
      }

      .mo_table_01 table tr:first-child td {
            border-top: none;
      }

      .mo_table_01 table tr:nth-child(even) {
            background: var(--mo_bg_gray_l);
      }
}

/*mo_table_02
-----------------------------------------------------------------------------*/
.mo_table_02 table {
      table-layout: fixed;
      width: 100%;
}

.mo_table_02 table th,
.mo_table_02 table td {
      padding: 1em 1.5em;
}

.mo_table_02 table th {
      background: var(--mo_col_main);
      color: #fff;
      border-left: 1px solid #fff;
}

.mo_table_02 table td {
      border-left: 1px solid var(--mo_bg_gray_ll);
      border-bottom: 1px solid var(--mo_bg_gray_ll);
}

.mo_table_02 table th:first-child,
.mo_table_02 table td:first-child {
      border-left: none;
}

.mo_table_02 table tr:nth-child(odd) {
      background: var(--mo_bg_gray_l);
}

@media screen and (max-width: 680px) {
      .mo_table_02.table_sp_scl {
            width: 100%;
            overflow-x: scroll;
      }

      .mo_table_02.table_sp_scl table {
            min-width: 110vw;
      }
}

/*テーブル幅
-----------------------------------------------------------------------------*/
table .tw10 {
      width: 10%;
}

table .tw15 {
      width: 15%;
}

table .tw20 {
      width: 20%;
}

table .tw25 {
      width: 25%;
}

table .tw30 {
      width: 30%;
}

table .tw35 {
      width: 35%;
}

table .tw40 {
      width: 40%;
}

table .tw45 {
      width: 45%;
}

table .tw50 {
      width: 50%;
}

/*table_list
-----------------------------------------------------------------------------*/
.table_list>li:nth-child(odd) {
      background: var(--mo_bg_gray_l);
}

.table_list>li:first-child {
      border-top: 1px solid var(--mo_bg_gray_ll);
}

.table_list_inner {
      display: flex;
      padding: 1.5em 1.5em;
      border-bottom: 1px solid var(--mo_bg_gray_ll);
}

.date {
      letter-spacing: 1px;
}

.table_list_inner_date {
      width: 6em;
}

.table_list_inner .textr_box {
      width: calc(100% - 6em);
}

@media screen and (max-width: 680px) {
      .table_list_inner {
            padding: 1.0em 1.0em;
            display: block;
      }

      .table_list_inner_date {
            width: auto;
      }

      .table_list_inner .textr_box {
            width: auto;
      }
}

/*公社からのお知らせ
----------------------------------------------------------------------------------------------------------------------------------------------------*/
.info_list>li:nth-child(even) {
      background: var(--mo_bg_gray_l);
}

.info_list>li:first-child {
      border-top: 1px solid var(--mo_bg_gray_ll);
}

.info_list>li a .text_box {
      text-decoration: underline;
      color: var(--mo_col_blue);
}

.info_list_inner {
      display: flex;
      gap: 0 2%;
      padding: 1.5em 1.5em;
      border-bottom: 1px solid var(--mo_bg_gray_ll);
}

.info_list_inner_date {
      display: flex;
      gap: 0 2%;
      align-items: flex-start;
      width: 16em;
}

.info_list_inner_date span {
      width: 7em;
}

.info_list_inner .info_cate {
      width: calc(100% - 7em);
      color: #fff;
      text-align: center;
      background: var(--mo_col_green);
      border-radius: var(--mo_rudius_pc);
      padding: 0.2em 0.2em 0.2em 0.2em;
      line-height: 1.2;
}

.info_list_inner .info_cate span {
      font-size: 0.8em;
}

.info_list_inner .text_box {
      width: calc(100% - 16em);
}

@media screen and (min-width: 961px),
print {
      .info_list>li a:hover .text_box {
            text-decoration: none;
      }
}

@media screen and (max-width: 680px) {
      .info_list_inner {
            display: block;
            padding: 1.2em 1.3em;
      }

      .info_list_inner_date {
            width: auto;
            margin-bottom: 0.7em;
      }

      .info_list_inner .info_cate {
            width: auto;
            padding: 0em 0.5em 0.2em 0.5em;
            min-width: 8em;
            line-height: 1.5;
      }

      .info_list_inner .text_box {
            width: auto;
      }
}

/*cateなし*/
.info_list_inner.no_cate .info_list_inner_date {
      width: 7em;
}

.info_list_inner.no_cate .text_box {
      width: calc(100% - 7em);
}

@media screen and (max-width: 680px) {
      .info_list_inner.no_cate .text_box {
            width: auto;
      }
}

/*cate　色別*/
.info_list_inner .info_cate.cate_01 {
      background: var(--mo_col_green);
}

.info_list_inner .info_cate.cate_02 {
      background: var(--mo_col_yellow);
}

.info_list_inner .info_cate.cate_03 {
      background: var(--mo_col_green_l);
}

.info_list_inner .info_cate.cate_04 {
      background: var(--mo_col_blue_l);
}

/*アコーディオン
----------------------------------------------------------------------------------------------------------------------------------------------------*/
/*js用css
-----------------------------------------------------------------------------*/
.aco-btn {
      cursor: pointer;
}

.aco-cont {
      display: none;
}

/*デザイン用css（見た目に必要なスタイルを追記してくさい。）
-----------------------------------------------------------------------------*/
/*デザイン用css end
-----------------------------------------------------------------------------*/
/*detailsで開閉
----------------------------------------------------------------------------------------------------------------------------------------------------*/
/* デフォルトの矢印を隠す */
summary::-webkit-details-marker {
      display: none;
}

summary:focus-visible {
      border: solid 1px #000;
}

.details-aco summary {
      cursor: pointer;
      list-style: none;
      position: relative;
      transition: all 0.3s ease;
      outline: none;
}

.details-aco details {
      position: relative !important;
      z-index: 0 !important;
}

.details-aco .details-cont {
      position: relative;
      z-index: 500 !important;
}

/*open時の挙動
-----------------------------------------------------------------------------*/
.details-aco details[open] .details-cont>* {
      animation: qafadeIn 0.8s ease;
      transition: all 0.8s ease;
}

@keyframes qafadeIn {
      0% {
            opacity: 0;
            transform: translateY(-10px);
      }

      100% {
            opacity: 1;
            transform: translateY(-0px);
      }
}

/*open時の挙動　end
-----------------------------------------------------------------------------*/
/*デザイン
-----------------------------------------------------------------------------*/
.aco_01 details {
      background: #fff;
      border-radius: var(--mo_rudius_pc);
      border: solid 1px var(--mo_col_green_b);
      box-shadow: var(--mo_box_shadow);
      margin-bottom: 1.5em;
}

.aco_01 summary p,
.aco_01 .aco_cont {
      padding: 1.5em 4em 1.5em 1.5em;
      position: relative;
}

.aco_01 .aco_cont {
      padding-top: 0em;
}

.aco_01 summary:focus-visible {
      border: solid 1px #000;
}

.aco_01 summary p span {
      font-weight: bold;
      color: var(--mo_col_green_b);
      font-size: 1.1em;
}

@media screen and (max-width: 680px) {
      .aco_01 summary p span {
            font-size: 1.6rem;
      }

      .aco_01 summary p,
      .aco_01 .aco_cont {
            padding: 1.0em 3em 1.0em 1.0em;
            position: relative;
      }

      .aco_01 .aco_cont {
            padding-top: 0em;
      }
}

.aco_01 summary:before {
      content: '';
      background: url("../images/aco_arrow.svg") no-repeat;
      background-size: contain;
      position: absolute;
      width: 2em;
      aspect-ratio: 1;
      right: 1em;
      top: 1.5em;
      transition: transform 0.3s ease;
}

.aco_01 details[open] summary::before {
      transform: rotate(180deg);
}

@media screen and (max-width: 680px) {
      .aco_01 summary:before {
            width: 1.5em;
            right: 0.6em;
            top: 1.2em;
      }
}

/*QA
----------------------------------------------------------------------------------------------------------------------------------------------------*/
/*QA*/
.qa_block details {
      background: var(--mo_bg_gray_l);
      border-radius: var(--mo_rudius_pc);
      box-shadow: var(--mo_box_shadow);
      margin-bottom: 2em;
}

.qa_block summary p,
.qa_block .aco_cont {
      padding: 1.5em 4em 1.5em 5em;
      position: relative;
}

.qa_block .aco_cont {
      padding: 1.5em 1.5em 1.5em 5em;
}

.qa_block summary p span {
      font-size: 1.1em;
}

/*qa文字*/
.qa_block summary p:after,
.qa_block .aco_cont:after {
      content: "";
      position: absolute;
      left: 1em;
      top: 0.4em;
      font-size: 2em;
      font-family: var(--mo_font_mon);
      font-weight: 700;
}

.qa_block summary p:after {
      content: "Q";
      color: var(--mo_col_green_b);
}

.qa_block .aco_cont:after {
      content: "A";
      left: 1em;
      color: var(--mo_col_blue);
}

@media screen and (max-width: 680px) {
      .qa_block summary p span {
            font-size: 1.6rem;
      }

      .qa_block summary p,
      .qa_block .aco_cont {
            padding: 1.7em 3em 1.7em 3em;
            position: relative;
            padding-left: 3.0em;
      }

      .qa_block .aco_cont {
            padding: 1.7em 1.5em 1.7em 3em;
      }

      .qa_block summary p:after,
      .qa_block .aco_cont:after {
            left: 0.4em;
            font-size: 3.0rem;
      }
}

/*Q コンテンツ*/
.qa_block summary {
      font-weight: 700;
      cursor: pointer;
      list-style: none;
      position: relative;
      transition: all 0.3s ease;
      outline: none;
}

/*A　コンテンツ*/
.qa_block details .aco_cont {
      position: relative;
      z-index: -1;
}

.qa_block details .aco_cont:before {
      content: "";
      width: calc(100% - 3em);
      height: 1px;
      background: var(--mo_bg_gray_ll);
      position: absolute;
      top: 0;
      left: 50%;
      transform: translate(-50%, -0%);
}

/*矢印*/
.qa_block summary:before {
      content: '';
      background: url("../images/aco_arrow.svg") no-repeat;
      background-size: contain;
      position: absolute;
      width: 2em;
      aspect-ratio: 1;
      right: 1em;
      top: 1.5em;
      transition: transform 0.3s ease;
}

.qa_block details[open] summary::before {
      transform: rotate(180deg);
}

@media screen and (max-width: 680px) {
      .aco_01 summary:before {
            width: 1.5em;
            right: 0.6em;
            top: 1.2em;
      }
}

/*gmap googleマップ
----------------------------------------------------------------------------------------------------------------------------------------------------*/
.gmap iframe {
      width: 100% !important;
      height: 500px !important;
}

@media screen and (max-width: 1370px) {
      .gmap iframe {
            height: 50rem !important;
      }
}

@media screen and (max-width: 680px) {
      .gmap iframe {
            height: 30rem !important;
      }
}

/*access_list
----------------------------------------------------------------------------------------------------------------------------------------------------*/
.access_list>li {
      display: flex;
      gap: 0 3%;
}

.access_list>li+li {
      margin-top: 1.5em;
}

.access_list>li .img {
      width: 3em;
}

.access_list>li .img img {
      width: 100%;
}

.access_list>li .text_box {
      width: calc(100% - 3em);
}

/*ボタン色バリエーション
----------------------------------------------------------------------------------------------------------------------------------------------------*/
.mo_btn.btn_blue>* {
      border-color: var(--bg_blue);
      background: var(--bg_blue);
}

.mo_btn.btn_red>* {
      border-color: var(--mo_col_red);
      background: var(--mo_col_red);
}

.mo_btn.btn_green>* {
      border-color: var(--mo_col_green);
      background: var(--mo_col_green);
}

.mo_btn.btn_yellow>* {
      border-color: var(--mo_col_yellow);
      background: var(--mo_col_yellow);
      color: var(--col_text);
}

.mo_btn.btn_pup>* {
      border-color: var(--mo_col_pup);
      background: var(--mo_col_pup);
}

.mo_btn.btn_gray>* {
      border-color: var(--mo_col_btn_back);
      background: var(--mo_col_btn_back);
}

.mo_btn.btn_back>* {
      border-color: var(--mo_col_btn_back);
      background: var(--mo_col_btn_back);
}

.mo_btn.btn_back.mo_btn_arrow.mo_btn_ico>*:before {
      right: auto;
      left: 1.5em;
      transform: translateY(-50%) rotate(180deg);
}

.mo_btn.btn_back.mo_btn_ico>* {
      padding-right: 2.5em;
      padding-left: 3em;
}

@media screen and (min-width: 961px),
print {

      .mo_btn.btn_blue>*:hover,
      .mo_btn.btn_red>*:hover,
      .mo_btn.btn_green>*:hover,
      .mo_btn.btn_yellow>*:hover,
      .mo_btn.btn_pup>*:hover,
      .mo_btn.btn_gray>*:hover,
      .mo_btn.btn_back>*:hover {
            border-color: var(--mo_col_green_b);
            background: var(--mo_col_green_b);
            color: #fff;
      }
}

/*左アイコンボタン
----------------------------------------------------------------------------------------------------------------------------------------------------*/
.mo_btn_ico_left>* {
      padding-left: 3em;
      padding-right: 2em;
      justify-content: center;
}

.mo_btn_ico_left>*:after {
      content: "";
      position: absolute;
      top: 50%;
      left: 1.0em;
      transform: translateY(-50%);
      filter: var(--mo_fil_ff);
}

.mo_btn_arrow_left>* {
      padding-left: 3em;
}

.mo_btn_arrow_left>*:before {
      background: url("../images/arrow.svg") no-repeat;
      background-size: contain;
      width: 0.5em;
      aspect-ratio: var(--mo_arrow_aspct_01);
      content: "";
      position: absolute;
      top: 50%;
      left: 1.2em;
      right: auto;
      transform: translateY(-50%) rotate(180deg);
      filter: var(--mo_fil_ff);
}

.mo_btn_pdf_left>*:after {
      background: url("../images/ico_pdf.svg") no-repeat;
      background-size: contain;
      aspect-ratio: 1/1;
      width: 1.5em;
}

.mo_btn_blank_left>*:after {
      background: url("../images/icn_blank.svg") no-repeat;
      background-size: contain;
      aspect-ratio: 1/1;
      width: 1em;
}

/*mo_title_l　リスト前の小見出し
----------------------------------------------------------------------------------------------------------------------------------------------------*/
.mo_title_l {
      font-size: 1.1em;
      font-weight: bold;
      position: relative;
      padding-left: 1em;
      margin-bottom: 0.5em;
      margin-top: 1.5em;
}

.mo_title_l:first-child {
      margin-top: 0;
}

.mo_title_l:before {
      content: "";
      position: absolute;
      left: 0;
      top: 0.8em;
      width: 0.5em;
      height: 0.5em;
      background: var(--mo_col_green_b);
border-radius: 50%;
}

.mo_title_l_02 {
      font-size: 1.2em;
      font-weight: bold;
      position: relative;
      padding-left: 1em;
      margin-bottom: 0.5em;
      margin-top: 1.5em;
}

.mo_title_l_02:first-child {
      margin-top: 0;
}

.mo_title_l_02:before {
      content: "";
      position: absolute;
      left: 0;
      top: 0.8em;
      width: 0.8em;
      height: 3px;
      background: var(--mo_col_green_b);
}

/*mo_title_08 背景色タイトル
-----------------------------------------------------------------------------*/
.mo_title_08 {
      font-size: 1.3em;
      font-weight: bold;
      background: var(--mo_col_green_b);
      color: #fff;
      padding: 0.5em 1em;
      margin-bottom: 1em;
      display: inline-block;
}

/*mo_title_09 カラーテキストタイトル
-----------------------------------------------------------------------------*/
.mo_title_09 {
      font-size: 1.4em;
      font-weight: bold;
      color: var(--mo_col_green_b);
      margin-bottom: 0.8em;
}

/*mo_title_10 左ライン＋背景タイトル
-----------------------------------------------------------------------------*/
.mo_title_10 {
      font-size: 1.3em;
      font-weight: 500;
      padding: 0.4em 0.8em;
      border-left: 3px solid var(--mo_col_green_b);
      background: var(--mo_bg_gray_l);
      margin-bottom: 0.8em;
}

/*inner_link_area 内部リンクリスト
----------------------------------------------------------------------------------------------------------------------------------------------------*/
.inner_link_area {
      background: var(--mo_bg_gray_l);
      padding: 2em 2.5em;
      border-radius: var(--mo_rudius_pc);
      border: 1px solid var(--mo_bg_gray_ll);
}

.inner_link {
      display: flex;
      flex-wrap: wrap;
      gap: 0.8em 3%;
}

.inner_link>li {
      width: calc(50% - 1.5%);
      position: relative;
      padding-left: 1.4em;
}

.inner_link>li:before {
      content: "";
      background: url("../images/arrow.svg") no-repeat;
      background-size: contain;
      width: 0.5em;
      aspect-ratio: var(--mo_arrow_aspct_01);
      position: absolute;
      left: 0;
      top: 0.55em;
      filter: var(--mo_fil_main);
}

.inner_link>li a {
      color: var(--mo_col_main);
      text-decoration: underline;
}

@media screen and (min-width: 961px),
print {
      .inner_link>li a:hover {
            text-decoration: none;
      }
}

@media screen and (max-width: 680px) {
      .inner_link {
            display: block;
      }

      .inner_link>li {
            width: auto;
      }

      .inner_link>li+li {
            margin-top: 0.6em;
      }

      .inner_link_area {
            padding: 1.5em;
      }
}

/*ico_arrow インライン矢印リンク
----------------------------------------------------------------------------------------------------------------------------------------------------*/
.ico_arrow {
      position: relative;
      padding-right: 1.3em;
      display: inline-block;
}

.ico_arrow:after {
      content: "";
      background: url("../images/arrow.svg") no-repeat;
      background-size: contain;
      width: 0.5em;
      aspect-ratio: var(--mo_arrow_aspct_01);
      position: absolute;
      top: 50%;
      right: 0;
      transform: translateY(-50%);
      filter: var(--mo_fil_main);
}

/*mo_card_list_02 矢印なし
----------------------------------------------------------------------------------------------------------------------------------------------------*/
.mo_card_list_02.no_arrow .mo_card_list_inner_02 .img:before,
.mo_card_list_02.no_arrow .mo_card_list_inner_02 .img:after {
      display: none;
}

/*mo_imgtext_card_area 3列
----------------------------------------------------------------------------------------------------------------------------------------------------*/
.mo_imgtext_card_area.col3>* {
      width: calc(33.33% - 4.4%);
}

@media screen and (max-width: 680px) {
      .mo_imgtext_card_area.col3>* {
            width: auto;
      }
}

/*プライバシーポリシー ol番号リスト
-----------------------------------------------------------------------------*/
.privacy_list {
      list-style: none;
      padding-left: 0;
      counter-reset: privacy-counter;
}

.privacy_list > li {
      counter-increment: privacy-counter;
}

.privacy_list > li + li {
      margin-top: 6rem;
}

.privacy_title {
      display: flex;
      align-items: center;
      gap: 0.75em;
      font-size: 1.2em;
      font-weight: 700;
      letter-spacing: 1px;
      margin-bottom: 1em;
      padding-bottom: 0.6em;
      border-bottom: 2px solid var(--col_main);
}

.privacy_title::before {
      content: counter(privacy-counter);
      display: flex;
      align-items: center;
      justify-content: center;
      flex-shrink: 0;
      width: 1.6em;
      height: 1.6em;
      background: var(--col_main);
      color: #fff;
      font-family: var(--font_en);
      font-size: 0.85em;
      font-weight: 700;
      border-radius: 50%;
      line-height: 1;
}

@media screen and (max-width: 680px) {
      .privacy_list > li + li {
            margin-top: 4em;
      }

      .privacy_title {
            font-size: 1.1em;
      }
}