@charset "utf-8";

/* ======================================================
 * home.css
 * ------------------------------------------------------
 * @media print, screen and (min-width: 768px)
 * - Override
 * - Page Component
 * - Clearfix
 * PC Media Queries
 * @media only screen and (max-width: 767px)
 * - Page Component
 * - Clearfix
 * SP Media Queries
 * Print
====================================================== */

/* ======================================================
 * PC
====================================================== */
@media print, screen and (min-width: 768px) {
  /* ------------------------------------------------------
   * Override
  ------------------------------------------------------ */
  .container {
    max-width: inherit;
    margin: 0;
    padding: 0;
  }

  /* ------------------------------------------------------
   * Page Component
  ------------------------------------------------------ */
  /* ----- slick-slider ----- */
  .slick-list .slick-slide > div {
    font-size: 0;
  }
  .slick-list .slick-slide > div > * {
    font-size: 1.6rem;
  }
  .slick-arrow {
    overflow: hidden;
    width: 20px;
    height: 18px;
    padding: 0;
    top: 14px;
    background-color: transparent;
    background-repeat: no-repeat;
    background-position: 0 0;
    background-size: 100% 100%;
    border: none;
    text-align: left;
    text-indent: -999em;
    cursor: pointer;
    outline: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    z-index: 5;
  }
  .slick-arrow::before {
    display: none !important;
  }
  .slick-arrow:hover {
    background-size: 100% auto;
  }
  .slick-arrow.slick-prev {
    left: 0 !important;
    background-image: url("/img/home_slider_bt01.png");
    background-size: 100% auto;
  }
  .slick-arrow.slick-next {
    right: 0 !important;
    background-image: url("/img/home_slider_bt02.png");
    background-size: 100% auto;
  }

  /* ----- home-slider-controller ----- */
  .home-slider-controller {
    position: relative;
    margin-top: 20px;
  }
  .home-slider-controller .controller_inner .slick-dots {
  }
  
  /* ----- home-section ----- */
  .home-section {
    max-width: 1200px;
    margin: 0 auto;
  }
  
  /* ----- home-layout ----- */
  .home-layout .home_column {
    display: flex;
    flex-direction: row-reverse;
  }
  .home-layout .home_column > .column_nav {
    display: flex;
    flex-wrap: wrap;
    width: 290px;
    padding: 0 10px 20px;
    background-color: #f3f3f3;
  }
  .home-layout .home_column > .column_nav > .home_nav {
    width: 100%;
  }
  .home-layout .home_column > .column_nav > .home_nav_2 {
    width: 100%;
    margin-top: auto;
  }
  .home-layout .home_column > .column_vidual {
    /*flex: 1;*/
    width: calc(100% - 290px);
  }
  .home-layout .home_button {
    margin: 0 -10px;
    border-top: 3px solid #0096e0;
  }
  .home-layout .home_button > li {
    border-bottom: 1px solid #ddd;
  }
  .home-layout .home_button > li > a {
    position: relative;
    display: flex;
    align-items: center;
    width: 100%;
    height: 110px;
    padding: 0 60px 0 35px;
    background-color: #fff;
    color: #333;
    font-size: 2.0rem;
    line-height: 1.3;
    text-decoration: none;
  }
  .home-layout .home_button > li > a::before {
    content: "";
    position: absolute;
    top: 50%;
    right: 25px;
    width: 19px;
    height: 19px;
    background-image: url("/img/home_nav_ic01.png");
    background-repeat: no-repeat;
    background-position: 0 0;
    transform: translateY(-50%);
  }
  .home-layout .home_button > li > a.type-anchor::before {
    background-image: url("/img/home_nav_ic02.png");
  }
  .home-layout .home_button > li > a > span {
    position: relative;
    display: block;
    padding: 0 0 0 82px;
  }
  .home-layout .home_button > li > a > span::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 0;
    background-repeat: no-repeat;
    background-position: 0 0;
    transform: translateY(-50%);
  }
  .home-layout .home_button > li > a.type-icon1 > span::before {
    width: 70px;
    height: 50px;
    background-image: url("/img/home_nav_ic03.png");
  }
  .home-layout .home_button > li > a.type-icon2 > span::before {
    width: 50px;
    height: 65px;
    background-image: url("/img/home_nav_ic04.png");
  }
  .home-layout .home_button > li > a.type-icon3 > span::before {
    left: -4px;
    width: 66px;
    height: 47px;
    background-image: url("/img/home_nav_ic05.png");
  }
  .home-layout .home_button_2,
  .home-layout .home_button_3 {
    margin: 10px 0 0;
  }
  .home-layout .home_button_3 {
    display: flex;
    justify-content: space-between;
  }
  .home-layout .home_button_3 > li {
    display: flex;
    width: calc((100% - 10px) / 2);
  }
  .home-layout .home_button_2 > li > a,
  .home-layout .home_button_3 > li > a {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 90px;
    box-shadow: 0 1px 1px 0 rgba(0,0,0,0.25);
    background-color: #fff;
    border-radius: 5px;
    color: #333;
    line-height: 1.25;
    text-align: center;
    text-decoration: none;
  }
  .home-layout .home_button_2 > li > a {
    padding: 35px 20px;
    font-size: 1.8rem;
  }
  .home-layout .home_button_2 > li > a > span,
  .home-layout .home_button_3 > li > a > span {
    position: relative;
    display: inline-block;
  }
  .home-layout .home_button_2 > li > a.type-icon1 > span {
    padding-left: 80px  ;
  }
  .home-layout .home_button_3 > li > a > span {
    padding-top: 35px;
  }
  .home-layout .home_button_2 > li > a > span::before,
  .home-layout .home_button_3 > li > a > span::before {
    content: "";
    position: absolute;
    background-repeat: no-repeat;
    background-position: 0 0;
    background-size: 100% auto;
  }
  .home-layout .home_button_2 > li > a > span::before {
    top: 50%;
    left: 0;
    transform: translateY(-50%);
  }
  .home-layout .home_button_2 > li > a.type-icon1 > span::before {
    width: 50px;
    height: 38px;
    background-image: url("/img/home_nav_ic06.png");
  }
  .home-layout .home_button_3 > li > a > span::before {
    top: 0;
    left: 50%;
    transform: translateX(-50%);
  }
  .home-layout .home_button_3 > li > a.type-icon1 > span::before {
    top: 5px;
    width: 103px;
    height: 21px;
    background-image: url("/img/home_nav_ic07.png");
  }
  .home-layout .home_button_3 > li > a.type-icon2 > span::before {
    width: 29px;
    height: 29px;
    background-image: url("/img/home_nav_ic08.png");
  }
  .home-layout .home_button_4 {
    display: flex;
    margin: 15px 0 0;
  }
  .home-layout .home_button_4 > li {
    display: flex;
    width: 50%;
  }
  .home-layout .home_button_4 > li:nth-child(2n) {
    border-right: none;
  }
  .home-layout .home_button_4 > li > a {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 84px;
    padding: 38px 0 8px;
    color: #333;
    font-size: 1.4rem;
    line-height: 1.28;
    text-align: center;
    text-decoration: none;
  }
  .home-layout .home_button_4 > li > a.type-anchor::before {
    content: "";
    position: absolute;
    top: 100%;
    left: 50%;
    width: 14px;
    height: 15px;
    margin-top: -19px;
    background-image: url("/img/home_nav_ic09.png");
    background-repeat: no-repeat;
    background-position: 0 0;
    background-size: 100% 100%;
    transform: translateX(-50%);
  }
  .home-layout .home_button_4 > li > a > span {
    position: relative;
    display: inline-block;
  }
  .home-layout .home_button_4 > li > a > span::before {
    content: "";
    position: absolute;
    bottom: 100%;
    left: 50%;
    margin-bottom: 4px;
    background-repeat: no-repeat;
    background-position: 0 0;
    background-size: 100% 100%;
    transform: translateX(-50%);
  }
  .home-layout .home_button_4 > li > a.type-icon1 {
    box-shadow: 0 1px 1px 0 rgba(0,0,0,0.25);
    background-color: #fff;
    border-radius: 5px;
    height: 95px;
    width: calc((100% - 5px));
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 29px 0 14px;
    color: #333;
    font-size: 1.4rem;
    line-height: 1.28;
    text-align: center;
    text-decoration: none;
    border: 3px solid #ffa800;
  }
  .home-layout .home_button_4 > li > a.type-icon1 > span::before {
    width: 34px;
    height: 25px;
    background-image: url("/img/home_nav_ic10.png");
  }
  .home-layout .home_button_4 > li > a.type-icon1.update {
    border: 3px solid #ffa800;
  }
  .home-layout .home_button_4 > li > a.type-icon1.update > span::before {
    width: 34px;
    height: 25px;
    background-image: url("/img/home_nav_ic10_update.gif");
  }
  .home-layout .home_button_4 > li > a.type-icon2 > span::before {
    width: 32px;
    height: 32px;
    background-image: url("/img/home_nav_ic11.png");
  }
  .home-layout .home_slider .slider_screen {
    overflow: hidden;
    height: 0;
  }
  .home-layout .slick-dotted.slick-slider {
    margin-bottom: 0;
  }
  .home-layout .home_slider .slider_screen.slick-initialized {
    overflow: visible;
    height: auto;
  }
  .home-layout .home_slider .slider_screen .slider_panel.movie {
    position: relative;
    width: 100%;
    padding-top: 48.25%;
  }
  .home-layout .home_slider .slider_screen .slider_panel.movie iframe {
    position: absolute;
    top: 0;
    right: 0;
    width: 100% !important;
    height: 100% !important;
  }
  .home-layout .home_slider .slick-dots {
    position: absolute;
    bottom: 20px;
    width: 100%;
  }

  /* ----- home-layout-v2 ----- */
  .home-layout-v2 {
    margin: 60px 0 0;
  }
  .home-layout-v2 .home_tab .tab_nav {
    border-bottom: 2px solid #ddd;
  }
  .home-layout-v2 .home_tab .tab_link {
    display: flex;
  }
  .home-layout-v2 .home_tab .tab_link > li {
    display: flex;
    width: 25%;
  }
  .home-layout-v2 .home_tab .tab_link > li > a {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    padding: 20px 0 25px;
    color: #333;
    font-size: 2.0rem;
    font-weight: 700;
    line-height: 1.1;
    text-align: center;
    text-decoration: none;
  }
  .home-layout-v2 .home_tab .tab_link > li > a::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 2px;
    background-color: transparent;
    opacity: 0;
    transition: all .2s ease-out 0s;
  }
  .home-layout-v2 .home_tab .tab_link > li > a > span {
    position: relative;
    display: inline-block;
    padding: 0 0 15px;
    border-bottom-width: 2px;
    border-bottom-style: solid;
  }
  .home-layout-v2 .home_tab .tab_link > li > a > span::before,
  .home-layout-v2 .home_tab .tab_link > li > a > span::after {
    content: "";
    position: absolute;
    left: 50%;
    border-radius: 50%;
    transform: translateX(-50%);
  }
  .home-layout-v2 .home_tab .tab_link > li > a > span::before {
    bottom: -6px;
    width: 10px;
    height: 10px;
  }
  .home-layout-v2 .home_tab .tab_link > li > a > span::after {
    bottom: -4px;
    width: 6px;
    height: 6px;
    background-color: #fff;
  }
  .home-layout-v2 .home_tab .tab_link > li.is-active {
    background-color: #fff;
    border-right: 1px solid #ddd;
    border-left: 1px solid #ddd;
  }
  .home-layout-v2 .home_tab .tab_link > li.is-active > a::before {
    opacity: 1;
  }
  .home-layout-v2 .home_tab .tab_link > li.is-active > a::after {
    content: "";
    position: absolute;
    bottom: -2px;
    left: 0;
    width: 100%;
    height: 2px;
    background-color: #fff;
  }
  .home-layout-v2 .home_tab .tab_link > li.is-active > a > span {
    padding-bottom: 0;
    border-bottom: none;
  }
  .home-layout-v2 .home_tab .tab_link > li.is-active > a > span::before,
  .home-layout-v2 .home_tab .tab_link > li.is-active > a > span::after {
    display: none;
  }
  .home-layout-v2 .home_tab .tab_link > li > a.type-all > span {
    border-bottom-color: #0096e0;
  }
  .home-layout-v2 .home_tab .tab_link > li > a.type-all > span::before,
  .home-layout-v2 .home_tab .tab_link > li.is-active > a.type-all::before {
    background-color: #0096e0;
  }
  .home-layout-v2 .home_tab .tab_link > li > a.type-event > span {
    border-bottom-color: #f28282;
  }
  .home-layout-v2 .home_tab .tab_link > li > a.type-event > span::before,
  .home-layout-v2 .home_tab .tab_link > li.is-active > a.type-event::before {
    background-color: #f28282;
  }
  .home-layout-v2 .home_tab .tab_link > li > a.type-go > span {
    border-bottom-color: #ffa800;
  }
  .home-layout-v2 .home_tab .tab_link > li > a.type-go > span::before,
  .home-layout-v2 .home_tab .tab_link > li.is-active > a.type-go::before {
    background-color: #ffa800;
  }
  .home-layout-v2 .home_tab .tab_link > li > a.type-life > span {
    border-bottom-color: #96a7d9;
  }
  .home-layout-v2 .home_tab .tab_link > li > a.type-life > span::before,
  .home-layout-v2 .home_tab .tab_link > li.is-active > a.type-life::before {
    background-color: #96a7d9;
  }
  .home-layout-v2 .home_tab .tab_content {
    margin: 0 0 0 0;
    padding: 20px 0 35px;
    background-color: #fff;
    border-bottom: 1px solid #ddd;
  }
  .home-layout-v2 .home_tab .tab_panel > *:first-child {
    margin-top: 0;
  }
  .home-layout-v2 .home_column {
    display: flex;
    flex-wrap: wrap;
  }
  .home-layout-v2 .home_column > .column_col {
    display: flex;
    width: calc((100% - 6px * 5) / 6 - 0.1px);
    margin: 35px 0 0 6px;
  }
  .home-layout-v2 .home_column > .column_col:nth-child(-n+6) {
    margin-top: 0;
  }
  .home-layout-v2 .home_column > .column_col:nth-child(6n+1) {
    margin-left: 0;
  }
  .home-layout-v2 .home_column > .column_col > .col_frame {
    display: flex;
    width: 100%;
  }
  .home-layout-v2 .home_column > .column_col > a.col_frame {
    color: #333;
    text-decoration: none;
  }
  .home-layout-v2 .home_column > .column_col > .col_frame > .col_inner {
    width: 100%;
  }
  .home-layout-v2 .home_column > .column_col .col_image {
    max-width: 245px;
    margin: 0 auto;
    text-align: center;
  }
  .home-layout-v2 .home_column > .column_col .col_title {
    margin: 15px 0 0;
    padding: 0 20px;
    font-size: 1.8rem;
    font-weight: 700;
    line-height: 1.33;
  }

  /* ----- home-layout-v3 ----- */
  .home-layout-v3 {
    margin: 80px 0 0;
  }
  .home-layout-v3 .home_tab {
    padding: 0 0 80px;
    border-bottom: 1px solid #ddd;
  }
  .home-layout-v3 .home_tab .tab_nav {
    display: none;
  }
  .home-layout-v3 .home_tab .tab_content {
    display: flex;
  }
  .home-layout-v3 .home_tab .tab_content > .tab_panel {
    width: calc((100% - 8px * 3) / 4);
  }
  .home-layout-v3 .home_tab .tab_content > .tab_panel + .tab_panel {
    margin-left: 8px;
  }
  .home-layout-v3 .home_heading {
    font-size: 3.2rem;
    line-height: 1.1;
    text-align: center;
  }
  .home-layout-v3 .home_heading .heading_title {
    position: relative;
    display: inline-block;
    min-width: 180px;
    padding: 0 0 15px;
    border-bottom: 2px solid #119de2;
  }
  .home-layout-v3 .home_heading .heading_title::before,
  .home-layout-v3 .home_heading .heading_title::after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 50%;
    border-radius: 50%;
    transform: translateX(-50%);
  }
  .home-layout-v3 .home_heading .heading_title::before {
    width: 10px;
    height: 10px;
    margin-bottom: -6px;
    background-color: #119de2;
  }
  .home-layout-v3 .home_heading .heading_title::after {
    width: 6px;
    height: 6px;
    margin-bottom: -4px;
    background-color: #fff;
  }
  .home-layout-v3 .home_column {
    margin: 25px 0 0;
  }
  .home-layout-v3 .home_column .column_col .col_frame {
    display: block;
  }
  .home-layout-v3 .home_column .column_col a.col_frame {
    color: #333;
    text-decoration: none;
  }
  .home-layout-v3 .home_column .column_col .col_image {
    text-align: center;
  }
  .home-layout-v3 .home_column .column_col .col_title {
    padding: 20px 15px;
    background-color: #f9f9f9;
    font-size: 1.8rem;
    font-weight: 700;
    line-height: 1.2;
    text-align: center;
  }
  .home-layout-v3 .home_slider .home_column {
    overflow: hidden;
    height: 0;
  }
  .home-layout-v3 .home_slider .home_column.slick-initialized {
    position: relative;
    overflow: visible;
    height: auto;
  }
  .reccomend-area-slider .col_image img {
    width: 100%;
    height: auto;
  }
  
  /* ----- home-layout-v4 ----- */
  .home-layout-v4 {
    margin: 60px 0 0;
    padding: 0 120px;
  }
  .home-layout-v4 .home_heading {
    font-size: 3.2rem;
    font-weight: 700;
    line-height: 1.1;
    text-align: center;
  }
  .home-layout-v4 .home_tab {
    margin: 40px 0 0;
  }
  .home-layout-v4 .home_tab .tab_nav {
    display: none;
  }
  .home-layout-v4 .home_tab .tab_content {
    display: flex;
  }
  .home-layout-v4 .home_tab .tab_content > .tab_panel {
    display: flex;
    flex-wrap: wrap;
    flex-flow: column;
    width: calc((100% - 120px * 2) / 3);
    margin: 0 0 0 120px;
  }
  .home-layout-v4 .home_tab .tab_content > .tab_panel:first-child {
    display: none;
  }
  .home-layout-v4 .home_tab .tab_content > .tab_panel:nth-child(3n+2) {
    margin-left: 0;
  }
  .home-layout-v4 .home_tab .tab_content > .tab_panel .link-button.gp-al-center > li > a {
    min-width: 100%;
  }
  .home-layout-v4 .home_tab .tab_content > .tab_panel > *:first-child {
    margin-top: 0;
  }
  .home-layout-v4 .home_tab .tab_content > .tab_panel .heading-lv3 {
    margin-bottom: 0;
  }
  .home-layout-v4 .home_news .news_article {
    margin-top: 1em;
  }
  .home-layout-v4 .home_news > .news_article:last-child {
    margin-bottom: 1.2em;
  }
  .home-layout-v4 .home_news .news_article + .news_article {
    margin: 1.2em 0;
  }
  .home-layout-v4 .home_news .important_news_article {
    width: 49%;
  }
  .home-layout-v4 .home_news .block {
    display: block;
  }
  .home-layout-v4 .home_news a.block {
    text-decoration: none;
  }
  .home-layout-v4 .home_news a.block::after {
    display: none;
  }
  .home-layout-v4 .home_news .news_date {
    color: #555;
    font-size: 1.4rem;
  }
  .home-layout-v4 .home_news .news_icon {
    display: none;
  }
  .home-layout-v4 .home_news .news_title {
    line-height: 1.5;
  }
  .home-layout-v4 .home_news a.a-blank .news_title::after,
  .home-layout-v4 .home_news a.a-pdf .news_title::after {
    content: "";
    display: inline-block;
    margin: 0 0 0 12px;
    vertical-align: middle;
  }
  .home-layout-v4 .home_news a.a-blank .news_title::after {
    width: 16px;
    height: 19px;
    background: url(/common/img/com_ic10.png) no-repeat 0 0;  
  }
  .home-layout-v4 .home_news a.a-pdf .news_title::after {
    width: 15px;
    height: 19px;
    background: url(/common/img/com_ic11.png) no-repeat 0 0;
  }
  .home-layout-v4 .home_news a.news_block:hover .news_title {
    text-decoration: underline;
  }
  .home-layout-v4 .home_text {
    margin: 1.5em 0 1.5em;
    text-align: center;
  }
  .home-layout-v4 [class*="link-button"].gp-al-center {
    margin-top: auto;
    width: 100%;
  }
  .home-layout-v4 .important_home_news {
    justify-content: space-between;
    justify-content: -webkit-space-between;
  }
  
  /* ----- home-layout-v5 ----- */
  .home-layout-v5 {
    margin: 80px 0 0;
    padding: 60px;
    background-color: #ddf3ff;
  }
  .home-layout-v5 .home_heading {
    margin: 0 0 30px;
    font-size: 3.2rem;
    font-weight: 700;
    line-height: 1.1;
    text-align: center;
  }
  .home-layout-v5 .home_heading > span {
    position: relative;
    display: inline-block;
    padding: 0 0 0 85px;
  }
  .home-layout-v5 .home_heading > span::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 0;
    width: 69px;
    height: 50px;
    background-image: url("/img/home_guide_ic01.png");
    background-repeat: no-repeat;
    background-position: 0 0;
    background-size: 100% 100%;
    transform: translateY(-50%);
  }
  
  /* ----- home-layout-v6 ----- */
  .home-layout-v6 {
    padding: 80px 0;
  }
  .home-layout-v6 > *:first-child {
    margin-top: 0;
  }
  .home-layout-v6 .home_link {
    overflow: hidden;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    margin-top: -15px !important;
  }
  .home-layout-v6 .home_link > li {
    margin: 15px 30px 0;
  }
  .home-layout-v6 .home_link > li > a {
    display: flex;
    align-items: center;
    color: #333;
    text-decoration: none;
  }
  .home-layout-v6 .home_link > li > a > .link_icon {
    margin: 0 10px 0 0;
  }
  .home-layout-v6 .home_link > li > a > .link_icon img {
    width: 34px;
  }
  
  /* ----- home-layout-v7 ----- */
  .home-layout-v7 {
    min-height: 450px;
    padding: 60px 0 0;
    background-color: #0096e0;
    background-image: url("/img/home_group_bg01_pc.jpg");
    background-repeat: no-repeat;
    background-position: 50% 100%;
    background-size: 100% auto;
  }
  .home-layout-v7 .home_heading {
    color: #fff;
    font-size: 3.2rem;
    font-weight: 700;
    line-height: 1.1;
    text-align: center;
  }
  .home-layout-v7 .home_link {
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 50px 0 0;
  }
  .home-layout-v7 .home_link > li {
    position: relative;
    margin: 0 30px;
    padding: 0 0 0 30px;
  }
  .home-layout-v7 .home_link > li::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 0;
    width: 20px;
    height: 18px;
    background-image: url("/img/home_link_ic01.png");
    background-repeat: no-repeat;
    background-position: 0 0;
    background-size: 100% 100%;
    transform: translateY(-50%);
  }
  .home-layout-v7 .home_link > li > a {
    color: #fff;
    font-size: 2.0rem;
    line-height: 1.1;
    text-decoration: none;
  }
  .home-layout-v7 .home_frame {
    margin: 45px 0 0;
    padding: 20px 30px;
    background-color: #fff;
    border-radius: 8px;
  }
  .home-layout-v7 .home_frame > *:first-child {
    margin-top: 0;
  }
  .home-layout-v7 .home_button {
    display: flex;
    align-items: center;
  }
  .home-layout-v7 .home_button > li {
    display: flex;
    width: 25%;
  }
  .home-layout-v7 .home_button > li > a {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    color: #333;
    line-height: 1.5;
    text-decoration: none;
  }
  .home-layout-v7 .home_button > li > a > span {
    position: relative;
    width: 100%;
    padding: 0 0 0 60px;
  }
  .home-layout-v7 .home_button > li > a > span::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 0;
    width: 50px;
    height: 50px;
    background-repeat: no-repeat;
    background-position: 0 0;
    transform: translateY(-50%);
  }
  .home-layout-v7 .home_button > li > a.type-icon1 > span::before {
    background-image: url("/img/home_group_ic01.png");
  }
  .home-layout-v7 .home_button > li > a.type-icon2 > span::before {
    background-image: url("/img/home_group_ic02.png");
  }
  .home-layout-v7 .home_button > li > a.type-icon3 > span::before {
    background-image: url("/img/home_group_ic03.png");
  }
  .home-layout-v7 .home_button > li > a.type-icon4 > span::before {
    background-image: url("/img/home_group_ic04.png");
  }
  .home-layout-v7 .home_button > li > a.type-icon5 > span::before {
    background-image: url("/img/home_group_ic05.png");
  }
  
  /* ----- home-layout-v8 ----- */
  .home-layout-v8 {
    padding: 60px 0;
    background-color: #f9f9f9;
  }
  .home-layout-v8 .home_banner {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
  }
  .home-layout-v8 .home_banner > li {
    width: calc((100% - 20px * 3) / 4);
    margin: 20px 0 0 20px;
    text-align: center;
  }
  .home-layout-v8 .home_banner > li:nth-child(-n+4) {
    margin-top: 0;
  }
  .home-layout-v8 .home_banner > li:nth-child(4n+1) {
    margin-left: 0;
  }
  .home-layout-v8 .home_banner > li > a > img {
    display: block;
    border: 1px solid #ddd;
  }
  
  /* ----- emergency-layout ----- */
  .emergency-layout {
    margin: 0 7%;
    padding: 4.5% 0;
  }
  .emergency-layout .heading-emergency {
    margin-top: 60px;
  }
  .emergency-layout .heading-emergency .heading_emergency_title {
    font-size: 2.0rem;
    line-height: 1.5;
  }
  .emergency-layout .f-emergency {
    font-size: 2.4rem;
    line-height: 1.5;
  }
  .emergency-layout .f-emergency + .f-emergency {
    margin-top: 0.7em;
  }
  
  /* ----- home-important-layout ----- */
  .home-important-layout {
    padding: 0 120px;
  }
  .home-important-layout .home_frame {
    margin: 60px 0;
    padding: 20px;
    background-color: #fdeded;
  }
  .home-important-layout .home_frame > *:first-child {
    margin-top: 0;
  }
  .home-important-layout .home_frame > .frame_title {
    margin: 0 0 20px;
    padding: 0 30px;
    color: #d20023;
    font-size: 1.8rem;
    font-weight: 700;
    line-height: 1.1;
  }
  .home-important-layout .home_frame .fram_inner {
    padding: 25px 30px;
    background-color: #fff;
    border-radius: 5px;
  }
  .home-important-layout .home_frame .fram_inner > *:first-child {
    margin-top: 0;
  }
  .home-important-layout .home_frame .fram_inner .home_news .news_article {
    margin-top: 1em;
  }
  
  /* ----- emergency-wrap ----- */
  .emergency-wrap {
    margin: 40px 40px 0;
  }
  .emergency-wrap .f-emergency-v2 {
    font-size: 1.8rem;
  }
  .emergency-wrap .f-emergency-v2 + .f-emergency-v2 {
    margin-top: 1em;
  }
  
  /* ------------------------------------------------------
   * Clearfix
  ------------------------------------------------------ */
  .clearfix::after {
    display: block;
    clear: both;
    content: "";
  }
}

