@charset "UTF-8";

/****************************************
「全ページ共通」全ページに必須
****************************************/
:root {
  --color-red-primary: #e60012;
  --color-light-gray-primary: #f6f6f6;
  --color-light-gray-secondary: #c8c8c8;
  --color-dark-gray-primary: #a4a4a4;
}

.column2510_p-special, .column2510_p-worldnews, .column2510_p-topics, .column2510_p-expo, .column2510_p-blooddonation, .column2510_p-areanews {
  /***** ラインハイト *****/
  line-height: 1.8;

  /***** ブレイクポイント *****/
  .column2510_sp-only {
    display: none !important;
  }
  .column2510_sp-only-02 {
    display: none !important;
  }
  .column2510_sp-only_499 {
    display: none !important;
  }
  @media screen and (width <= 768px) {
    .column2510_sp-only {
      display: block !important;
    }
    .column2510_sp-only-02 {
      display: block !important;
    }
  }
  @media screen and (width < 600px) {

  }
  @media screen and (width < 500px) {
    .column2510_sp-only-02 {
      display: none !important;
    }
    .column2510_sp-only_499 {
      display: block !important;
    }
  }

  /***** 上付き文字 *****/
  .column2510_text_sup {
    vertical-align: super;
    font-size: 0.6em;
  }

  /***** 改行させない *****/
  .column2510_text_nowrap {
    white-space: nowrap;
  }

  /***** 文字を小さく *****/
  .column2510_text_small {
    font-size: 0.7em;
  }

  /***** 文字を大きく *****/
  .column2510_text_enlarge {
    font-size: 2em;
  }

  /***** 文字を太く *****/
  .column2510_text_bold {
    font-weight: 700;
  }

  /***** 文字を赤く *****/
  .column2510_text_red {
    color: var(--color-red-primary);
  }

  /***** ボックスの罫を赤く *****/  
  .column2510_column_red_line_box {
    border: 1px solid var(--color-red-primary);
  }

  /***** 1行目の頭出し（1文字分） *****/  
  .column2510_indent_character1 {
    padding-left: 0.8em;
    text-indent: -0.8em;
  }

  /***** 見出し *****/
  .column2510_heading_grid {
    display: grid;
    row-gap: 8px;
    margin-bottom: 3em;

    .column2510_heading_text {
      position: relative;
      margin-bottom: 0;
      padding-bottom: 0.8em;
      font-size: 2rem;
      line-height: 1.44;
      letter-spacing: .05em;
      font-family: YuGothic, Yu Gothic, -apple-system, BlinkMacSystemFont, Roboto, Meiryo, sans-serif;
      font-weight: 700;

      &::before,
      &::after {
        width: 100%;
        background-color: #ccc;
      }
    }
    @media screen and (max-width: 768px) {
      .column2510_heading_text {
        margin-bottom: 0;
        padding-bottom: 1em;
        font-size: 1.44rem;
        line-height: 1.44;
        letter-spacing: .05em;
      }
    }
  }

  /***** 本文-01 *****/
  .column2510_body_text_container {
    text-align: justify;
    letter-spacing: 0.08em;
    margin-bottom: 4em;
  }
  @media screen and (max-width: 768px) {
    .column2510_body_text_container {
      text-align: justify;
      margin-bottom: 2em;
    }
  }

  /***** 本文-02 *****/
  .column2510_content_detail_box {
    margin-bottom: 6em;
  }

  /***** 本文-03 *****/
  .column2510_contents_box {
    margin-bottom: 12em;
  }
  @media screen and (max-width: 768px) {
    .column2510_contents_box {
      margin-bottom: 6em;
    }
  }

  /***** 画像 *****/
  .column2510_visual_wrap {
    margin-bottom: 4em;
  }
  @media screen and (max-width: 768px) {
    .column2510_visual_wrap {
      margin-bottom: 2em;
    }
  }

  .column2510_visual_box {
    margin-bottom: 1em;
  }

  .column2510_visual_box + .column2510_visual_box {
    margin-top: 4em;
  }
  @media screen and (max-width: 768px) {
    .column2510_visual_box + .column2510_visual_box {
      margin-top: 2em;
    }
  }

  .column2510_img {
    width: 100%;
  }
  /***** 画像のボックスに罫線を追加 *****/
  .column2510_visual_box_border {
    border: 1px solid #c8c8c8;
  }

  /***** 画像幅 750px *****/
  .column2510_width750 {
    width: 100%;
    max-width: 750px;
    margin-inline: auto;
  }
  
  /***** 画像幅 650px *****/
  .column2510_width650 {
    width: 100%;
    max-width: 650px;
    margin-inline: auto;
  }

  /***** 画像幅 550px *****/
  .column2510_width550 {
    width: 100%;
    max-width: 550px;
    margin-inline: auto;
  }

  /***** 画像幅 450px *****/
  .column2510_width450 {
    width: 100%;
    max-width: 450px;
    margin-inline: auto;
  }

  /***** 画像のキャプション（左揃え） *****/
  .column2510_image_caption_left {
    display: block;
    width: 100%;
    text-align: left;
    color: #808080;
    font-size: 12px;
    line-height: 1.74;
    letter-spacing: .03em;
  }

  /***** 注釈（左揃え） *****/
  .column2510_annotation_left {
    display: block;
    width: 100%;
    text-align: left;
    color: #808080;
    font-size: 12px;
    line-height: 1.74;
    letter-spacing: .03em;
    padding-top: 1em;
  }

  /***** ページ下部注釈（左揃え） *****/
  .column2510_footnote_left {
    display: block;
    width: 100%;
    text-align: left;
    color: #808080;
    font-size: 12px;
    line-height: 1.74;
    letter-spacing: .03em;
    padding-top: 4em;
  }

  /***** 外部遷移ボタン *****/
  .column2510_button_with_image_wrap {
    padding-block: 2em;
    padding-inline: 2em;
    border-top: 1px solid #c8c8c8;
    border-bottom: 1px solid #c8c8c8;
  }
  @media screen and (max-width: 768px) {
    .column2510_button_with_image_wrap {
      padding-inline: 0;
    }
  }
  .column2510_btn_wrap {
    margin-bottom: 4em;
    margin-inline: auto;

    .column2510_btn_box + .column2510_btn_box {
      margin-top: 2em;
    }

    /***** 外部遷移ボタン（画像あり） *****/
    &.column2510_with_image {
      display: grid;
      grid-template-columns: auto 1fr;
      grid-template-rows: auto auto;
      grid-template-areas: 
      "item-01 item-02"
      "item-01 item-03";
      justify-content: center;
      align-items: center;
      column-gap: 2em;
      row-gap: 1em;
      margin-bottom: 0;
      max-width: 820px;
      margin-inline: auto;

      .column2510_visual_wrap {
        grid-area: item-01;
        margin-bottom: 0;
        margin-inline: auto;
      }

      .column2510_visual_box {
        margin-bottom: 0;
        max-width: 400px;
      }

      .column2510_btn_lead_text_box {
        align-self: flex-end;
        font-size: 1.2em;
      }

      .column2510_btn_lead_text {
        white-space: nowrap;
      }

      .column2510_btn_box {
        align-self: flex-start;
        width: 100%;
      }
    }
    @media screen and (max-width: 768px) {
      &.column2510_with_image {
        display: grid;
        grid-template-columns: 1fr;
        grid-template-rows: auto auto 1fr;
        grid-template-areas: 
        "item-01"
        "item-02"
        "item-03";
        justify-content: center;
        align-items: center;
        column-gap: 2em;
        row-gap: 1em;
        margin-bottom: 0;

        .column2510_btn_box {
          /* align-self: flex-start; */
          width: min-content;
        }

        .column2510_btn_lead_text {
          white-space: wrap;
          text-align: center;
        }
      }
    }

    .column2510_btn_lead_text_box {
      display: flex;
      justify-content: center;
      align-items: center;
      text-align: center;
      line-height: 1.5;
      margin-bottom: 1em;
    }

    .column2510_btn_box {
      width: min-content;
      margin-inline: auto;
      position: relative;

      &::before {
        content: "";
        display: inline-block;
        width: 10px;
        height: 10px;
        position: absolute;
        top: 50%;
        right: 15px;        
        translate: 0 -50%;
        rotate: 45deg;
      }
    }

    .column2510_btn_red {
      background-color: var(--color-red-primary);
      border: 1px solid var(--color-red-primary);
      transition: 0.3s;

      &::before {
        border-top: 1px solid #fff;
        border-right: 1px solid #fff;
        transition: 0.3s;
      }

      &:hover {
        background-color: #fff;

        &::before {
          border-top: 1px solid var(--color-red-primary);
          border-right: 1px solid var(--color-red-primary);
        }

        .column2510_btn_item_text {
          color: var(--color-red-primary);
        }
      }
    }
    
    .column2510_btn_black {
      background-color: #000;
      border: 1px solid #000;
      transition: 0.3s;

      &::before {
        border-top: 1px solid #fff;
        border-right: 1px solid #fff;
        transition: 0.3s;
      }

      &:hover {
        background-color: #fff;

        &::before {
          border-top: 1px solid #000;
          border-right: 1px solid #000;
        }

        .column2510_btn_item_text {
          color: #000;
        }
      }
    }

    .column2510_btn_item {
      font-weight: 700;
      text-align: center;
      text-decoration: none;
      display: flex;
      align-items: center;
      justify-content: center;
      width: 100%;
      min-width: 325px;
      padding-block: 0.6em;
      transition: 0.3s;
      min-height: 50px;

      &::after {
        content: none;
      }
    }

    .column2510_btn_black_item,
    .column2510_btn_red_item {
      color: #fff;
    }

    .column2510_btn_item_text {
      line-height: 1.5;
      transition: 0.3s;
    }
  }
  @media screen and (max-width: 768px) {
    .column2510_btn_wrap {
      max-width: 325px;
      margin-bottom: 2em;
    }
  }

  /***** プロフィール グレーバック *****/
  .column2510_content_profile_gray_wrap {
    background-color: #f6f6f6;
    padding: 2.5em;
    border-radius: 15px 15px 15px 15px;
    margin-bottom: 6em;

    .column2510_content_profile_gray {
      display: grid;
      grid-template-columns: auto 1fr;
      grid-template-rows: auto auto auto 1fr;
      grid-template-areas:
      "item-01 item-05"
      "item-01 item-02"
      "item-01 item-03"
      "item-01 item-04";
      column-gap: 2em;
      row-gap: 1.2em;
    }
    @media screen and (max-width: 768px) {
      .column2510_content_profile_gray {
        column-gap: 1em;
        row-gap: 0.6em;
        grid-template-rows: auto auto 1fr auto;
        grid-template-areas:
        "item-01 item-05"
        "item-01 item-02"
        "item-01 item-03"
        "item-04 item-04";
      }
    }

    .column2510_content_profile_gray_heading_box {
      grid-area: item-05;
      font-size: 1.2em;
      font-weight: 700;
      position: relative;
      margin-bottom: 0.8em;

      &::before {
        content: "";
        width: 100%;
        height: 1px;
        background-color: #c8c8c8;
        position: absolute;
        bottom: -1em;
        left: 0;
      }

      .column2510_content_profile_gray_heading {
        line-height: 1;
      }
    }
    @media screen and (max-width: 768px) {
      .column2510_content_profile_gray_heading_box {
        &::before {
          bottom: -0.7em;
        }
      }
    }

    .column2510_content_profile_gray_img_box {
      grid-area: item-01;
      width: 220px;
    }
    @media screen and (max-width: 768px) {
      .column2510_content_profile_gray_img_box {
        grid-area: item-01;
        width: 30vw;
        max-width: 160px;
      }
    }

    .column2510_content_profile_gray_subheading_box {
      grid-area: item-02;
      font-size: min(1.2em, 16px);
      height: fit-content;
      width: fit-content;
      line-height: 1.5;
    }

    .column2510_content_profile_gray_name_box {
      grid-area: item-03;
      font-size: min(2em, 25.6px);
      font-weight: 700;
      line-height: 1;
    }

    .column2510_content_profile_datail_box {
      grid-area: item-04;
      font-size: min(1.2em, 16px);
      line-height: 1.6;
      text-align: justify;
    }
    @media screen and (max-width: 768px) {
      .column2510_content_profile_datail_box {
        margin-top: 0.5em;
      }
    }
  }
  @media screen and (max-width: 768px) {
    .column2510_content_profile_gray_wrap {
      padding: 1em;
      margin-bottom: 6em;
    }
  }
}



/****************************************
「特集」ページ（special）
****************************************/
.column2510_p-special {
  /********** セクション-01 **********/
  /* サムネイル */
  .column2510_kv_wrap {
    margin-bottom: 8em;

    .column2510_kv_img_box {
      margin-bottom: 4em;

      .column2510_kv_img {
        border: 1px solid #c8c8c8;
      }

      .column2510_kv_img + .column2510_image_caption_left {
        margin-top: 1rem;
      }
    }
    @media screen and (max-width: 768px) {
      .column2510_kv_img_box {
        margin-bottom: 2em;
      }
    }

    .column2510_kv_text {
      text-align: justify;
      letter-spacing: 0.08em;
      margin: 0;
    }
  }
  @media screen and (max-width: 768px) {
    .column2510_kv_wrap {
      margin-bottom: 4em;
    }
  }


  /********** セクション-02 **********/
  .column2510_section_02_wrap {
    margin-bottom: 12em;

    .column2510_read_wrap {
      margin-bottom: 8em;

      .column2510_read_inner {
        .column2510_visual_wrap {
          grid-area: item-01;
          margin-bottom: 0;

          .column2510_visual_box {
            margin-bottom: 0;
          }
        }
      }
    }
    @media screen and (max-width: 768px) {
      .column2510_read_wrap {
        margin-bottom: 6em;
      }
    }
  }
  @media screen and (max-width: 768px) {
    .column2510_section_02_wrap {
      margin-bottom: 6em;
    }
  }
        
  /********** セクション-03 **********/
  .column2510_section_03_wrap {
    margin-bottom: 12em;

    .column2510_section_container {
      margin-bottom: 12em;
    }
    @media screen and (max-width: 768px) {
      .column2510_section_container {
        margin-bottom: 6em;
      }
    }

    .column2510_title_wrap {
      color: #000;
      font-size: 2rem;
      font-weight: 700;
      line-height: 1;
      letter-spacing: 0.05em;
      /* padding-bottom: 1em; */
      /* margin-bottom: 1em; */
  
      &::after,
      &::before {
        content: none;
      }
  
      .column2510_title_deco_wrap {
        font-weight: 700;
        line-height: 1.44;
        position: relative;
        display: grid;
        row-gap: 0.4em;

    
        .column2510_title_deco_headmark_wrap {
          font-size: 0.5em;
          letter-spacing: 0.1em;
          display: flex;
          align-items: center;
          color: #fff;
          padding: 0.01em 0.5em;
          white-space: nowrap;
          column-gap: 0;
          border: none;
          padding-left: 0;

          .column2510_title_deco_headmark_01 {
            border-top: 1px solid #E60012;
            border-left: 1px solid #E60012;
            border-bottom: 1px solid #E60012;
            padding: 0.2em 1.5em 0.2em 0.8em;
            white-space: nowrap;
            position: relative;
            height: 100%;
            display: flex;
            align-items: center;
            z-index: 1;
            background-color: #fff;

            &::before {
              content: "";
              position: absolute;
              width: 100%;
              height: 100%;
              top: 0;
              left: 0;
              clip-path: polygon(0% 0%, 100% 0%, 85% 100%, 0% 100%);
              background-color: #E60012;
              z-index: -1;
            }
          }
  
          .column2510_title_deco_headmark_02 {
            border-top: 1px solid #E60012;
            border-right: 1px solid #E60012;
            border-bottom: 1px solid #E60012;
            color: #000;
            padding: 0.2em 0.6em 0.2em 0.4em;
            background-color: #fff;
          }
        }
      }    
    }
    @media screen and (max-width: 768px) {
      .column2510_title_wrap {
        font-size: 1.44rem;
        /* padding-bottom: 2em; */
        /* margin-bottom: 1em; */

        .column2510_title_deco_wrap {
          row-gap: 0.25em;
          
          .column2510_title_deco_headmark_wrap {
            font-size: 0.7em;
            width: fit-content;
            margin-bottom: 0.3em;
          }
        }
      }
    }

    @media screen and (max-width: 768px) {
      .column2510_content_profile_gray {
        display: grid;
        grid-template-columns: auto 1fr;
        grid-template-rows: auto auto auto 1fr;
        grid-template-areas:
        "item-01 item-05"
        "item-01 item-02"
        "item-01 item-03"
        "item-01 item-04";
        column-gap: 2em;
        row-gap: 1.2em;
      }
    }
    @media screen and (width < 600px) {
      .column2510_content_profile_gray {
        grid-template-columns: 1fr;
        grid-template-rows: auto auto auto auto auto;
        grid-template-areas:
        "item-01"
        "item-05"
        "item-02"
        "item-03"
        "item-04";
      }
    }

    .column2510_content_profile_gray_img_box {
      width: 25vw;
      max-width: 220px;
    }
    @media screen and (max-width: 768px) {
      .column2510_content_profile_gray_img_box {
        width: 25vw;
        max-width: 220px;
      }
    }
    @media screen and (width < 600px) {
      .column2510_content_profile_gray_img_box {
        width: 100%;
        height: 100%;
        object-fit: contain;
        max-width: initial;
        margin-bottom: 1em;
        justify-self: center;

        .column2510_content_profile_gray_img {
          width: 100%;
        }
      }
    }

    .column2510_content_profile_datail_box {
      margin-top: 0;
    }
  }
  @media screen and (max-width: 768px) {
    .column2510_section_03_wrap {
      margin-bottom: 6em;
    }
  }

  /********** セクション-04 **********/
  /* トップページへ遷移ボタン */
  .column2510_top-page_btn_wrap {
    margin-top: 12em;
    margin-bottom: 4em;

    .column2510_top-page_btn_box {
      width: 100%;
      max-width: 336px;
      background-color: #000;
      border: 1px solid #000;
      margin-inline: auto;
      position: relative;
      transition: 0.3s;

      &::before {
        content: "";
        display: inline-block;
        width: 10px;
        height: 10px;
        position: absolute;
        top: 50%;
        right: 15px;
        border-top: 1px solid #fff;
        border-right: 1px solid #fff;
        translate: 0 -50%;
        rotate: 45deg;
        transition: 0.3s;
      }

      &:hover {
        background-color: #fff;

        &::before {
          border-top: 1px solid #000;
          border-right: 1px solid #000;
        }

        .column2510_top-page_btn_item {
          color: #000;
        }
      }
    }

    .column2510_top-page_btn_item {
      font-weight: 700;
      text-align: center;
      text-decoration: none;
      color: #fff;
      display: flex;
      align-items: center;
      justify-content: center;
      width: 100%;
      padding-block: 0.6em;
      transition: 0.3s;
      min-height: 50px;
    }

    .column2510_top-page_btn_item_text {
      line-height: 1.5;
      transition: 0.3s;
    }
  }
  @media screen and (max-width: 768px) {
    .column2510_top-page_btn_wrap {
      margin-top: 6em;

      .column2510_top-page_btn_box {
        max-width: 325px;
      }
    }
  }
}