/* ======================================================
 * PC Media Queries
====================================================== */
@media screen and (min-width: 1921px) {
}
@media screen and (min-width: 768px) and (max-width: 1920px) {
}
@media screen and (min-width: 768px) and (max-width: 1830px) {
  /* home-layout */
  .home-layout .home_button > li > a {
    height: 90px;
  }
  .home-layout .home_button_2 > li > a {
    height: 70px;
  }
}
@media screen and (min-width: 768px) and (max-width: 1660px) {
  /* home-layout */
  .home-layout .home_column > .column_nav {
    padding: 0 10px 10px;
  }
  .home-layout .home_button > li > a {
    height: 80px;
  }
  .home-layout .home_button_2 > li > a {
    height: 55px;
    padding: 15px 20px;
  }
  .home-layout .home_button_3 > li > a {
    height: 80px;
  }
}
@media screen and (min-width: 768px) and (max-width: 1530px) {
  /* home-layout */
  .home-layout .home_button > li > a {
    height: 70px;
    font-size: 1.8rem;
  }
  .home-layout .home_button > li > a.type-icon1 > span::before {
    width: 57px;
    height: 40px;
    background-size: auto 40px;
  }
  .home-layout .home_button > li > a.type-icon2 > span::before {
    width: 36px;
    height: 45px;
    background-size: auto 45px;
  }
  .home-layout .home_button > li > a.type-icon3 > span::before {
    width: 50px;
    height: 35px;
    background-size: auto 35px;
  }
  .home-layout .home_button_2 > li > a {
    height: 55px;
    padding: 15px 20px;
  }
  .home-layout .home_button_2 > li > a.type-icon1 > span::before {
    width: 40px;
    height: 30px;
    background-size: auto 30px;
  }
  .home-layout .home_button_3 > li > a {
    height: 70px;
    font-size: 1.4rem;
  }
  .home-layout .home_button_3 > li > a > span {
    padding-top: 25px;
  }
  .home-layout .home_button_3 > li > a.type-icon1 > span::before {
    width: 85px;
    height: 17px;
    background-size: auto 17px;
  }
  .home-layout .home_button_3 > li > a.type-icon2 > span::before {
    top: 3px;
    width: 20px;
    height: 20px;
    background-size: auto 20px;
  }
  .home-layout .home_button_4 > li > a {
    height: 64px;
    padding: 24px 0 8px;
    font-size: 1.2rem;
  }
  .home-layout .home_button_4 > li > a.type-icon1 > span::before {
    width: 33px;
    height: 23px;
    margin-bottom: 2px;
    background-size: auto 23px;
  }


  .home-layout .home_button_4 > li > a.type-icon2 > span::before {
    width: 23px;
    height: 23px;
    margin-bottom: 2px;
    background-size: auto 23px;
  }
}
@media screen and (min-width: 768px) and (max-width: 1405px) {
  /* home-layout */
  .home-layout .home_button > li > a {
    height: 55px;
    font-size: 1.5rem;
  }
  .home-layout .home_button > li > a.type-icon1 > span::before {
    width: 43px;
    height: 30px;
    background-size: auto 30px;
  }
  .home-layout .home_button > li > a.type-icon2 > span::before {
    width: 28px;
    height: 35px;
    background-size: auto 35px;
  }
  .home-layout .home_button > li > a.type-icon3 > span::before {
    width: 36px;
    height: 25px;
    background-size: auto 25px;
  }
  .home-layout .home_button_2 > li > a {
    height: 45px;
    padding: 5px 20px;
    font-size: 1.5rem;
  }
  .home-layout .home_button_2 > li > a.type-icon1 > span::before {
    width: 33px;
    height: 25px;
    background-size: auto 25px;
  }
  .home-layout .home_button_3 > li > a {
    height: 65px;
    font-size: 1.3rem;
  }
  .home-layout .home_button_3 > li > a > span {
    padding-top: 25px;
  }
  .home-layout .home_button_3 > li > a.type-icon1 > span::before {
    width: 85px;
    height: 17px;
    background-size: auto 17px;
  }
  .home-layout .home_button_3 > li > a.type-icon2 > span::before {
    top: 3px;
    width: 20px;
    height: 20px;
    background-size: auto 20px;
  }
  .home-layout .home_button_4 > li > a {
    height: 64px;
    padding: 24px 0 8px;
    font-size: 1.2rem;
  }
  .home-layout .home_button_4 > li > a.type-icon1 > span::before {
    width: 33px;
    height: 23px;
    margin-bottom: 2px;
    background-size: auto 23px;
  }
  .home-layout .home_button_4 > li > a.type-icon2 > span::before {
    width: 23px;
    height: 23px;
    margin-bottom: 2px;
    background-size: auto 23px;
  }
}
@media screen and (min-width: 768px) and (max-width: 1366px) {
}
@media screen and (min-width: 768px) and (max-width: 1280px) {
  /* home-layout */
  .home-layout .home_button > li > a {
    height: 40px;
    font-size: 1.3rem;
  }
  .home-layout .home_button > li > a > span .sp-hidden {
    display: none;
  }
  .home-layout .home_button_2 > li > a {
    height: 35px;
    font-size: 1.3rem;
  }
  .home-layout .home_button_3 > li > a {
    height: 55px;
    font-size: 1.1rem;
  }
  .home-layout .home_button_3 > li > a > span {
    padding-top: 25px;
  }
  .home-layout .home_button_3 > li > a.type-icon1 > span::before {
    width: 85px;
    height: 17px;
    background-size: auto 17px;
  }
  .home-layout .home_button_3 > li > a.type-icon2 > span::before {
    top: 3px;
    width: 20px;
    height: 20px;
    background-size: auto 20px;
  }
  .home-layout .home_button_4 > li > a {
    height: 54px;
    padding: 24px 0 18px;
    font-size: 1.1rem;
  }
  .home-layout .home_button_4 > li > a.type-icon1 > span::before {
    width: 25px;
    height: 18px;
    margin-bottom: 2px;
    background-size: auto 18px;
  }
  .home-layout .home_button_4 > li > a.type-icon2 > span::before {
    width: 19px;
    height: 18px;
    margin-bottom: 2px;
    background-size: auto 18px;
  }
}
@media screen and (min-width: 768px) and (max-width: 1125px) {
  /* home-layout */
  .home-layout .home_column {
    display: block;
  }
  .home-layout .home_column > .column_nav {
    width: auto;
  }
  .home-layout .home_column > .column_vidual {
    width: 100%;
  }
}
@media screen and (min-width: 768px) and (max-width: 1200px) {
}
@media screen and (min-width: 768px) and (max-width: 1190px) {
}
@media screen and (min-width: 768px) and (max-width: 1080px) {
}
@media screen and (min-width: 768px) and (max-width: 1024px) {
}
@media screen and (min-width: 768px) and (max-width: 960px) {
}
@media screen and (min-width: 768px) and (max-width: 896px) {
}
@media screen and (min-width: 768px) and (max-width: 834px) {
}
@media screen and (min-width: 768px) and (max-width: 812px) {
}

/* ======================================================
 * SP
====================================================== */
@media only screen and (max-width: 767px) {
  /* ------------------------------------------------------
   * Page Component
  ------------------------------------------------------ */
  /* ----- slick-slider ----- */
  .slick-list .slick-slide > div {
    font-size: 0;
  }
  .slick-list .slick-slide > div > * {
    font-size: 1.4rem;
  }
  .slick-arrow {
    overflow: hidden;
    width: 16px;
    height: 15px;
    padding: 0;
    background-color: transparent;
    background-repeat: no-repeat;
    background-position: 0 0;
    background-size: 100% 100%;
    border: none;
    text-align: left;
    text-indent: -9999em;
    cursor: pointer;
    outline: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    z-index: 10;
  }
  .slick-arrow::before {
    display: none !important;
  }
  .slick-arrow:hover {
    background-size: 100% auto;
  }
  .slick-arrow.slick-prev {
    left: 0 !important;
    background-image: url("/img/home_slider_bt01.png");
  }
  .slick-arrow.slick-next {
    right: 0 !important;
    background-image: url("/img/home_slider_bt02.png");
  }

  /* ----- home-slider-controller ----- */
  .home-slider-controller {
    position: relative;
    margin: 25px 0 0;
  }
  .controller_outer {
    min-height: 20px;
  }
  .slick-dots {
    bottom: 0;
  }

  /* ----- home-layout ----- */
  .home-layout .home_nav {
    display: flex;
    margin: 0 -15px;
    padding: 10px 0;
    background-color: #fff;
    border: 1px solid #ddd;
    border-right: none;
    border-left: none;
  }
  .home-layout .home_nav > * {
    display: flex;
  }
  .home-layout .home_nav > * > li {
    position: relative;
    display: flex;
  }
  .home-layout .home_nav > * > li > a {
    position: relative;
    display: flex;
    justify-content: center;
    width: 100%;
    padding: 0 1px 8px;
    color: #333;
    font-size: 1.1rem;
    line-height: 1;
    text-align: center;
    text-decoration: none;
  }
  .home-layout .home_nav > * > li > a.type-anchor::before {
    content: "";
    position: absolute;
    top: 100%;
    left: 50%;
    margin-top: -5px;
    width: 9px;
    height: 9px;
    background-image: url("/img/home_nav_ic02.png");
    background-repeat: no-repeat;
    background-position: 50% 50%;
    background-size: 100% auto;
    transform: translateX(-50%);
  }
  .home-layout .home_nav > * > li > a > span {
    position: relative;
    display: inline-block;
    padding: 34px 0 0;
  }
  .home-layout .home_nav > * > li > a > span::before {
    content: "";
    position: absolute;
    left: 50%;
    background-repeat: no-repeat;
    background-position: 50% 50%;
    background-size: 100% auto;
    transform: translateX(-50%);
  }
  .home-layout .home_nav > .home_button {
    width: 75%;
  }
  .home-layout .home_nav > .home_button_2 {
    width: 25%;
  }
  .home-layout .home_nav > .home_button > li {
    width: calc(100% / 3);
  }
  .home-layout .home_nav > .home_button_2 > li {
    width: 100%;
  }
  .home-layout .home_nav > .home_button > li + li,
  .home-layout .home_nav > .home_button_2 {
    border-left: 1px solid #ddd;
  }
  .home-layout .home_nav > .home_button > li > a.type-icon1 > span::before {
    top: 3px;
    width: 35px;
    height: 25px;
    background-image: url("/img/home_nav_ic03.png");
  }
  .home-layout .home_nav > .home_button > li > a.type-icon2 > span::before {
    top: -1px;
    width: 22px;
    height: 29px;
    background-image: url("/img/home_nav_ic04.png");
  }
  .home-layout .home_nav > .home_button > li > a.type-icon3 > span::before {
    top: 3px;
    width: 33px;
    height: 24px;
    background-image: url("/img/home_nav_ic05.png");
  }
  .home-layout .home_nav > .home_button_2 > li > a.type-icon1 > span::before {
    top: 1px;
    width: 32px;
    height: 30px;
    background-image: url("/img/home_nav_ic06.png");
  }
  .home-layout .home_nav_2 {
    padding: 15px 0 10px;
  }
  .home-layout .home_nav_2 > *:first-child {
    margin-top: 0;
  }
  .home-layout .home_button_3 {
    display: flex;
    justify-content: space-between;
  }
  .home-layout .home_button_3 > li {
    display: flex;
    width: calc((100% - 10px) / 2);
  }
  .home-layout .home_button_3 > li > a {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    padding: 10px 5px;
    box-shadow: 0 1px 1px 0 rgba(0,0,0,0.25);
    background-color: #fff;
    border: 1px solid #ddd;
    border-radius: 5px;
    color: #333;
    line-height: 1.1;
    text-align: center;
    text-decoration: none;
  }
  .home-layout .home_button_3 > li > a > span {
    position: relative;
    display: inline-block;
    padding: 30px 0 0;
  }
  .home-layout .home_button_3 > li > a > span::before {
    content: "";
    position: absolute;
    left: 50%;
    background-repeat: no-repeat;
    background-position: 0 0;
    background-size: 100% auto;
    transform: translateX(-50%);
  }
  .home-layout .home_button_3 > li > a.type-icon1 > span::before {
    top: 1px;
    width: 101px;
    height: 20px;
    background-image: url("/img/home_nav_ic07.png");
  }
  .home-layout .home_button_3 > li > a.type-icon2 > span::before {
    top: 0;
    width: 23px;
    height: 23px;
    background-image: url("/img/home_nav_ic08.png");
  }
  .home-layout .home_button_4 {
    display: flex;
    margin: 10px 0 0;
  }
  .home-layout .home_button_4 > li {
    display: flex;
    width: 50%;
  }
  .home-layout .home_button_4 > li:nth-child(2n) {
    border-right: none;
  }
  .home-layout .home_button_4 > li > a {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    padding: 5px 5px 5px 0;
    color: #333;
    font-size: 1.3rem;
    line-height: 1.38;
    text-decoration: none;
  }
  .home-layout .home_button_4 > li > a.type-anchor::before {
    content: "";
    position: absolute;
    top: 50%;
    right: 10px;
    width: 9px;
    height: 9px;
    background-image: url("/img/home_nav_ic09.png");
    background-repeat: no-repeat;
    background-position: 0 0;
    background-size: 100% 100%;
    transform: translateY(-50%);
  }
  .home-layout .home_button_4 > li > a > span {
    position: relative;
    display: block;
    width: 100%;
  }
  .home-layout .home_button_4 > li > a > span::before {
    content: "";
    position: absolute;
    top: 50%;
    margin-bottom: 5px;
    background-repeat: no-repeat;
    background-position: 0 0;
    background-size: 100% 100%;
    transform: translateY(-50%);
  }
  .home-layout .home_button_4 > li > a.type-icon1 {
    box-shadow: 0 1px 1px 0 rgba(0,0,0,0.25);
    background-color: #fff;
    border: 1px solid #ddd;
    border-radius: 5px;
    width: calc((100% - 5px));
  }
  .home-layout .home_button_4 > li > a.type-icon1 > span {
    text-align: center;
    padding-top: 26px;
  }
  .home-layout .home_button_4 > li > a.type-icon1 > span::before {
    top: 4px;
    left: 50%;
    transform: translatex(-50%);
    width: 30px;
    height: 23px;
    background-image: url("/img/home_nav_ic10.png");
  }
  .home-layout .home_button_4 > li > a.type-icon1.update {
    border: 3px solid #ffa800;
  }
  .home-layout .home_button_4 > li > a.type-icon1.update > span::before {
    width: 30px;
    height: 23px;
    background-image: url("/img/home_nav_ic10_update.gif");
  }
  .home-layout .home_button_4 > li > a.type-icon2 > span {
    padding-left: 45px;
  }
  .home-layout .home_button_4 > li > a.type-icon2 > span::before {
    left: 15px;
    width: 24px;
    height: 24px;
    background-image: url("/img/home_nav_ic11.png");
  }
  .home-layout .home_button_4 > li > a.new_news {
  }
  .home-layout .home_slider {
    margin: 0 -15px;
  }
  .home-layout .home_slider .slider_screen {
    overflow: hidden;
    height: 0;
  }
  .home-layout .home_slider .slider_screen.slick-initialized {
    overflow: visible;
    height: auto;
    margin-bottom: 0;
  }
  .home-layout .home_slider .slick-dots {
    position: absolute;
    bottom: 0;
    width: 100%;
  }
  .home-layout .home_slider .slider_screen .slider_panel.movie {
    position: relative;
    width: 100%;
    padding-top: 56.25%;
  }
  .home-layout .home_slider .slider_screen .slider_panel.movie iframe {
    position: absolute;
    top: 0;
    right: 0;

    width: 100% !important;
    height: 85.8% !important;
  }

  /* ----- home-layout-v2 ----- */
  .home-layout-v2 {
    margin: 0 -15px;
  }
  .home-layout-v2 .home_toggle {
    background-color: #fff;
    border-bottom: 1px solid #ddd;
  }
  .home-layout-v2 .home_toggle .toggle_switch {
    position: relative;
    padding: 15px 50px 15px 15px;
    background-color: #f3f3f3;
    font-size: 1.8rem;
    font-weight: 700;
    line-height: 1.1;
  }
  .home-layout-v2 .home_toggle .toggle_switch::after {
    content: "";
    position: absolute;
    top: 50%;
    right: 15px;
    transform: rotate(135deg);
    width: 12px;
    height: 12px;
    margin-top: -9px;
    border-top: 1px solid #6a6a6a;
    border-right: 1px solid #6a6a6a;
  }
  .home-layout-v2 .home_toggle.is-open .toggle_switch::after {
    margin-top: -3px;
    transform: rotate(-45deg);
  }
  .home-layout-v2 .home_toggle .toggle_switch::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 15px;
    width: 25px;
    height: 2px;
    transform: translateY(-50%);
  }
  .home-layout-v2 .home_toggle .toggle_switch .switch_icon {
    position: relative;
    display: block;
    padding: 0 0 0 40px;
  }
  .home-layout-v2 .home_toggle .toggle_switch .switch_icon::before,
  .home-layout-v2 .home_toggle .toggle_switch .switch_icon::after {
    content: "";
    position: absolute;
    top: 50%;
    border-radius: 50%;
    transform: translateY(-50%);
  }
  .home-layout-v2 .home_toggle .toggle_switch .switch_icon::before {
    left: 7px;
    width: 11px;
    height: 11px;
  }
  .home-layout-v2 .home_toggle .toggle_switch .switch_icon::after {
    left: 9px;
    width: 7px;
    height: 7px;
    background-color: #f3f3f3;
  }
  .home-layout-v2 .home_toggle .toggle_switch.type-all::before,
  .home-layout-v2 .home_toggle .toggle_switch.type-all .switch_icon::before {
    background-color: #0096e0;
  }
  .home-layout-v2 .home_toggle .toggle_switch.type-event::before,
  .home-layout-v2 .home_toggle .toggle_switch.type-event .switch_icon::before {
    background-color: #f28282;
  }
  .home-layout-v2 .home_toggle .toggle_switch.type-go::before,
  .home-layout-v2 .home_toggle .toggle_switch.type-go .switch_icon::before {
    background-color: #ffa800;
  }
  .home-layout-v2 .home_toggle .toggle_switch.type-life::before,
  .home-layout-v2 .home_toggle .toggle_switch.type-life .switch_icon::before {
    background-color: #96a7d9;
  }
  .home-layout-v2 .home_toggle .toggle_panel {
    overflow: hidden;
    height: 0;
  }
  .home-layout-v2 .home_toggle.is-open .toggle_panel {
    height: auto !important;
  }
  .home-layout-v2 .home_toggle .toggle_inner {
    padding: 15px;
  }
  .home-layout-v2 .home_toggle .toggle_inner > *:first-child {
    margin-top: 0;
  }
  .home-layout-v2 .home_toggle .toggle_inner .link-button.gp-al-center {
    padding: 0 40px;
  }
  .home-layout-v2 .home_column,
  .home-layout-v2 .home_column .column_col_2 {
    display: flex !important;
    flex-wrap: wrap;
    justify-content: space-between;
  }
  .home-layout-v2 .home_column > .column_col,
  .home-layout-v2 .home_column .column_col_2 > .column_col {
    display: flex;
    width: 50%;
    margin: 10px 0 0;
  }
  .home-layout-v2 .home_column > .column_col:nth-child(-n+2),
  .home-layout-v2 .home_column .column_col_2 > .column_col:nth-child(-n+2) {
    margin-top: 0;
  }
  .home-layout-v2 .home_column .column_col > a.col_frame {
    color: #333;
    text-decoration: none;
  }
  .home-layout-v2 .home_column .column_col > .col_frame > .col_inner {
    width: 100%;
  }
  .home-layout-v2 .home_column .column_col .col_image {
    text-align: center;
  }
  .home-layout-v2 .home_column .column_col .col_title {
    margin: 5px 0 0;
    padding: 0 10px;
    font-weight: 700;
    line-height: 1.5;
  }
  .home-layout-v2 .home_column.slick-slider {
    margin: 0 -15px;
  }
  .home-layout-v2 .home_column.slick-slider .column_col_2 {
    padding: 0 15px;
  }

  /* ----- home-layout-v3 ----- */
  .home-layout-v3 {
    margin: 40px -15px 0;
  }
  .home-layout-v3 .home_tab,
  .home-layout-v3 .home_tab .tab_nav {
    border-bottom: 1px solid #ddd;
  }
  .home-layout-v3 .home_tab .tab_link {
    display: flex;
  }
  .home-layout-v3 .home_tab .tab_link > li {
    display: flex;
    width: 25%;
  }
  .home-layout-v3 .home_tab .tab_link > li + li {
    border-left: 1px solid #ddd;
  }
  .home-layout-v3 .home_tab .tab_link > li > a {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    padding: 20px 1px;
    background-color: #f3f3f3;
    color: #333;
    font-size: 1.6rem;
    line-height: 1.1;
    text-align: center;
    text-decoration: none;
  }
  .home-layout-v3 .home_tab .tab_link > li.is-active > a {
    background-color: #fff;
    border-top: 2px solid #0096e0;
    font-weight: 700;
  }
  .home-layout-v3 .home_tab .tab_link > li.is-active > a::after {
    content: "";
    position: absolute;
    top: 100%;
    width: 100%;
    height: 1px;
    background-color: #fff;
  }
  .home-layout-v3 .home_tab .tab_panel {
    padding: 15px 15px 25px;
    background-color: #fff;
  }
  .home-layout-v3 .home_tab .tab_panel > *:first-child {
    margin-top: 0;
  }
  .home-layout-v3 .home_heading {
    display: none;
  }
  .home-layout-v3 .home_column {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
  .home-layout-v3 .home_column > .column_col {
    width: 50%;
    margin: 15px 0 0;
  }
  .home-layout-v3 .home_column > .column_col:nth-child(-n+2) {
   margin-top: 0;
  }
  .home-layout-v3 .home_column .column_col .col_frame {
    display: block;
  }
  .home-layout-v3 .home_column .column_col a.col_frame {
    color: #333;
    text-decoration: none;
  }
  .home-layout-v3 .home_column .column_col .col_image {
    text-align: center;
  }
  .home-layout-v3 .home_column .column_col .col_title {
    margin: 10px 0 0;
    padding: 0 10px;
    font-weight: 700;
    line-height: 1.2;
  }
  
  /* ----- home-layout-v4 ----- */
  .home-layout-v4 {
    margin: 30px 0 0;
  }
  .home-layout-v4 .home_heading {
    font-size: 2.1rem;
    font-weight: 700;
    line-height: 1.1;
    text-align: center;
  }
  .home-layout-v4 .home_tab {
    margin: 25px -15px 0;
  }
  .home-layout-v4 .home_tab .tab_nav {
    border-bottom: 1px solid #ddd;
  }
  .home-layout-v4 .home_tab .tab_link {
    display: flex;
  }
  .home-layout-v4 .home_tab .tab_link > li {
    display: flex;
    width: 25%;
  }
  .home-layout-v4 .home_tab .tab_link > li + li {
    border-left: 1px solid #ddd;
  }
  .home-layout-v4 .home_tab .tab_link > li > a {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    padding: 10px 5px;
    background-color: #f3f3f3;
    color: #333;
    font-size: 1.6rem;
    line-height: 1.1;
    text-align: center;
    text-decoration: none;
  }
  .home-layout-v4 .home_tab .tab_link > li.is-active > a {
    background-color: #fff;
    border-top: 2px solid #0096e0;
    font-weight: 700;
  }
  .home-layout-v4 .home_tab .tab_link > li.is-active > a::after {
    content: "";
    position: absolute;
    top: 100%;
    width: 100%;
    height: 1px;
    background-color: #fff;
  }
  .home-layout-v4 .home_tab .tab_panel {
    padding: 15px 15px 25px;
    background-color: #fff;
  }
  .home-layout-v4 .home_tab .tab_panel > *:first-child {
    margin-top: 0;
  }
  .home-layout-v4 .home_tab .tab_content > .tab_panel .heading-lv3 {
    display: none;
  }
  .home-layout-v4 .home_news .news_article + .news_article {
    margin-top: 1em;
  }
  .home-layout-v4 .home_news .block {
    display: block;
  }
  .home-layout-v4 .home_news a.block {
    color: #1e2d66;
    text-decoration: none;
  }
  .home-layout-v4 .home_news a.block::after {
    display: none;
  }
  .home-layout-v4 .home_news .news_date {
    color: #555;
    font-size: 1.1rem;
  }
  .home-layout-v4 .home_news .news_property {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
  }
  .home-layout-v4 .home_news .news_property .news_icon {
    margin: 0 0 0 10px;
  }
  .home-layout-v4 .home_news .news_property .news_icon > * {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 105px;
    height: 20px;
    border-radius: 5px;
    color: #fff;
    font-size: 1.1rem;
    font-style: normal;
    line-height: 1.1;
  }
  .home-layout-v4 .home_news .news_property .news_icon > .icon-news {
    background-color: #39a9e0;
  }
  .home-layout-v4 .home_news .news_property .news_icon > .icon-report {
    background-color: #ffa800;
  }
  .home-layout-v4 .home_news .news_property .news_icon > .icon-ir {
    background-color: #537ccf;
  }
  .home-layout-v4 .home_news .news_title {
    margin: 0.2em 0 0;
    line-height: 1.5;
  }
  .home-layout-v4 .home_news a.a-blank .news_title::after,
  .home-layout-v4 .home_news a.a-pdf .news_title::after {
    content: "";
    display: inline-block;
    margin: 0 0 0 12px;
    vertical-align: middle;
  }
  .home-layout-v4 .home_news a.a-blank .news_title::after {
    width: 10px;
    height: 10px;
    background: url(/common/img/com_ic41.png) no-repeat 0 0;
    background-size: 10px auto; 
  }
  .home-layout-v4 .home_news a.a-pdf .news_title::after {
    width: 13px;
    height: 16px;
    background: url(/common/img/com_ic42.png) no-repeat 0 0;
    background-size: 14px auto;
  }
  
  /* ----- home-layout-v5 ----- */
  .home-layout-v5 {
    margin: 40px -15px 0;
    padding: 30px 15px 15px;
    background-color: #ddf3ff;
  }
  .home-layout-v5 .home_heading {
    margin: 0 0 20px;
    font-size: 2.0rem;
    font-weight: 700;
    line-height: 1.1;
    text-align: center;
  }
  .home-layout-v5 .home_heading > span {
    position: relative;
    display: inline-block;
    padding: 0 0 0 50px;
  }
  .home-layout-v5 .home_heading > span::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 0;
    width: 39px;
    height: 28px;
    background-image: url("/img/home_guide_ic01.png");
    background-repeat: no-repeat;
    background-position: 0 0;
    background-size: 100% 100%;
    transform: translateY(-50%);
  }
  
  /* ----- home-layout-v6 ----- */
  .home-layout-v6 {
    padding: 40px 0;
  }
  .home-layout-v6 > *:first-child {
    margin-top: 0;
  }
  .home-layout-v6 .home_link {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
  .home-layout-v6 .home_link > li {
    width: calc((100% - 15px) / 2);
    margin: 15px 0 0;
  }
  .home-layout-v6 .home_link > li:nth-child(-n+2) {
    margin-top: 0;
  }
  .home-layout-v6 .home_link > li > a {
    display: flex;
    align-items: center;
    color: #333;
    text-decoration: none;
  }
  .home-layout-v6 .home_link > li > a > .link_icon {
    margin: 0 10px 0 0;
  }
  .home-layout-v6 .home_link > li > a > .link_icon img {
    width: 34px;
  }
  .home-layout-v6 .home_link > li > a > .link_text {
    font-size: 1.3rem;
    line-height: 1.23;
  }
  .home-layout-v6 .link-button.gp-al-center {
    padding: 0 40px;
  }
  
  /* ----- home-layout-v7 ----- */
  .home-layout-v7 {
    margin: 0 -15px;
    padding: 30px 15px 80px;
    background-color: #0096e0;
    background-image: url("/img/home_group_bg01_sp.jpg");
    background-repeat: no-repeat;
    background-position: 50% 100%;
    background-size: 100% auto;
  }
  .home-layout-v7 .home_heading {
    color: #fff;
    font-size: 2.0rem;
    font-weight: 700;
    line-height: 1.1;
    text-align: center;
  }
  .home-layout-v7 .home_link {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin: 25px 0 0;
  }
  .home-layout-v7 .home_link > li {
    position: relative;
    width: calc((100% - 15px) / 2);
    margin: 20px 0 0;
    padding: 0 0 0 20px;
  }
  .home-layout-v7 .home_link > li:nth-child(-n+2) {
    margin-top: 0;
  }
  .home-layout-v7 .home_link > li::before {
    content: "";
    position: absolute;
    top: 0.28em;
    left: 0;
    width: 14px;
    height: 13px;
    background-image: url("/img/home_link_ic01.png");
    background-repeat: no-repeat;
    background-position: 0 0;
    background-size: 100% 100%;
  }
  .home-layout-v7 .home_link > li > a {
    color: #fff;
    line-height: 1.1;
    text-decoration: none;
  }
  .home-layout-v7 .home_frame {
    overflow: hidden;
    margin: 25px 0 0;
    background-color: #fff;
    border-radius: 8px;
  }
  .home-layout-v7 .home_button {
    display: flex;
    flex-wrap: wrap;
  }
  .home-layout-v7 .home_button > li {
    display: flex;
  }
  .home-layout-v7 .home_button > li:nth-child(-n+2) {
    width: 50%;
    border-bottom: 1px solid #ddd;
  }
  .home-layout-v7 .home_button > li:nth-child(n+3) {
    width: 33.33%;
  }
  .home-layout-v7 .home_button > li:nth-child(2),
  .home-layout-v7 .home_button > li:nth-child(4),
  .home-layout-v7 .home_button > li:nth-child(5) {
    border-left: 1px solid #ddd;
  }
  .home-layout-v7 .home_button > li > a {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    padding: 15px 5px 15px 33px;
    color: #333;
    font-size: 1.2rem;
    line-height: 1.1;
    text-decoration: none;
  }
  .home-layout-v7 .home_button > li:nth-child(2) > a,
  .home-layout-v7 .home_button > li:nth-child(4) > a,
  .home-layout-v7 .home_button > li:nth-child(5) > a {
    padding-top: 5px;
    padding-bottom: 5px;
  }
  .home-layout-v7 .home_button > li > a::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 5px;
    width: 25px;
    height: 25px;
    background-repeat: no-repeat;
    background-position: 0 0;
    background-size: 100% 100%;
    transform: translateY(-50%);
  }
  .home-layout-v7 .home_button > li > a.type-icon1::before {
    background-image: url("/img/home_group_ic01.png");
  }
  .home-layout-v7 .home_button > li > a.type-icon2::before {
    background-image: url("/img/home_group_ic02.png");
  }
  .home-layout-v7 .home_button > li > a.type-icon3::before {
    background-image: url("/img/home_group_ic03.png");
  }
  .home-layout-v7 .home_button > li > a.type-icon4::before {
    background-image: url("/img/home_group_ic04.png");
  }
  .home-layout-v7 .home_button > li > a.type-icon5::before {
    background-image: url("/img/home_group_ic05.png");
  }
  .home-layout-v7 .home_button > li > a > span {
  }
  
  /* ----- home-layout-v8 ----- */
  .home-layout-v8 {
    margin: 0 -15px;
    padding: 30px 15px;
    background-color: #f9f9f9;
  }
  .home-layout-v8 .home_banner {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
  }
  .home-layout-v8 .home_banner > li {
    width: calc((100% - 15px) / 2);
    margin: 15px 0 0;
    text-align: center;
  }
  .home-layout-v8 .home_banner > li:nth-child(-n+2) {
    margin-top: 0;
  }
  .home-layout-v8 .home_banner > li > a > img {
    border: 1px solid #ddd;
  }
  
  /* ----- home-important-layout ----- */
  .home-important-layout .home_frame {
    margin: 0 -15px;
    padding: 20px 30px;
    background-color: #fdeded;
  }
  .home-important-layout .home_frame > *:first-child {
    margin-top: 0;
  }
  .home-important-layout .home_frame > .frame_title {
    margin: 0 0 15px;
    color: #d20023;
    font-size: 1.6rem;
    font-weight: 700;
    line-height: 1.1;
  }
  .home-important-layout .home_frame .fram_inner > *:first-child {
    margin-top: 0;
  }
  .home-important-layout .home_frame .fram_inner .home-slider-controller {
    margin-top: 15px;
  }
  .home-important-layout .home_slider .home_news {
    overflow: visible;
    height: auto;
  }
  .home-important-layout .home_slider .home_news.slick-initialized {
    overflow: visible;
    height: auto;
  }
  
  /* ----- emergency-layout ----- */
  .emergency-layout {
    padding-top: 20px;
  }
  .emergency-layout .heading-emergency {
    margin-top: 45px;
  }
  .emergency-layout .heading-emergency .heading_emergency_title {
    font-size: 1.8rem;
    line-height: 1.5;
  }
  .emergency-layout .f-emergency {
    font-size: 2.0rem;
    line-height: 1.5;
  }
  .emergency-layout .f-emergency + .f-emergency {
    margin-top: 0.7em;
  }
  
  /* ----- emergency-wrap ----- */
  .emergency-wrap {
    margin-bottom: 40px;
  }
  .emergency-wrap .f-emergency-v2 + .f-emergency-v2 {
    margin-top: 1em;
  }
  
  /* ------------------------------------------------------
   * Clearfix
  ------------------------------------------------------ */
  .clearfix::after {
    display: block;
    clear: both;
    content: "";
  }
}

/* ======================================================
 * SP Media Queries
====================================================== */
/***
@media only screen and (min-width: 320px) and (max-width: 767px) {
}
@media only screen and (max-width: 736px) {
}
@media only screen and (max-width: 667px) {
}
@media only screen and (max-width: 640px) {
}
@media only screen and (max-width: 568px) {
}
@media only screen and (max-width: 480px) {
}
@media only screen and (max-width: 414px) {
}
@media only screen and (max-width: 375px) {
}
@media only screen and (max-width: 360px) {
}
@media only screen and (max-width: 320px) {
}
***/


/* ======================================================
 * Print
====================================================== */
@media print {
}