/****************************************
「WORLD NEWS」ページ（worldnews）
****************************************/
.column2510_p-worldnews {
  /********** セクション-01 **********/
  /* サムネイル */
  .column2510_kv_wrap {
    margin-bottom: 8em;

    .column2510_kv_img_box {
      margin-bottom: 4em;

      .column2510_kv_img {
        border: 1px solid #c8c8c8;
      }
    }
    @media screen and (max-width: 768px) {
      .column2510_kv_img_box {
        margin-bottom: 2em;
      }
    }

    .column2510_kv_text {
      text-align: justify;
      letter-spacing: 0.08em;
      margin: 0;
    }
  }
  @media screen and (max-width: 768px) {
    .column2510_kv_wrap {
      margin-bottom: 4em;
    }
  }

  /********** セクション-02 **********/
  .column2510_infomation_wrap {
    margin-bottom: 12em;

    .column2510_visual_flex_wrap {
      display: flex;

      .column2510_visual_item_box {
        &:nth-of-type(1) {
          width: 63.75%;
        }
      }

      .column2510_visual_item_box {
        &:nth-of-type(2) {
          width: 36.25%;
        }
      }
    }

    .column2510_visual_item_text {
      margin-top: 4em;
      padding-top: 0;
    }

    .column2510_visual_item_text:first-of-type ~ .column2510_visual_item_text {
      margin-top: 0;
    }
  }
  @media screen and (max-width: 768px) {
    .column2510_infomation_wrap {
      margin-bottom: 6em;

      .column2510_visual_flex_wrap {
        flex-direction: column;

        .column2510_visual_item_box {
          &:nth-of-type(1) {
            width: 100%;
          }
        }
  
        .column2510_visual_item_box {
          &:nth-of-type(2) {
            width: 100%;

            .column2510_img {
              width: 100%;
            }
          }
        }

        .column2510_visual_item_text {
          margin-top: 2em;
        }
      }
    }
  }

  /********** セクション-03 **********/
  .column2510_main_contents_warp {
    .column2510_contents_box {
      margin-bottom: 12em;
    }
    @media screen and (max-width: 768px) {
      .column2510_contents_box {
        margin-bottom: 6em;
      }
    }

    .column2510_title_grid {
      display: grid;
      row-gap: 8px;
      margin-bottom: 3em;
    }

    .column2510_title_text {
      position: relative;
      margin-bottom: 0;
      padding-bottom: 0.8em;
      font-size: 2rem;
      line-height: 1.44;
      letter-spacing: .05em;
      font-family: YuGothic, Yu Gothic, -apple-system, BlinkMacSystemFont, Roboto, Meiryo, sans-serif;
      font-weight: 700;

      &::before,
      &::after {
        width: 100%;
        background-color: #ccc;
      }
    }
    @media screen and (max-width: 768px) {
      .column2510_title_text {
        margin-bottom: 0;
        padding-bottom: 1em;
        font-size: 1.44rem;
        line-height: 1.44;
        letter-spacing: .05em;
      }
    }

    .column2510_visual_wrap {
      margin-bottom: 4em;
    }
    @media screen and (max-width: 768px) {
      .column2510_visual_wrap {
        margin-bottom: 2em;
      }
    }

    .column2510_visual_box {
      margin-bottom: 1em;
    }

    .column2510_content_detail_box {
      margin-bottom: 12em;

      &:last-of-type {
        margin-bottom: 0;
      }
    }
    @media screen and (max-width: 768px) {
      .column2510_content_detail_box {
        margin-bottom: 6em;
      }
    }

    .column2510_minicolumn_wrap {
      margin-bottom: 4em;
      line-height: 1.3;

      .column2510_minicolumn_container {
        border: 1px solid var(--color-red-primary);
        /* border: 1px solid #c8c8c8; */
        padding: 1em 1.5em;
        
        &:not(:last-of-type) {
          margin-bottom: 4em;
        }
      }
      
      .column2510_minicolumn_box {
        display: grid;
        grid-template-columns: auto 1fr;
        grid-template-rows: auto auto auto 1fr;
        grid-template-areas:
        "item-01 item-01"
        "item-02 item-02"
        "item-03 item-04"
        "item-05 item-06";
        column-gap: 1.6em;
        row-gap: 0.8em;

        .column2510_minicolumn_name {
          grid-area: item-01;
          margin-top: 0;
          position: relative;
          padding-left: 1.2em;
          align-self: center;

          &::before {
            content: "";
            width: 0.6em;
            height: calc(100% - 0.1em);
            background-color: var(--color-red-primary);
            /* background-color: #c8c8c8; */
            position: absolute;
            top: 50%;
            left: 0;
            translate: 0 -50%;
          }

          .column2510_text_big {
            font-size: 1.6em;
          }
        }

        .column2510_minicolumn_affiliation {
          grid-area: item-02;
          font-size: 1.2em;
          margin-top: 0;
          padding-left: 2.5em;
          text-indent: -2.5em;
        }

        .column2510_minicolumn_activity_title {
          grid-area: item-03;
          margin-top: 0;
          /* background-color: var(--color-red-primary); */
          background-color: #c8c8c8;
          height: 1.6em;
          padding: 0.15em 0.6em;
          color: #fff;
        }

        .column2510_minicolumn_activity_text {
          grid-area: item-04;
          margin-top: 0;
          align-self: center;
        }

        .column2510_minicolumn_situation_title {
          grid-area: item-05;
          margin-top: 0;
          /* background-color: var(--color-red-primary); */
          background-color: #c8c8c8;
          height: 1.6em;
          padding: 0.15em 0.6em;
          color: #fff;
        }

        .column2510_minicolumn_situation_text {
          grid-area: item-06;
          margin-top: 0;
          align-self: center;
        }

        .column2510_background_triangle_red {
          position: relative;
          /* margin-bottom: 0.4em; */

          &::before {
            content: "";
            width: 1em;
            height: 1.6em;
            /* background-color: var(--color-red-primary); */
            background-color: #c8c8c8;
            position: absolute;
            top: 0;
            right: -0.99em;
            clip-path: polygon(0 0, 100% 0, 0 100%);
          }
        }
      }
    }
  }

  /********** セクション-04 **********/
  /* トップページへ遷移ボタン */
  .column2510_top-page_btn_wrap {
    margin-top: 12em;
    margin-bottom: 4em;

    .column2510_top-page_btn_box {
      width: 100%;
      max-width: 336px;
      background-color: #000;
      border: 1px solid #000;
      margin-inline: auto;
      position: relative;
      transition: 0.3s;

      &::before {
        content: "";
        display: inline-block;
        width: 10px;
        height: 10px;
        position: absolute;
        top: 50%;
        right: 15px;
        border-top: 1px solid #fff;
        border-right: 1px solid #fff;
        translate: 0 -50%;
        rotate: 45deg;
        transition: 0.3s;
      }

      &:hover {
        background-color: #fff;

        &::before {
          border-top: 1px solid #000;
          border-right: 1px solid #000;
        }

        .column2510_top-page_btn_item {
          color: #000;
        }
      }
    }

    .column2510_top-page_btn_item {
      font-weight: 700;
      text-align: center;
      text-decoration: none;
      color: #fff;
      display: flex;
      align-items: center;
      justify-content: center;
      width: 100%;
      padding-block: 0.6em;
      transition: 0.3s;
      min-height: 50px;
    }

    .column2510_top-page_btn_item_text {
      line-height: 1.5;
      transition: 0.3s;
    }
  }
  @media screen and (max-width: 768px) {
    .column2510_top-page_btn_wrap {
      margin-top: 6em;

      .column2510_top-page_btn_box {
        max-width: 325px;
      }
    }
  }
}


/****************************************
「TOPICS」ページ（topics）
****************************************/
.column2510_p-topics {
  /********** セクション-01 **********/
  /* サムネイル */
  .column2510_kv_wrap {
    margin-bottom: 8em;

    .column2510_kv_img_box {
      margin-bottom: 4em;

      .column2510_kv_img {
        border: 1px solid #c8c8c8;
      }
    }
    @media screen and (max-width: 768px) {
      .column2510_kv_img_box {
        margin-bottom: 2em;
      }
    }

    .column2510_kv_text {
      text-align: justify;
      letter-spacing: 0.08em;
      margin: 0;
    }
  }
  @media screen and (max-width: 768px) {
    .column2510_kv_wrap {
      margin-bottom: 4em;
    }
  }

  /********** セクション-02 **********/
  .column2510_note_wrap {
    padding: 2em;
    border-top: 1px solid #c8c8c8;
    border-bottom: 1px solid #c8c8c8;
    margin-bottom: 12em;

    .column2510_note_inner {
      display: grid;
      grid-template-columns: auto 1fr;
      grid-template-rows: auto auto;
      grid-template-areas:
      "item-02 item-01"
      "item-02 item-03";
      column-gap: 2em;
    }
    @media screen and (max-width: 768px) {
      .column2510_note_inner {
        grid-template-columns: 1fr;
        grid-template-rows: auto auto 1fr;
        grid-template-areas:
        "item-02"
        "item-01"
        "item-03";
      }
    }
  
    .column2510_note_title {
      grid-area: item-01;
      font-size: 1.4em;
      align-self: flex-end;
    }
  
    .column2510_note_visual_wrap {
      grid-area: item-02;
      margin-bottom: 0;
      max-width: 350px;
    }
    @media screen and (max-width: 768px) {
      .column2510_note_visual_wrap {
        margin-bottom: 2em;
        margin-inline: auto;
      }
    }
  
    .column2510_note_text {
      grid-area: item-03;
      margin: 0;
      text-align: justify;
      align-self: flex-start;
    }
  }
  @media screen and (max-width: 768px) {
    .column2510_note_wrap {
      margin-bottom: 6em;
    }
  }

  /********** セクション-03 **********/
  .column2510_main_contents_wrap {
    margin-bottom: 12em;

    .column2510_note_inner {
      display: grid;
      grid-template-columns: auto 1fr;
      grid-template-rows: auto auto;
      grid-template-areas:
      "item-02 item-01"
      "item-02 item-03";
      column-gap: 2em;
    }
  
    .column2510_note_title {
      grid-area: item-01;
      font-size: 1.4em;
      align-self: flex-end;
    }
  
    .column2510_note_visual_wrap {
      grid-area: item-02;
      margin-bottom: 0;
      max-width: 350px;
    }
    @media screen and (max-width: 768px) {
      .column2510_note_visual_wrap {
        margin-bottom: 2em;
      }
    }
  
    .column2510_note_text {
      grid-area: item-03;
      margin: 0;
      align-self: flex-start;
    }

    /* ボックス */
    .column2510_column_title_line_box_wrap {
      padding: 0.5em 1.5em;
      margin-bottom: 4em;

      .column2510_column_title_line_box {
        font-size: 1.8rem;
      }
    }

    .column2510_catch_circle_mark_container {
      width: 3em;
      height: 3em;
      display: grid;
      place-content: center;
      border-radius: 99999px;
    }

    .column2510_catch_base_red {
      background-color: var(--color-red-primary);
      color: #fff;   
    }

    .column2510_catch_base_darkgray {
      background-color: var(--color-dark-gray-primary);
      color: #fff;  
    }

    .column2510_catch_circle_wrap {
      display: grid;
      grid-template-columns: auto 1fr;
      align-items: center;
      column-gap: 1em;
      margin-bottom: 1em;

      .column2510_catch_text_container {
        text-align: justify;
      }
    }

    .column2510_visual_box {
      &.column2510_position_relative {
        position: relative;
      }
    }

    .column2510_number_wrap {
      border-radius: 99999px;
      width: 2em;
      height: 2em;
      display: grid;
      place-items: center;
      position: absolute;
      top: 0;
      left: 0;

      &.column2510_number_color_red {
        background-color: var(--color-red-primary);
      }

      &.column2510_number_color_darkgray {
        background-color: var(--color-dark-gray-primary);
      }

      .column2510_number {
        color: #fff;
        font-weight: 700;
      }
    }

    /* 受章者の声 各受章のキャッチ-01 */
    .column2510_column_content_recipient_voice_wrap {
      margin-bottom: 12em;

      .column2510_column_catch_recipient_voice_wrap {
        border-bottom: 1px solid #c6c6c6;
        padding-bottom: 0.6em;
        margin-bottom: 4em;
  
        .column2510_column_catch_recipient_voice {
          font-size: 1.6em;
        }
      }
    }
    @media screen and (max-width: 768px) {
      .column2510_column_content_recipient_voice_wrap {
        margin-bottom: 6em;
      }
    }

    /* プロフィール ホワイトバック */
    .column2510_content_profile_white_wrap {
      .column2510_content_profile_white {
        display: grid;
        grid-template-columns: auto 1fr;
        grid-template-rows: auto auto 1fr;
        grid-template-areas:
        "item-01 item-05"
        "item-01 item-02"
        "item-01 item-03";
        column-gap: 2em;
        row-gap: 0.8em;
        margin-bottom: 2em;
      }
      @media screen and (max-width: 768px) {
        .column2510_content_profile_white {
          column-gap: 1em;
          row-gap: 0.6em;
        }
      }

      .column2510_content_profile_white_heading_box {
        grid-area: item-05;
        font-size: 1.2em;
        font-weight: 700;
        position: relative;
        margin-bottom: 1.2em;

        &::before {
          content: "";
          width: 100%;
          height: 1px;
          background-color: #c8c8c8;
          position: absolute;
          bottom: -1em;
          left: 0;
        }

        .column2510_content_profile_white_heading {
          line-height: 1;
        }
      }
      @media screen and (max-width: 768px) {
        .column2510_content_profile_white_heading_box {
          &::before {
            bottom: -0.9em;
          }
        }
      }

      .column2510_content_profile_white_img_box {
        grid-area: item-01;
        width: 160px;
      }
      @media screen and (max-width: 768px) {
        .column2510_content_profile_white_img_box {
          grid-area: item-01;
          width: 30vw;
          max-width: 160px;
        }
      }

      .column2510_content_profile_white_subheading_box {
        grid-area: item-02;
        font-size: min(0.9em, 16px);
        height: fit-content;
        width: fit-content;
        line-height: 1.5;
      }

      .column2510_content_profile_white_name_box {
        grid-area: item-03;
        font-size: min(1.6em, 25.6px);
        font-weight: 700;
        line-height: 1;
      }

      .column2510_content_profile_datail_box {
        grid-area: item-04;
        font-size: min(1.2em, 16px);
        line-height: 1.6;
        text-align: justify;
      }
    }
  }

  /********** セクション-04 **********/
  /* トップページへ遷移ボタン */
  .column2510_top-page_btn_wrap {
    margin-top: 12em;
    margin-bottom: 4em;

    .column2510_top-page_btn_box {
      width: 100%;
      max-width: 336px;
      background-color: #000;
      border: 1px solid #000;
      margin-inline: auto;
      position: relative;
      transition: 0.3s;

      &::before {
        content: "";
        display: inline-block;
        width: 10px;
        height: 10px;
        position: absolute;
        top: 50%;
        right: 15px;
        border-top: 1px solid #fff;
        border-right: 1px solid #fff;
        translate: 0 -50%;
        rotate: 45deg;
        transition: 0.3s;
      }

      &:hover {
        background-color: #fff;

        &::before {
          border-top: 1px solid #000;
          border-right: 1px solid #000;
        }

        .column2510_top-page_btn_item {
          color: #000;
        }
      }
    }

    .column2510_top-page_btn_item {
      font-weight: 700;
      text-align: center;
      text-decoration: none;
      color: #fff;
      display: flex;
      align-items: center;
      justify-content: center;
      width: 100%;
      /* min-width: 336px; */
      padding-block: 0.6em;
      transition: 0.3s;
      min-height: 50px;
    }

    .column2510_top-page_btn_item_text {
      line-height: 1.5;
      transition: 0.3s;
    }
  }
  @media screen and (max-width: 768px) {
    .column2510_top-page_btn_wrap {
      margin-top: 6em;

      .column2510_top-page_btn_box {
        max-width: 325px;
      }
    }
  }
}



/****************************************
「万博パビリオン」ページ（expo）
****************************************/
:root {
  --color-pastel-01: #e6ffff; /* 水色 */
  --color-pastel-02: #fff0f5; /* 赤色 */
  --color-pastel-03: #ffffd6; /* 黄色 */
  --color-pastel-04: #f8ebff; /* 紫色 */
  --color-pastel-05: #fff3db; /* オレンジ */
  --color-pastel-06: #ebffeb; /* 緑色 */
  --color-pastel-07: #fee7ee; /* 赤色02 */
  --color-pastel-08: #f0f5ff; /* 青色 */
  --color-pastel-09: #fff5ff; /* ピンク */
}

.column2510_p-expo {
  /********** セクション-01 **********/
  /* サムネイル */
  .column2510_kv_wrap {
    margin-bottom: 8em;

    .column2510_kv_img_box {
      margin-bottom: 4em;

      .column2510_kv_img {
        border: 1px solid #c8c8c8;
      }
    }
    @media screen and (max-width: 768px) {
      .column2510_kv_img_box {
        margin-bottom: 2em;
      }
    }

    .column2510_kv_text {
      text-align: justify;
      letter-spacing: 0.08em;
      margin: 0;
    }
  }
  @media screen and (max-width: 768px) {
    .column2510_kv_wrap {
      margin-bottom: 4em;
    }
  }

  /********** セクション-02 **********/
  .column2510_main_contents_wrap {
    .column2510_title_grid {
      display: grid;
      row-gap: 8px;
      margin-bottom: 3em;
    }

    .column2510_title_text {
      position: relative;
      margin-bottom: 0;
      padding-bottom: 0.8em;
      font-size: 2rem;
      line-height: 1.44;
      letter-spacing: .05em;
      font-family: YuGothic, Yu Gothic, -apple-system, BlinkMacSystemFont, Roboto, Meiryo, sans-serif;
      font-weight: 700;

      &::before,
      &::after {
        width: 100%;
        background-color: #ccc;
      }
    }
    @media screen and (max-width: 768px) {
      .column2510_title_text {
        margin-bottom: 0;
        padding-bottom: 1em;
        font-size: 1.44rem;
        line-height: 1.44;
        letter-spacing: .05em;
      }
    }

    .column2510_title_row_grid {
      display: grid;
      grid-template-rows: auto auto;
      row-gap: 0.6em;
      margin-bottom: 3em;
      position: relative;

      &::before,
      &::after {
        content: "";
        width: 100%;
        height: 1px;
        background-color: #ccc;
        position: absolute;
        bottom: 0;
        left: 0;
      }
    }

    .column2510_title_row_icon_flex {
      display: flex;
      flex-wrap: wrap;
      align-items: center;
      column-gap: 12px;
      row-gap: 12px;
    }

    .column2510_title_row_box {
      display: grid;
      place-content: center;
      border-radius: 5px;
      width: fit-content;

      &.column2510_eyecatch {
        background-color: var(--color-red-primary);
      }
    }

    .column2510_title_row_deco {
      font-size: 1rem;
      line-height: 1;
      letter-spacing: 0.1em;
      font-weight: 700;
      color: #fff;
      padding: 0.4em 0.8em;
    }

    .column2510_title_row_text {
      position: relative;
      margin-top: 0;
      margin-bottom: 0;
      padding-bottom: 0.8em;
      font-size: 2rem;
      line-height: 1.44;
      letter-spacing: .05em;
      font-family: YuGothic, Yu Gothic, -apple-system, BlinkMacSystemFont, Roboto, Meiryo, sans-serif;
      font-weight: 700;

      &::before,
      &::after {
        width: 0;
      }
    }
    @media screen and (max-width: 768px) {
      .column2510_title_row_text {
        margin-bottom: 0;
        padding-bottom: 1em;
        font-size: 1.44rem;
        line-height: 1.44;
        letter-spacing: .05em;
      }
    }

    .column2510_content_grid_wrap {
      display: grid;
      grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
      column-gap: 3em;
      row-gap: 4em;

      .column2510_balloon_wrap {
        position: relative;
        border-radius: 15px;
        filter: drop-shadow(2px 2px 2px #d9d9d9);

        &::before {
          content: "";
          width: 1.5em;
          height: 2em;
          position: absolute;
          top: 70%;
          right: -1.5em;
          clip-path: polygon(0 20%, 100% 0, 0 100%);
        }

        &.column2510_balloon_color_01 {
          background-color: var(--color-pastel-01);
          
          &::before {
            background-color: var(--color-pastel-01);
          }
        }

        &.column2510_balloon_color_02 {
          background-color: var(--color-pastel-02);
          
          &::before {
            background-color: var(--color-pastel-02);
          }
        }

        &.column2510_balloon_color_03 {
          background-color: var(--color-pastel-03);
          
          &::before {
            background-color: var(--color-pastel-03);
          }
        }

        &.column2510_balloon_color_04 {
          background-color: var(--color-pastel-04);

          &::before {
            background-color: var(--color-pastel-04);
          }
        }

        &.column2510_balloon_color_05 {
          background-color: var(--color-pastel-05);

          &::before {
            background-color: var(--color-pastel-05);
          }
        }

        &.column2510_balloon_color_06 {
          background-color: var(--color-pastel-06);

          &::before {
            background-color: var(--color-pastel-06);
          }
        }

        &.column2510_balloon_color_07 {
          background-color: var(--color-pastel-07);

          &::before {
            background-color: var(--color-pastel-07);
          }
        }

        &.column2510_balloon_color_08 {
          background-color: var(--color-pastel-08);

          &::before {
            background-color: var(--color-pastel-08);
          }
        }

        &.column2510_balloon_color_09 {
          background-color: var(--color-pastel-09);

          &::before {
            background-color: var(--color-pastel-09);
          }
        }
      }

      .column2510_content_grid_item_wrap {
        display: grid;
        grid-template-rows: subgrid ;
        grid-row: span 2;
        padding: 2em;
        /* border-top: 1px solid #c8c8c8; */
        /* border-bottom: 1px solid #c8c8c8; */
        row-gap: 1em;

        .column2510_content_grid__voice {
          text-align: justify;

          &.column2510_text_en {
            word-break: break-all;
          }
        }
  
        .column2510_content_grid_generation {
          margin-top: 0;
          padding: 1em 0.8em 0;
          /* background-color: #f3f3f3; */
          /* background-color: rgba(230, 17, 2, 0.1); */
          /* border: 1px solid rgba(230, 17, 2, 0.3); */
          border-top: 1px solid #c8c8c8;
          text-align: center;
        }
      }
    }
  }

  /********** セクション-03 **********/
  .column2510_main_contents_02_wrap {

    /* 受章者の声 大タイトル */
    .column2510_column_title_voice_wrap {
      padding: 0.5em 1.5em;
      border: 1px solid var(--color-red-primary);
      margin-bottom: 4em;

      .column2510_column_title_voice {
        font-size: min(7vw, 1.8rem);
      }
    }

    /* プロフィール ホワイトバック */
    .column2510_content_profile_white_wrap {
      margin-bottom: 12em;

      .column2510_content_profile_white,
      .column2510_content_profile_white_img_horizontal {
        display: grid;
        grid-template-columns: auto 1fr;
        grid-template-rows: auto  auto 1fr;
        grid-template-areas:
        /* "item-01 item-05" */
        "item-01 item-02"
        "item-01 item-03"
        "item-01 item-04";
        column-gap: 2em;
        row-gap: 0.8em;
        margin-bottom: 2em;
      }
      @media screen and (max-width: 768px) {
        .column2510_content_profile_white {
          grid-template-rows: auto 1fr auto;
          grid-template-areas:
          /* "item-01 item-05" */
          "item-01 item-02"
          "item-01 item-03"
          "item-04 item-04";
          column-gap: 1em;
          row-gap: 0.6em;
        }

        .column2510_content_profile_white_img_horizontal {
          grid-template-columns: 1fr;
          grid-template-rows: auto auto auto  auto;
          grid-template-areas:
          "item-01"
          /* "item-05" */
          "item-02"
          "item-03"
          "item-04";
          column-gap: 1em;
          row-gap: 0.6em;
        }
      }
      @media screen and (max-width: 499px) {
        .column2510_content_profile_white {
          grid-template-columns: 1fr;
          grid-template-rows: auto auto auto  auto;
          grid-template-areas:
          "item-01"
          /* "item-05" */
          "item-02"
          "item-03"
          "item-04";
          column-gap: 1em;
          row-gap: 0.6em;
        }
      }

      .column2510_content_profile_white_heading_box {
        grid-area: item-05;
        font-size: 1.2em;
        font-weight: 700;
        position: relative;
        margin-bottom: 1.2em;

        &::before {
          content: "";
          width: 100%;
          height: 1px;
          background-color: #c8c8c8;
          position: absolute;
          bottom: -1em;
          left: 0;
        }

        .column2510_content_profile_white_heading {
          line-height: 1;
        }
      }
      @media screen and (max-width: 768px) {
        .column2510_content_profile_white_heading_box {
          &::before {
            bottom: -0.9em;
          }
        }
      }

      .column2510_content_profile_white_img_box {
        grid-area: item-01;
        width: clamp(240px, 20vw, 300px);
      }
      @media screen and (max-width: 768px) {
        .column2510_content_profile_white_img_box {
          width: 40vw;
          max-width: 240px;
        }
      }
      @media screen and (max-width: 499px) {
        .column2510_content_profile_white_img_box {
          width: 100%;
          max-width: initial;
          justify-self: center;
          margin-bottom: 2em;
        }
      }

      .column2510_content_profile_white_img_horizontal_box {
        grid-area: item-01;
        width: clamp(340px, 35vw, 480px);
      }
      @media screen and (max-width: 768px) {
        .column2510_content_profile_white_img_horizontal_box {
          width: clamp(340px, 60vw, 400px);
          margin-bottom: 2em;
        }
      }
      @media screen and (max-width: 768px) {
        .column2510_content_profile_white_img_horizontal_box {
          width: 100%;
        }
      }

      .column2510_content_profile_white_subheading_box {
        grid-area: item-02;
        font-size: min(0.9em, 16px);
        height: fit-content;
        width: fit-content;
        line-height: 1.5;
      }

      .column2510_content_profile_white_name_box {
        grid-area: item-03;
        font-size: min(1.6em, 25.6px);
        font-weight: 700;
        line-height: 1;
      }
      @media screen and (max-width: 768px) {
        .column2510_content_profile_white_name_box {
          line-height: 1.2;
        }
      }

      .column2510_content_profile_white_voice_box {
        margin-top: 3em;
        grid-area: item-04;
        font-size: min(1.2em, 16px);
        line-height: 1.6;
        text-align: justify;
        position: relative;

        &::before {
          content: "";
          width: 100%;
          height: 1px;
          background-color: #c8c8c8;
          position: absolute;
          top: calc((-3em + 1em) + (-0.8em / 2));
          left: 0;
        }
      }
      @media screen and (max-width: 768px) {
        .column2510_content_profile_white_voice_box {
          &::before {
            top: -2.3em;
          }
        }
      }
    }
    @media screen and (max-width: 768px) {
      .column2510_content_profile_white_wrap {
        margin-bottom: 6em;
      }
    }
  }

  /********** セクション-04 **********/
  /* トップページへ遷移ボタン */
  .column2510_top-page_btn_wrap {
    margin-top: 12em;
    margin-bottom: 4em;

    .column2510_top-page_btn_box {
      width: 100%;
      max-width: 336px;
      background-color: #000;
      border: 1px solid #000;
      margin-inline: auto;
      position: relative;
      transition: 0.3s;

      &::before {
        content: "";
        display: inline-block;
        width: 10px;
        height: 10px;
        position: absolute;
        top: 50%;
        right: 15px;
        border-top: 1px solid #fff;
        border-right: 1px solid #fff;
        translate: 0 -50%;
        rotate: 45deg;
        transition: 0.3s;
      }

      &:hover {
        background-color: #fff;

        &::before {
          border-top: 1px solid #000;
          border-right: 1px solid #000;
        }

        .column2510_top-page_btn_item {
          color: #000;
        }
      }
    }

    .column2510_top-page_btn_item {
      font-weight: 700;
      text-align: center;
      text-decoration: none;
      color: #fff;
      display: flex;
      align-items: center;
      justify-content: center;
      width: 100%;
      /* min-width: 336px; */
      padding-block: 0.6em;
      transition: 0.3s;
      min-height: 50px;
    }

    .column2510_top-page_btn_item_text {
      line-height: 1.5;
      transition: 0.3s;
    }
  }
  @media screen and (max-width: 768px) {
    .column2510_top-page_btn_wrap {
      margin-top: 6em;

      .column2510_top-page_btn_box {
        max-width: 325px;
      }
    }
  }
}



/****************************************
「けんけつのいま」ページ（blooddonation）
****************************************/
.column2510_p-blooddonation {
  /********** セクション-01 **********/
  /* サムネイル */
  .column2510_kv_wrap {
    margin-bottom: 8em;

    .column2510_kv_img_box {
      margin-bottom: 4em;

      .column2510_kv_img {
        border: 1px solid #c8c8c8;
      }
    }
    @media screen and (max-width: 768px) {
      .column2510_kv_img_box {
        margin-bottom: 2em;
      }
    }

    .column2510_kv_text {
      text-align: justify;
      letter-spacing: 0.08em;
      margin: 0;
    }
  }
  @media screen and (max-width: 768px) {
    .column2510_kv_wrap {
      margin-bottom: 4em;
    }
  }

  /********** セクション-03 **********/
  /* トップページへ遷移ボタン */
  .column2510_top-page_btn_wrap {
    margin-top: 12em;
    margin-bottom: 4em;

    .column2510_top-page_btn_box {
      width: 100%;
      max-width: 336px;
      background-color: #000;
      border: 1px solid #000;
      margin-inline: auto;
      position: relative;
      transition: 0.3s;

      &::before {
        content: "";
        display: inline-block;
        width: 10px;
        height: 10px;
        position: absolute;
        top: 50%;
        right: 15px;
        border-top: 1px solid #fff;
        border-right: 1px solid #fff;
        translate: 0 -50%;
        rotate: 45deg;
        transition: 0.3s;
      }

      &:hover {
        background-color: #fff;

        &::before {
          border-top: 1px solid #000;
          border-right: 1px solid #000;
        }

        .column2510_top-page_btn_item {
          color: #000;
        }
      }
    }

    .column2510_top-page_btn_item {
      font-weight: 700;
      text-align: center;
      text-decoration: none;
      color: #fff;
      display: flex;
      align-items: center;
      justify-content: center;
      width: 100%;
      /* min-width: 336px; */
      padding-block: 0.6em;
      transition: 0.3s;
      min-height: 50px;
    }

    .column2510_top-page_btn_item_text {
      line-height: 1.5;
      transition: 0.3s;
    }
  }
  @media screen and (max-width: 768px) {
    .column2510_top-page_btn_wrap {
      margin-top: 6em;

      .column2510_top-page_btn_box {
        max-width: 325px;
      }
    }
  }
}



/****************************************
「AreaNews」ページ（areanews）
****************************************/
:root {
  /* 都道府県カラー定義 */
  --btn-color-hokkaido: #00b197; /* 北海道 */
  --btn-color-aomori: #47b2e6; /* 青森県 */
  --btn-color-iwate: #ff9ff3; /* 岩手県 */
  --btn-color-miyagi: #54a0ff; /* 宮城県 */
  --btn-color-akita: #f1832c; /* 秋田県 */
  --btn-color-yamagata: #5f27cd; /* 山形県 */
  --btn-color-fukushima: #00d2d3; /* 福島県 */
  --btn-color-ibaraki: #9dca55; /* 茨城県 */
  --btn-color-tochigi: #f1832c; /* 栃木県 */
  --btn-color-gunma: #96ceb4; /* 群馬県 */
  --btn-color-saitama: #4ecdc4; /* 埼玉県 */
  --btn-color-chiba: #45b7d1; /* 千葉県 */
  --btn-color-tokyo: #ff6b6b; /* 東京都 */
  --btn-color-kanagawa: #9dca55; /* 神奈川県 */
  --btn-color-niigata: #ff9f43; /* 新潟県 */
  --btn-color-toyama: #10ac84; /* 富山県 */
  --btn-color-ishikawa: #f9c04c; /* 石川県 */
  --btn-color-fukui: #ee7981; /* 福井県 */
  --btn-color-yamanashi: #ee5a24; /* 山梨県 */
  --btn-color-nagano: #0984e3; /* 長野県 */
  --btn-color-gifu: #6c5ce7; /* 岐阜県 */
  --btn-color-shizuoka: #47b2e8; /* 静岡県 */
  --btn-color-aichi: #c170aa; /* 愛知県 */
  --btn-color-mie: #a29bfe; /* 三重県 */
  --btn-color-shiga: #7484c0; /* 滋賀県 */
  --btn-color-kyoto: #c170aa; /* 京都府 */
  --btn-color-osaka: #41b06e; /* 大阪府 */
  --btn-color-hyogo: #fdcb6e; /* 兵庫県 */
  --btn-color-nara: #7484c0; /* 奈良県 */
  --btn-color-wakayama: #fd79a8; /* 和歌山県 */
  --btn-color-tottori: #e17055; /* 鳥取県 */
  --btn-color-shimane: #74b9ff; /* 島根県 */
  --btn-color-okayama: #b49a75; /* 岡山県 */
  --btn-color-hiroshima: #b49a75; /* 広島県 */
  --btn-color-yamaguchi: #e84393; /* 山口県 */
  --btn-color-tokushima: #00cec9; /* 徳島県 */
  --btn-color-kagawa: #47b2e8; /* 香川県 */
  --btn-color-ehime: #b49a75; /* 愛媛県 */
  --btn-color-kochi: #6c5ce7; /* 高知県 */
  --btn-color-fukuoka: #00b197; /* 福岡県 */
  --btn-color-saga: #a29bfe; /* 佐賀県 */
  --btn-color-nagasaki: #fd79a8; /* 長崎県 */
  --btn-color-kumamoto: #fdcb6e; /* 熊本県 */
  --btn-color-oita: #41b06e; /* 大分県 */
  --btn-color-miyazaki: #e17055; /* 宮崎県 */
  --btn-color-kagoshima: #74b9ff; /* 鹿児島県 */
  --btn-color-okinawa: #47b2e6; /* 沖縄県 */
}

.column2510_p-areanews {
  /********** セクション-01 **********/
  /* サムネイル */
  .column2510_kv_wrap {
    margin-bottom: 8em;

    .column2510_kv_img_box {
      margin-bottom: 4em;

      .column2510_kv_img {
        border: 1px solid #c8c8c8;
      }
    }
    @media screen and (max-width: 768px) {
      .column2510_kv_img_box {
        margin-bottom: 2em;
      }
    }

    .column2510_kv_text {
      text-align: justify;
      letter-spacing: 0.08em;
      margin: 0;
    }
  }
  @media screen and (max-width: 768px) {
    .column2510_kv_wrap {
      margin-bottom: 4em;
    }
  }

  /********** セクション-02 **********/
  /* 地域一覧 */
  #column2510_area-select {
    margin-bottom: 12em;

    .column2510_area-select_title_box {
      width: 100%;
      background-color: #f3f3f3;
      margin-bottom: 30px;
    }

    .column2510_area-select_title_text {
      font-size: 20px;
      line-height: 1.5;
      padding: 0.6em 1em;
    }

    .column2510_area-select_ul {
      display: grid;
      grid-template-columns: repeat(4, 1fr);
      column-gap: 20px;
      row-gap: 20px;
      justify-content: center;

      /***** エリア選択ボタンのカラー設定 *****/
      /* 北海道 */
      .column2510_area-select_btn-hokkaido {
        background-color: var(--btn-color-hokkaido) !important;
        border: 1px solid var(--btn-color-hokkaido) !important;

        /***** ホバー時のスタイル *****/
        &:hover {
          background-color: #fff !important;
  
          .column2510_area-select_btn-link {
            color: var(--btn-color-hokkaido) !important;
          }
          
          &::after {
            border-bottom: 2px solid var(--btn-color-hokkaido) !important;
            border-right: 2px solid var(--btn-color-hokkaido) !important;
          }
        }
      }

      /* 青森県 */
      .column2510_area-select_btn-aomori {
        background-color: var(--btn-color-aomori) !important;
        border: 1px solid var(--btn-color-aomori) !important;

        /***** ホバー時のスタイル *****/
        &:hover {
          background-color: #fff !important;
  
          .column2510_area-select_btn-link {
            color: var(--btn-color-aomori) !important;
          }
          
          &::after {
            border-bottom: 2px solid var(--btn-color-aomori) !important;
            border-right: 2px solid var(--btn-color-aomori) !important;
          }
        }
      }

      /* 岩手県 */
      .column2510_area-select_btn-iwate {
        background-color: var(--btn-color-iwate) !important;
        border: 1px solid var(--btn-color-iwate) !important;

        /***** ホバー時のスタイル *****/
        &:hover {
          background-color: #fff !important;
  
          .column2510_area-select_btn-link {
            color: var(--btn-color-iwate) !important;
          }
          
          &::after {
            border-bottom: 2px solid var(--btn-color-iwate) !important;
            border-right: 2px solid var(--btn-color-iwate) !important;
          }
        }
      }

      /* 宮城県 */
      .column2510_area-select_btn-miyagi {
        background-color: var(--btn-color-miyagi) !important;
        border: 1px solid var(--btn-color-miyagi) !important;

        /***** ホバー時のスタイル *****/
        &:hover {
          background-color: #fff !important;
  
          .column2510_area-select_btn-link {
            color: var(--btn-color-miyagi) !important;
          }
          
          &::after {
            border-bottom: 2px solid var(--btn-color-miyagi) !important;
            border-right: 2px solid var(--btn-color-miyagi) !important;
          }
        }
      }

      /* 秋田県 */
      .column2510_area-select_btn-akita {
        background-color: var(--btn-color-akita) !important;
        border: 1px solid var(--btn-color-akita) !important;

        /***** ホバー時のスタイル *****/
        &:hover {
          background-color: #fff !important;
  
          .column2510_area-select_btn-link {
            color: var(--btn-color-akita) !important;
          }
          
          &::after {
            border-bottom: 2px solid var(--btn-color-akita) !important;
            border-right: 2px solid var(--btn-color-akita) !important;
          }
        }
      }

      /* 山形県 */
      .column2510_area-select_btn-yamagata {
        background-color: var(--btn-color-yamagata) !important;
        border: 1px solid var(--btn-color-yamagata) !important;

        /***** ホバー時のスタイル *****/
        &:hover {
          background-color: #fff !important;
  
          .column2510_area-select_btn-link {
            color: var(--btn-color-yamagata) !important;
          }
          
          &::after {
            border-bottom: 2px solid var(--btn-color-yamagata) !important;
            border-right: 2px solid var(--btn-color-yamagata) !important;
          }
        }
      }

      /* 福島県 */
      .column2510_area-select_btn-fukushima {
        background-color: var(--btn-color-fukushima) !important;
        border: 1px solid var(--btn-color-fukushima) !important;

        /***** ホバー時のスタイル *****/
        &:hover {
          background-color: #fff !important;
  
          .column2510_area-select_btn-link {
            color: var(--btn-color-fukushima) !important;
          }
          
          &::after {
            border-bottom: 2px solid var(--btn-color-fukushima) !important;
            border-right: 2px solid var(--btn-color-fukushima) !important;
          }
        }
      }

      /* 茨城県 */
      .column2510_area-select_btn-ibaraki {
        background-color: var(--btn-color-ibaraki) !important;
        border: 1px solid var(--btn-color-ibaraki) !important;

        /***** ホバー時のスタイル *****/
        &:hover {
          background-color: #fff !important;
  
          .column2510_area-select_btn-link {
            color: var(--btn-color-ibaraki) !important;
          }
  
          &::after {
            border-bottom: 2px solid var(--btn-color-ibaraki) !important;
            border-right: 2px solid var(--btn-color-ibaraki) !important;
          }
        }
      }

      /* 栃木県 */
      .column2510_area-select_btn-tochigi {
        background-color: var(--btn-color-tochigi) !important;
        border: 1px solid var(--btn-color-tochigi) !important;

        /***** ホバー時のスタイル *****/
        &:hover {
          background-color: #fff !important;
  
          .column2510_area-select_btn-link {
            color: var(--btn-color-tochigi) !important;
          }
          
          &::after {
            border-bottom: 2px solid var(--btn-color-tochigi) !important;
            border-right: 2px solid var(--btn-color-tochigi) !important;
          }
        }
      }

      /* 群馬県 */
      .column2510_area-select_btn-gunma {
        background-color: var(--btn-color-gunma) !important;
        border: 1px solid var(--btn-color-gunma) !important;

        /***** ホバー時のスタイル *****/
        &:hover {
          background-color: #fff !important;
  
          .column2510_area-select_btn-link {
            color: var(--btn-color-gunma) !important;
          }
          
          &::after {
            border-bottom: 2px solid var(--btn-color-gunma) !important;
            border-right: 2px solid var(--btn-color-gunma) !important;
          }
        }
      }

      /* 埼玉県 */
      .column2510_area-select_btn-saitama {
        background-color: var(--btn-color-saitama) !important;
        border: 1px solid var(--btn-color-saitama) !important;

        /***** ホバー時のスタイル *****/
        &:hover {
          background-color: #fff !important;
  
          .column2510_area-select_btn-link {
            color: var(--btn-color-saitama) !important;
          }
          
          &::after {
            border-bottom: 2px solid var(--btn-color-saitama) !important;
            border-right: 2px solid var(--btn-color-saitama) !important;
          }
        }
      }

      /* 千葉県 */
      .column2510_area-select_btn-chiba {
        background-color: var(--btn-color-chiba) !important;
        border: 1px solid var(--btn-color-chiba) !important;

        /***** ホバー時のスタイル *****/
        &:hover {
          background-color: #fff !important;
  
          .column2510_area-select_btn-link {
            color: var(--btn-color-chiba) !important;
          }
          
          &::after {
            border-bottom: 2px solid var(--btn-color-chiba) !important;
            border-right: 2px solid var(--btn-color-chiba) !important;
          }
        }
      }

      /* 東京都 */
      .column2510_area-select_btn-tokyo {
        background-color: var(--btn-color-tokyo) !important;
        border: 1px solid var(--btn-color-tokyo) !important;

        /***** ホバー時のスタイル *****/
        &:hover {
          background-color: #fff !important;
  
          .column2510_area-select_btn-link {
            color: var(--btn-color-tokyo) !important;
          }
          
          &::after {
            border-bottom: 2px solid var(--btn-color-tokyo) !important;
            border-bottom: 2px solid var(--btn-color-shiga) !important;
            border-right: 2px solid var(--btn-color-shiga) !important;
          }
        }
      }

      /* 神奈川県 */
      .column2510_area-select_btn-kanagawa {
        background-color: var(--btn-color-kanagawa) !important;
        border: 1px solid var(--btn-color-kanagawa) !important;

        /***** ホバー時のスタイル *****/
        &:hover {
          background-color: #fff !important;

          .column2510_area-select_btn-link {
            color: var(--btn-color-kanagawa) !important;
          }
          
          &::after {
            border-bottom: 2px solid var(--btn-color-kanagawa) !important;
            border-right: 2px solid var(--btn-color-kanagawa) !important;
          }
        }
      }

      /* 新潟県 */
      .column2510_area-select_btn-niigata {
        background-color: var(--btn-color-niigata) !important;
        border: 1px solid var(--btn-color-niigata) !important;

        /***** ホバー時のスタイル *****/
        &:hover {
          background-color: #fff !important;

          .column2510_area-select_btn-link {
            color: var(--btn-color-niigata) !important;
          }
          
          &::after {
            border-bottom: 2px solid var(--btn-color-niigata) !important;
            border-right: 2px solid var(--btn-color-niigata) !important;
          }
        }
      }

      /* 富山県 */
      .column2510_area-select_btn-toyama {
        background-color: var(--btn-color-toyama) !important;
        border: 1px solid var(--btn-color-toyama) !important;

        /***** ホバー時のスタイル *****/
        &:hover {
          background-color: #fff !important;

          .column2510_area-select_btn-link {
            color: var(--btn-color-toyama) !important;
          }
          
          &::after {
            border-bottom: 2px solid var(--btn-color-toyama) !important;
            border-right: 2px solid var(--btn-color-toyama) !important;
          }
        }
      }

      /* 石川県 */
      .column2510_area-select_btn-ishikawa {
        background-color: var(--btn-color-ishikawa) !important;
        border: 1px solid var(--btn-color-ishikawa) !important;

        /***** ホバー時のスタイル *****/
        &:hover {
          background-color: #fff !important;

          .column2510_area-select_btn-link {
            color: var(--btn-color-ishikawa) !important;
          }
          
          &::after {
            border-bottom: 2px solid var(--btn-color-ishikawa) !important;
            border-right: 2px solid var(--btn-color-ishikawa) !important;
          }
        }
      }

      /* 福井県 */
      .column2510_area-select_btn-fukui {
        background-color: var(--btn-color-fukui) !important;
        border: 1px solid var(--btn-color-fukui) !important;

        /***** ホバー時のスタイル *****/
        &:hover {
          background-color: #fff !important;

          .column2510_area-select_btn-link {
            color: var(--btn-color-fukui) !important;
          }
          
          &::after {
            border-bottom: 2px solid var(--btn-color-fukui) !important;
            border-right: 2px solid var(--btn-color-fukui) !important;
          }
        }
      }

      /* 山梨県 */
      .column2510_area-select_btn-yamanashi {
        background-color: var(--btn-color-yamanashi) !important;
        border: 1px solid var(--btn-color-yamanashi) !important;

        /***** ホバー時のスタイル *****/
        &:hover {
          background-color: #fff !important;

          .column2510_area-select_btn-link {
            color: var(--btn-color-yamanashi) !important;
          }
          
          &::after {
            border-bottom: 2px solid var(--btn-color-yamanashi) !important;
            border-right: 2px solid var(--btn-color-yamanashi) !important;
          }
        }
      }

      /* 長野県 */
      .column2510_area-select_btn-nagano {
        background-color: var(--btn-color-nagano) !important;
        border: 1px solid var(--btn-color-nagano) !important;

        /***** ホバー時のスタイル *****/
        &:hover {
          background-color: #fff !important;

          .column2510_area-select_btn-link {
            color: var(--btn-color-nagano) !important;
          }
          
          &::after {
            border-bottom: 2px solid var(--btn-color-nagano) !important;
            border-right: 2px solid var(--btn-color-nagano) !important;
          }
        }
      }

      /* 岐阜県 */
      .column2510_area-select_btn-gifu {
        background-color: var(--btn-color-gifu) !important;
        border: 1px solid var(--btn-color-gifu) !important;

        /***** ホバー時のスタイル *****/
        &:hover {
          background-color: #fff !important;

          .column2510_area-select_btn-link {
            color: var(--btn-color-gifu) !important;
          }
          
          &::after {
            border-bottom: 2px solid var(--btn-color-gifu) !important;
            border-right: 2px solid var(--btn-color-gifu) !important;
          }
        }
      }

      /* 静岡県 */
      .column2510_area-select_btn-shizuoka {
        background-color: var(--btn-color-shizuoka) !important;
        border: 1px solid var(--btn-color-shizuoka) !important;

        /***** ホバー時のスタイル *****/
        &:hover {
          background-color: #fff !important;

          .column2510_area-select_btn-link {
            color: var(--btn-color-shizuoka) !important;
          }
          
          &::after {
            border-bottom: 2px solid var(--btn-color-shizuoka) !important;
            border-right: 2px solid var(--btn-color-shizuoka) !important;
          }
        }
      }

      /* 愛知県 */
      .column2510_area-select_btn-aichi {
        background-color: var(--btn-color-aichi) !important;
        border: 1px solid var(--btn-color-aichi) !important;

        /***** ホバー時のスタイル *****/
        &:hover {
          background-color: #fff !important;

          .column2510_area-select_btn-link {
            color: var(--btn-color-aichi) !important;
          }
          
          &::after {
            border-bottom: 2px solid var(--btn-color-aichi) !important;
            border-right: 2px solid var(--btn-color-aichi) !important;
          }
        }
      }

      /* 三重県 */
      .column2510_area-select_btn-mie {
        background-color: var(--btn-color-mie) !important;
        border: 1px solid var(--btn-color-mie) !important;

        /***** ホバー時のスタイル *****/
        &:hover {
          background-color: #fff !important;

          .column2510_area-select_btn-link {
            color: var(--btn-color-mie) !important;
          }
          
          &::after {
            border-bottom: 2px solid var(--btn-color-mie) !important;
            border-right: 2px solid var(--btn-color-mie) !important;
          }
        }
      }

      /* 滋賀県 */
      .column2510_area-select_btn-shiga {
        background-color: var(--btn-color-shiga) !important;
        border: 1px solid var(--btn-color-shiga) !important;

        /***** ホバー時のスタイル *****/
        &:hover {
          background-color: #fff !important;

          .column2510_area-select_btn-link {
            color: var(--btn-color-shiga) !important;
          }
          
          &::after {
            border-bottom: 2px solid var(--btn-color-shiga) !important;
            border-right: 2px solid var(--btn-color-shiga) !important;
          }
        }
      }

      /* 京都府 */
      .column2510_area-select_btn-kyoto {
        background-color: var(--btn-color-kyoto) !important;
        border: 1px solid var(--btn-color-kyoto) !important;

        /***** ホバー時のスタイル *****/
        &:hover {
          background-color: #fff !important;

          .column2510_area-select_btn-link {
            color: var(--btn-color-kyoto) !important;
          }
          
          &::after {
            border-bottom: 2px solid var(--btn-color-kyoto) !important;
            border-right: 2px solid var(--btn-color-kyoto) !important;
          }
        }
      }

      /* 大阪府 */
      .column2510_area-select_btn-osaka {
        background-color: var(--btn-color-osaka) !important;
        border: 1px solid var(--btn-color-osaka) !important;

        /***** ホバー時のスタイル *****/
        &:hover {
          background-color: #fff !important;

          .column2510_area-select_btn-link {
            color: var(--btn-color-osaka) !important;
          }
          
          &::after {
            border-bottom: 2px solid var(--btn-color-osaka) !important;
            border-right: 2px solid var(--btn-color-osaka) !important;
          }
        }
      }

      /* 兵庫県 */
      .column2510_area-select_btn-hyogo {
        background-color: var(--btn-color-hyogo) !important;
        border: 1px solid var(--btn-color-hyogo) !important;

        /***** ホバー時のスタイル *****/
        &:hover {
          background-color: #fff !important;

          .column2510_area-select_btn-link {
            color: var(--btn-color-hyogo) !important;
          }
          
          &::after {
            border-bottom: 2px solid var(--btn-color-hyogo) !important;
            border-right: 2px solid var(--btn-color-hyogo) !important;
          }
        }
      }

      /* 奈良県 */
      .column2510_area-select_btn-nara {
        background-color: var(--btn-color-nara) !important;
        border: 1px solid var(--btn-color-nara) !important;

        /***** ホバー時のスタイル *****/
        &:hover {
          background-color: #fff !important;

          .column2510_area-select_btn-link {
            color: var(--btn-color-nara) !important;
          }
          
          &::after {
            border-bottom: 2px solid var(--btn-color-nara) !important;
            border-right: 2px solid var(--btn-color-nara) !important;
          }
        }
      }

      /* 和歌山県 */
      .column2510_area-select_btn-wakayama {
        background-color: var(--btn-color-wakayama) !important;
        border: 1px solid var(--btn-color-wakayama) !important;

        /***** ホバー時のスタイル *****/
        &:hover {
          background-color: #fff !important;

          .column2510_area-select_btn-link {
            color: var(--btn-color-wakayama) !important;
          }
          
          &::after {
            border-bottom: 2px solid var(--btn-color-wakayama) !important;
            border-right: 2px solid var(--btn-color-wakayama) !important;
          }
        }
      }

      /* 鳥取県 */
      .column2510_area-select_btn-tottori {
        background-color: var(--btn-color-tottori) !important;
        border: 1px solid var(--btn-color-tottori) !important;

        /***** ホバー時のスタイル *****/
        &:hover {
          background-color: #fff !important;

          .column2510_area-select_btn-link {
            color: var(--btn-color-tottori) !important;
          }
          
          &::after {
            border-bottom: 2px solid var(--btn-color-tottori) !important;
            border-right: 2px solid var(--btn-color-tottori) !important;
          }
        }
      }

      /* 島根県 */
      .column2510_area-select_btn-shimane {
        background-color: var(--btn-color-shimane) !important;
        border: 1px solid var(--btn-color-shimane) !important;

        /***** ホバー時のスタイル *****/
        &:hover {
          background-color: #fff !important;

          .column2510_area-select_btn-link {
            color: var(--btn-color-shimane) !important;
          }
          
          &::after {
            border-bottom: 2px solid var(--btn-color-shimane) !important;
            border-right: 2px solid var(--btn-color-shimane) !important;
          }
        }
      }

      /* 岡山県 */
      .column2510_area-select_btn-okayama {
        background-color: var(--btn-color-okayama) !important;
        border: 1px solid var(--btn-color-okayama) !important;

        /***** ホバー時のスタイル *****/
        &:hover {
          background-color: #fff !important;

          .column2510_area-select_btn-link {
            color: var(--btn-color-okayama) !important;
          }
          
          &::after {
            border-bottom: 2px solid var(--btn-color-okayama) !important;
            border-right: 2px solid var(--btn-color-okayama) !important;
          }
        }
      }

      /* 広島県 */
      .column2510_area-select_btn-hiroshima {
        background-color: var(--btn-color-hiroshima) !important;
        border: 1px solid var(--btn-color-hiroshima) !important;

        /***** ホバー時のスタイル *****/
        &:hover {
          background-color: #fff !important;

          .column2510_area-select_btn-link {
            color: var(--btn-color-hiroshima) !important;
          }
          
          &::after {
            border-bottom: 2px solid var(--btn-color-hiroshima) !important;
            border-right: 2px solid var(--btn-color-hiroshima) !important;
          }
        }
      }

      /* 山口県 */
      .column2510_area-select_btn-yamaguchi {
        background-color: var(--btn-color-yamaguchi) !important;
        border: 1px solid var(--btn-color-yamaguchi) !important;

        /***** ホバー時のスタイル *****/
        &:hover {
          background-color: #fff !important;

          .column2510_area-select_btn-link {
            color: var(--btn-color-yamaguchi) !important;
          }
          
          &::after {
            border-bottom: 2px solid var(--btn-color-yamaguchi) !important;
            border-right: 2px solid var(--btn-color-yamaguchi) !important;
          }
        }
      }

      /* 徳島県 */
      .column2510_area-select_btn-tokushima {
        background-color: var(--btn-color-tokushima) !important;
        border: 1px solid var(--btn-color-tokushima) !important;

        /***** ホバー時のスタイル *****/
        &:hover {
          background-color: #fff !important;

          .column2510_area-select_btn-link {
            color: var(--btn-color-tokushima) !important;
          }
          
          &::after {
            border-bottom: 2px solid var(--btn-color-tokushima) !important;
            border-right: 2px solid var(--btn-color-tokushima) !important;
          }
        }
      }

      /* 香川県 */
      .column2510_area-select_btn-kagawa {
        background-color: var(--btn-color-kagawa) !important;
        border: 1px solid var(--btn-color-kagawa) !important;

        /***** ホバー時のスタイル *****/
        &:hover {
          background-color: #fff !important;

          .column2510_area-select_btn-link {
            color: var(--btn-color-kagawa) !important;
          }
          
          &::after {
            border-bottom: 2px solid var(--btn-color-kagawa) !important;
            border-right: 2px solid var(--btn-color-kagawa) !important;
          }
        }
      }

      /* 愛媛県 */
      .column2510_area-select_btn-ehime {
        background-color: var(--btn-color-ehime) !important;
        border: 1px solid var(--btn-color-ehime) !important;

        /***** ホバー時のスタイル *****/
        &:hover {
          background-color: #fff !important;

          .column2510_area-select_btn-link {
            color: var(--btn-color-ehime) !important;
          }
          
          &::after {
            border-bottom: 2px solid var(--btn-color-ehime) !important;
            border-right: 2px solid var(--btn-color-ehime) !important;
          }
        }
      }

      /* 高知県 */
      .column2510_area-select_btn-kochi {
        background-color: var(--btn-color-kochi) !important;
        border: 1px solid var(--btn-color-kochi) !important;

        /***** ホバー時のスタイル *****/
        &:hover {
          background-color: #fff !important;

          .column2510_area-select_btn-link {
            color: var(--btn-color-kochi) !important;
          }
          
          &::after {
            border-bottom: 2px solid var(--btn-color-kochi) !important;
            border-right: 2px solid var(--btn-color-kochi) !important;
          }
        }
      }

      /* 福岡県 */
      .column2510_area-select_btn-fukuoka {
        background-color: var(--btn-color-fukuoka) !important;
        border: 1px solid var(--btn-color-fukuoka) !important;

        /***** ホバー時のスタイル *****/
        &:hover {
          background-color: #fff !important;

          .column2510_area-select_btn-link {
            color: var(--btn-color-fukuoka) !important;
          }
          
          &::after {
            border-bottom: 2px solid var(--btn-color-fukuoka) !important;
            border-right: 2px solid var(--btn-color-fukuoka) !important;
          }
        }
      }

      /* 佐賀県 */
      .column2510_area-select_btn-saga {
        background-color: var(--btn-color-saga) !important;
        border: 1px solid var(--btn-color-saga) !important;

        /***** ホバー時のスタイル *****/
        &:hover {
          background-color: #fff !important;

          .column2510_area-select_btn-link {
            color: var(--btn-color-saga) !important;
          }
          
          &::after {
            border-bottom: 2px solid var(--btn-color-saga) !important;
            border-right: 2px solid var(--btn-color-saga) !important;
          }
        }
      }

      /* 長崎県 */
      .column2510_area-select_btn-nagasaki {
        background-color: var(--btn-color-nagasaki) !important;
        border: 1px solid var(--btn-color-nagasaki) !important;

        /***** ホバー時のスタイル *****/
        &:hover {
          background-color: #fff !important;

          .column2510_area-select_btn-link {
            color: var(--btn-color-nagasaki) !important;
          }
          
          &::after {
            border-bottom: 2px solid var(--btn-color-nagasaki) !important;
            border-right: 2px solid var(--btn-color-nagasaki) !important;
          }
        }
      }

      /* 熊本県 */
      .column2510_area-select_btn-kumamoto {
        background-color: var(--btn-color-kumamoto) !important;
        border: 1px solid var(--btn-color-kumamoto) !important;

        /***** ホバー時のスタイル *****/
        &:hover {
          background-color: #fff !important;

          .column2510_area-select_btn-link {
            color: var(--btn-color-kumamoto) !important;
          }
          
          &::after {
            border-bottom: 2px solid var(--btn-color-kumamoto) !important;
            border-right: 2px solid var(--btn-color-kumamoto) !important;
          }
        }
      }

      /* 大分県 */
      .column2510_area-select_btn-oita {
        background-color: var(--btn-color-oita) !important;
        border: 1px solid var(--btn-color-oita) !important;

        /***** ホバー時のスタイル *****/
        &:hover {
          background-color: #fff !important;

          .column2510_area-select_btn-link {
            color: var(--btn-color-oita) !important;
          }
          
          &::after {
            border-bottom: 2px solid var(--btn-color-oita) !important;
            border-right: 2px solid var(--btn-color-oita) !important;
          }
        }
      }

      /* 宮崎県 */
      .column2510_area-select_btn-miyazaki {
        background-color: var(--btn-color-miyazaki) !important;
        border: 1px solid var(--btn-color-miyazaki) !important;

        /***** ホバー時のスタイル *****/
        &:hover {
          background-color: #fff !important;

          .column2510_area-select_btn-link {
            color: var(--btn-color-miyazaki) !important;
          }
          
          &::after {
            border-bottom: 2px solid var(--btn-color-miyazaki) !important;
            border-right: 2px solid var(--btn-color-miyazaki) !important;
          }
        }
      }

      /* 鹿児島県 */
      .column2510_area-select_btn-kagoshima {
        background-color: var(--btn-color-kagoshima) !important;
        border: 1px solid var(--btn-color-kagoshima) !important;

        /***** ホバー時のスタイル *****/
        &:hover {
          background-color: #fff !important;

          .column2510_area-select_btn-link {
            color: var(--btn-color-kagoshima) !important;
          }
          
          &::after {
            border-bottom: 2px solid var(--btn-color-kagoshima) !important;
            border-right: 2px solid var(--btn-color-kagoshima) !important;
          }
        }
      }

      /* 沖縄県 */
      .column2510_area-select_btn-okinawa {
        background-color: var(--btn-color-okinawa) !important;
        border: 1px solid var(--btn-color-okinawa) !important;

        /***** ホバー時のスタイル *****/
        &:hover {
          background-color: #fff !important;

          .column2510_area-select_btn-link {
            color: var(--btn-color-okinawa) !important;
          }
          
          &::after {
            border-bottom: 2px solid var(--btn-color-okinawa) !important;
            border-right: 2px solid var(--btn-color-okinawa) !important;
          }
        }
      }
    }
    @media screen and (max-width: 499px) {
      .column2510_area-select_ul {
        grid-template-columns: repeat(2, 1fr);
      }
    }

    .column2510_area-select_li {
      margin: 0;
      padding: 0;
      border-radius: 8px;
      transition: all 0.3s;
      position: relative;
      display: flex;
      align-items: center;
      justify-content: center;

      &::before {
        content: none;
      }

      &::after {
        content: "";
        display: inline-block;
        width: 10px;
        height: 10px;
        position: absolute;
        top: 50%;
        right: 15px;
        translate: 0 -65%;
        border-bottom: 2px solid #fff;
        border-right: 2px solid #fff;
        rotate: 45deg;
        transition: all 0.3s;
      }
    }

    .column2510_area-select_btn-item {
      width: 100%;
    }

    .column2510_area-select_btn-link {
      display: flex;
      justify-content: center;
      align-items: center;
      font-weight: 700;
      color: #fff;
      text-align: center;
      text-decoration: none;
      padding: 1.2em;
      transition: all 0.3s;
      line-height: 1.4;
    }
  }
  @media screen and (max-width: 768px) {
    #column2510_area-select {
      margin-bottom: 6em;
    }
  }

  /********** セクション-03 **********/
  /* メインコンテンツ */
  .column2510_area_wrap {

    /* 画像の横幅指定 */
    /* .column2510_width650 {
      width: 100%;
      max-width: 650px;
      margin-inline: auto;
    } */

    /* キャプション */
    .column2510_caption_right {
      display: block;
      width: 100%;
      text-align: right;
      color: #808080;
      font-size: 12px;
      line-height: 1.74;
      letter-spacing: .03em;
    }

    .column2510_area_container {
      margin-bottom: 12em;

      /***** エリアタイトルボックスのカラー設定 *****/
      /* 北海道・東北 */
      .column2510_area_hokkaido {
        background-color: var(--btn-color-hokkaido) !important;
      }
      .column2510_area_aomori {
        background-color: var(--btn-color-aomori) !important;
      }
      .column2510_area_iwate {
        background-color: var(--btn-color-iwate) !important;
      }
      .column2510_area_miyagi {
        background-color: var(--btn-color-miyagi) !important;
      }
      .column2510_area_akita {
        background-color: var(--btn-color-akita) !important;
      }
      .column2510_area_yamagata {
        background-color: var(--btn-color-yamagata) !important;
      }
      .column2510_area_fukushima {
        background-color: var(--btn-color-fukushima) !important;
      }

      /* 関東 */
      .column2510_area_ibaraki {
        background-color: var(--btn-color-ibaraki) !important;
      }
      .column2510_area_tochigi {
        background-color: var(--btn-color-tochigi) !important;
      }
      .column2510_area_gunma {
        background-color: var(--btn-color-gunma) !important;
      }
      .column2510_area_saitama {
        background-color: var(--btn-color-saitama) !important;
      }
      .column2510_area_chiba {
        background-color: var(--btn-color-chiba) !important;
      }
      .column2510_area_tokyo {
        background-color: var(--btn-color-tokyo) !important;
      }
      .column2510_area_kanagawa {
        background-color: var(--btn-color-kanagawa) !important;
      }

      /* 中部（甲信越・北陸・東海） */
      .column2510_area_niigata {
        background-color: var(--btn-color-niigata) !important;
      }
      .column2510_area_toyama {
        background-color: var(--btn-color-toyama) !important;
      }
      .column2510_area_ishikawa {
        background-color: var(--btn-color-ishikawa) !important;
      }
      .column2510_area_fukui {
        background-color: var(--btn-color-fukui) !important;
      }
      .column2510_area_yamanashi {
        background-color: var(--btn-color-yamanashi) !important;
      }
      .column2510_area_nagano {
        background-color: var(--btn-color-nagano) !important;
      }
      .column2510_area_gifu {
        background-color: var(--btn-color-gifu) !important;
      }
      .column2510_area_shizuoka {
        background-color: var(--btn-color-shizuoka) !important;
      }
      .column2510_area_aichi {
        background-color: var(--btn-color-aichi) !important;
      }

      /* 近畿 */
      .column2510_area_mie {
        background-color: var(--btn-color-mie) !important;
      }
      .column2510_area_shiga {
        background-color: var(--btn-color-shiga) !important;
      }
      .column2510_area_kyoto {
        background-color: var(--btn-color-kyoto) !important;
      }
      .column2510_area_osaka {
        background-color: var(--btn-color-osaka) !important;
      }
      .column2510_area_hyogo {
        background-color: var(--btn-color-hyogo) !important;
      }
      .column2510_area_nara {
        background-color: var(--btn-color-nara) !important;
      }
      .column2510_area_wakayama {
        background-color: var(--btn-color-wakayama) !important;
      }

      /* 中国 */
      .column2510_area_tottori {
        background-color: var(--btn-color-tottori) !important;
      }
      .column2510_area_shimane {
        background-color: var(--btn-color-shimane) !important;
      }
      .column2510_area_okayama {
        background-color: var(--btn-color-okayama) !important;
      }
      .column2510_area_hiroshima {
        background-color: var(--btn-color-hiroshima) !important;
      }
      .column2510_area_yamaguchi {
        background-color: var(--btn-color-yamaguchi) !important;
      }

      /* 四国 */
      .column2510_area_tokushima {
        background-color: var(--btn-color-tokushima) !important;
      }
      .column2510_area_kagawa {
        background-color: var(--btn-color-kagawa) !important;
      }
      .column2510_area_ehime {
        background-color: var(--btn-color-ehime) !important;
      }
      .column2510_area_kochi {
        background-color: var(--btn-color-kochi) !important;
      }

      /* 九州・沖縄 */
      .column2510_area_fukuoka {
        background-color: var(--btn-color-fukuoka) !important;
      }
      .column2510_area_saga {
        background-color: var(--btn-color-saga) !important;
      }
      .column2510_area_nagasaki {
        background-color: var(--btn-color-nagasaki) !important;
      }
      .column2510_area_kumamoto {
        background-color: var(--btn-color-kumamoto) !important;
      }
      .column2510_area_oita {
        background-color: var(--btn-color-oita) !important;
      }
      .column2510_area_miyazaki {
        background-color: var(--btn-color-miyazaki) !important;
      }
      .column2510_area_kagoshima {
        background-color: var(--btn-color-kagoshima) !important;
      }
      .column2510_area_okinawa {
        background-color: var(--btn-color-okinawa) !important;
      }
    }
    @media screen and (max-width: 768px) {
      .column2510_area_container {
        margin-bottom: 6em;
      }
    }

    .column2510_title_row_grid {
      display: grid;
      grid-template-rows: auto auto;
      row-gap: 0.6em;
      margin-bottom: 3em;
      position: relative;

      &::before,
      &::after {
        content: "";
        width: 100%;
        height: 1px;
        background-color: #ccc;
        position: absolute;
        bottom: 0;
        left: 0;
      }
    }

    .column2510_title_row_icon_flex {
      display: flex;
      flex-wrap: wrap;
      align-items: center;
      column-gap: 12px;
      row-gap: 12px;
    }

    .column2510_title_row_box {
      display: grid;
      place-content: center;
      border-radius: 5px;
      width: calc((100% - 24px) / 3);
      max-width: 102px;
    }

    .column2510_title_row_deco {
      font-size: 1rem;
      line-height: 1;
      letter-spacing: 0.1em;
      font-weight: 700;
      color: #fff;
      padding: 0.6em 0.4em;
    }

    .column2510_title_row_text {
      position: relative;
      margin-top: 0;
      margin-bottom: 0;
      padding-bottom: 0.8em;
      font-size: 2rem;
      line-height: 1.44;
      letter-spacing: .05em;
      font-family: YuGothic, Yu Gothic, -apple-system, BlinkMacSystemFont, Roboto, Meiryo, sans-serif;
      font-weight: 700;

      &::before,
      &::after {
        width: 0;
      }
    }
    @media screen and (max-width: 768px) {
      .column2510_title_row_text {
        margin-bottom: 0;
        padding-bottom: 1em;
        font-size: 1.44rem;
        line-height: 1.44;
        letter-spacing: .05em;
      }
    }

    .column2510_visual_wrap {
      margin-bottom: 4em;
    }
    @media screen and (max-width: 768px) {
      .column2510_visual_wrap {
        margin-bottom: 2em;
      }
    }

    .column2510_visual_box {
      margin-bottom: 1em;
    }

    /* 地域一覧に戻るボタン */
    .column2510_return_area_btn_wrap {
      display: flex;
      justify-content: flex-end;
      align-items: center;

      .column2510_return_area_btn_text {
        display: inline-block;
        color: #000;
        font-size: 1rem;
        font-weight: 700;
        text-align: right;
        text-decoration: none;
        transition: all 0.3s;
        position: relative;

        &::after {
          content: "";
          width: 100%;
          height: 1px;
          background-color: #000;
          position: absolute;
          bottom: 0.1em;
          right: 0;
          transition: all 0.3s;
        }
      }

      .column2510_return_area_btn_arrow {
        position: relative;
        font-size: 1rem;
        padding-right: 1.5em;

        &::after {
          content: "";
          display: inline-block;
          width: 0.6em;
          height: 0.6em;
          position: absolute;
          top: 50%;
          right: 0.2em;
          translate: 0 -25%;
          border-top: 2px solid #000;
          border-left: 2px solid #000;
          rotate: 45deg;
          transition: all 0.3s;
        }
      }

      &:hover {
        .column2510_return_area_btn_text {
          color: #808080;
  
          &::after {
            background-color: #808080;
          }
        }
        
        .column2510_return_area_btn_arrow {
          &::after {
            border-top: 2px solid #808080;
            border-left: 2px solid #808080;
          }
        }
      }
    }
  }

  /********** セクション-04 **********/
  /* トップページへ遷移ボタン */
  .column2510_top-page_btn_wrap {
    margin-top: 12em;
    margin-bottom: 4em;

    .column2510_top-page_btn_box {
      width: 100%;
      max-width: 336px;
      background-color: #000;
      border: 1px solid #000;
      margin-inline: auto;
      position: relative;
      transition: 0.3s;

      &::before {
        content: "";
        display: inline-block;
        width: 10px;
        height: 10px;
        position: absolute;
        top: 50%;
        right: 15px;
        border-top: 1px solid #fff;
        border-right: 1px solid #fff;
        translate: 0 -50%;
        rotate: 45deg;
        transition: 0.3s;
      }

      &:hover {
        background-color: #fff;

        &::before {
          border-top: 1px solid #000;
          border-right: 1px solid #000;
        }

        .column2510_top-page_btn_item {
          color: #000;
        }
      }
    }

    .column2510_top-page_btn_item {
      font-weight: 700;
      text-align: center;
      text-decoration: none;
      color: #fff;
      display: flex;
      align-items: center;
      justify-content: center;
      width: 100%;
      /* min-width: 336px; */
      padding-block: 0.6em;
      transition: 0.3s;
      min-height: 50px;
    }

    .column2510_top-page_btn_item_text {
      line-height: 1.5;
      transition: 0.3s;
    }
  }
  @media screen and (max-width: 768px) {
    .column2510_top-page_btn_wrap {
      margin-top: 6em;

      .column2510_top-page_btn_box {
        max-width: 325px;
      }
    }
  }
}
