  @charset "utf-8";
  
  /*
   * PC用スタイルCSS
   */
  
  
  /* =================================================================================================================== */
  /* PCカスタムプロパティ */
  :root {
    --basic_background_color: #ffffff;
    --body_text_color: #042652;
    --link_color: #21b0e9;
    --border_color: #a1a3a7;
    --table_border_color: #5f6164;
    --th_background_color: transparent;
    --td_background_color: transparent;
    --th_character_color: #042652;
    --td_character_color: #042652;
    --required_color: #21b0e9;
    --top_h1_color: #ffffff;
    --header_navigation_color: transparent;
    --top_entry_title_color: #042652;
    --entry_title_bg_color: #ffffff;
    --blog_title_color: #042652;
    --sub_entry_title_bg_color: #042652;
    --entry_title_bg_w570_color: #ffffff;
    --sub_entry_title_bg_w570_color: #042652;
    --half_entry_title_bg_color: #ffffff;
    --half_sub_entry_title_bg_color: #042652;
    --column3_title_bg_color: #042652;
    --widget_title_bg_color: #ffffff;
    --widget_list_bg_color: #042652;
    --footnavi_color: #f9bf11;
    --address_color: transparent;
    --copy_color: #85909e;
    --kdb_background_color: #eeeff1;
  }
  
  /* 置換以外 */
  :root {
    --easys_min_width: 1300;
    /* EASYSの最小幅(単位なし) */
    --easys_max_width: 2000;
    /* EASYSの最大幅(単位なし) */
    --easys_top_main_h: 1035;
    /* トップメインのオリジナル高さ(単位なし) */
    --easys_naka_main_h: 660;
    /* 中ページメインのオリジナル高さ(単位なし) */
    --fixed_side_btn_bottom: 0px;
    /* サイド固定ボタンの下端からの距離 */
    --fixed_side_btn_side: 0px;
    /* サイド固定ボタン、左右の距離 */
    --fixed_side_btn_width_full: 70px;
    /* サイド固定ボタンの全幅 */
    --fixed_side_btn_width_collapsed: 70px;
    /* サイド固定ボタンのホバー前の幅 */
    --fixed_side_btn_height: 60px;
    /* サイド固定ボタンの高さ */
    --fixed_side_btn_margin: 10px;
    /* サイド固定ボタンの間隔 */
    --easys_standard_value001: #ffffff;
    /* A～Cブロック記事内リンクボタン＞文字色 */
    --easys_standard_value002: rgba(4, 38, 83, 0.9);
    /* プルダウンメニュー＞背景色 */
    --easys_standard_value003: #fff;
    /* プルダウンメニュー＞文字色 */
    --easys_standard_value004: #ffd24d;
    /* プルダウンメニュー＞文字色(ホバー時) */
    --easys_standard_value005: #ffffff;
    /* カレンダーの本日＞文字色 */
    --easys_standard_value006: #ffffff;
    /* 大きな地図で見る＞文字色(ホバー時) */
    --easys_standard_value007: #ffffff;
    /* ページ遷移ボタン＞線色 */
    --easys_standard_value008: #ffffff;
    /* ページ遷移ボタン＞文字色 */
    --easys_standard_value009: #000000;
    /* ブログ＞ページング＞線色 */
    --font_size_10: 10px;
    --font_size_11: 11px;
    --font_size_12: 12px;
    --font_size_13: 13px;
    --font_size_14: 14px;
    --font_size_15: 15px;
    --font_size_16: 16px;
    --font_size_17: 17px;
    --font_size_18: 18px;
    --font_size_20: 20px;
    --font_size_23: 23px;
    --font_size_28: 28px;
  
  
    /* 下記個別設定 */
    --easys_access_h: 60px !important;
    /* メインナビの高さ */
    --float_top_btn_w: 60px;
    /* トップに戻るボタンサイズ */
    --float_top_btn_x: 40px;
    /* トップに戻るボタン右からの位置 */
    --custom_transition: 0.3s all;
    /*バナーON時などのトランジションに使用*/
  }
  
  
  
  /* =================================================================================================================== */
  
  
  /* ===================================================================================================================
     ■ 全体
  ------------------------------------------------------------------------------------------------------------------- */
  html {
    background: none var(--basic_background_color);
    scroll-behavior: smooth;
    scroll-padding-top: var(--easys_access_h);
    /* background: var(--basic_background_color) url("../files/html_bg.jpg") repeat-x center top; */
  }
  
  body {
    position: relative;
    /* 2000pxを超える画面の対策 */
    margin: 0 auto;
    min-width: calc(var(--easys_min_width)*1px);
    max-width: calc(var(--easys_max_width)*1px);
    /* background: none no-repeat center top; */
    word-break: break-word;
    background-image: url(../files/body_bg.jpg);
    background-repeat: no-repeat;
    background-position: center top;
    background-size: 100%;
  }
  
  body,
  .wpcf7c-conf {
    color: var(--body_text_color);
  }
  
  /* Safariのみ */
  _:lang(x)+_:-webkit-full-screen-document,
  body {
    text-size-adjust: none;
    -webkit-text-size-adjust: none;
  }
  
  body#page_6 {
    background: none no-repeat center top;
  }
  
  #wrapper {
    background: none transparent;
  }
  
  #outer_block {
    background: none transparent;
  }
  
  #main {
    overflow: clip;
  }
  
  a:link,
  a:visited,
  a:hover,
  a:active {
    color: var(--link_color);
  }
  
  /* A～Cブロック記事内リンクボタン */
  .main_btn a,
  .sub_text_btn a {
    background-color: var(--link_color);
    color: var(--easys_standard_value001);
  }
  
  
  /* ===================================================================================================================
     ■ ヘッダー
  ------------------------------------------------------------------------------------------------------------------- */
  #branding_box {
    height: 0px;
    padding: 0;
    position: relative;
    z-index: 500;
    padding: calc(100% * (var(--easys_naka_main_h) / var(--easys_max_width))) 0 0 0;
    background: none transparent;
  }
  
  #page_6 #branding_box {
    height: 0px;
    padding: calc(100% * (var(--easys_top_main_h) / var(--easys_max_width))) 0 0 0;
    background: url(../files/top_header_cover.png)no-repeat top center /100%;
  }
  
  /*  H1テキスト
  ---------------------------------------------------------------------------------------------------- */
  #site-description {
    margin: 0 auto;
    position: absolute;
    top: auto;
    bottom: calc(90 / var(--easys_naka_main_h) * 100%);
    left: calc(50/ var(--easys_max_width) * 100%);
    right: auto;
    width: auto;
    z-index: 998;
    /*text-align: right;*/
    /*右寄せのときテキストを右揃え*/
  }
  
  #page_6 #site-description {
    margin: 0 auto;
    position: absolute;
    top: auto;
    bottom: calc(39/ var(--easys_top_main_h) * 100%);
    left: calc(50/var(--easys_max_width)*100%);
    right: auto;
    width: auto;
    z-index: 998;
    /*transform:none;*/
  }
  
  #site-description a {
    display: inline;
    color: var(--top_h1_color);
  }
  
  /*  サイトロゴ
  ---------------------------------------------------------------------------------------------------- */
  
  /* ヘッダーのH1～グローバルナビの高さ調整 */
  #header_information {
    height: auto;
  }
  
  #page_6 #header_information {
    height: auto;
  }
  
  #header_information .main_header {
    width: 100%;
    margin: 0 auto;
    padding: 0;
  }
  
  #header_information .main_header a {
    display: inline-block;
    padding: 0;
  }
  
  #header_information .main_header a img {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 998;
    width: 290px;
    height: 110px;
    background-image: url(../files/main_logo.png);
    background-repeat: no-repeat;
    background-position: center top;
    background-size: 100%;
  }
  
  /*固定ロゴ*/
  #header_information .main_header a img.fixed {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 999;
  
    /*固定ロゴ素材が別途用意されてた場合は使用*/
    width: 240px;
    height: 60px;
    background-image: url(../files/main_logo_fixed.png);
  }
  
  @media screen and (min-width: 2000px) {
  
    .main_header img.fixed,
    #page_6 .main_header img.fixed {
      left: calc(50% - 1000px) !important;
    }
  }
  
  
  /*  グローバルナビ
  ---------------------------------------------------------------------------------------------------- */
  #access {
    width: 100%;
    z-index: 590;
    height: var(--easys_access_h);
    margin: 0 auto;
    min-width: 1300px;
    max-width: 2000px;
    position: absolute;
    top: 30px;
    left: 0;
  }
  
  div#access .menu-header,
  div#access .menu-header #menu-gnavi {
    height: 100%;
  }
  
  div#access .menu-header #menu-gnavi {
    display: flex;
    justify-content: center;
  }
  
  div#access .menu-header {
    margin: 0 30px 0 auto;
    width: 600px;
  }
  
  
  div#access .menu-item a {
    padding: 0;
    width: 160px;
    height: var(--easys_access_h) !important;
    background: url("../files/topnavi.png") no-repeat center top;
  }
  
  :root {
    --gnavi01: 110px;
    --gnavi02: 90px;
    --gnavi03: 100px;
    --gnavi04: 90px;
    --gnavi05: 90px;
    --gnavi06: 120px;
  }
  
  #access .menu-header #menu-gnavi>li:nth-of-type(1)>a {
    width: var(--gnavi01);
    background-position-x: left;
  }
  
  #access .menu-header #menu-gnavi>li:nth-of-type(2)>a {
    width: var(--gnavi02);
    background-position-x: calc((var(--gnavi01)) * -1);
  }
  
  #access .menu-header #menu-gnavi>li:nth-of-type(3)>a {
    width: var(--gnavi03);
    background-position-x: calc((var(--gnavi01) + var(--gnavi02)) * -1);
  }
  
  #access .menu-header #menu-gnavi>li:nth-of-type(4)>a {
    width: var(--gnavi04);
    background-position-x: calc((var(--gnavi01) + var(--gnavi02) + var(--gnavi03)) * -1);
  }
  
  #access .menu-header #menu-gnavi>li:nth-of-type(5)>a {
    width: var(--gnavi05);
    background-position-x: calc((var(--gnavi01) + var(--gnavi02) + var(--gnavi03) + var(--gnavi04)) * -1);
  }
  
  #access .menu-header #menu-gnavi>li:nth-of-type(6)>a {
    width: var(--gnavi06);
    background-position-x: right;
  }
  
  #access .menu-header #menu-gnavi>li>a:hover {
    background-position-y: bottom;
  }
  
  /*固定ナビ*/
  #access.fixed {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    background-color: rgba(4, 38, 83, 0.9);
    /*access全体にかかる背景はここ*/
    transform: none !important;
    /*ナビがレスポンシブ等で動かされていた場合リセット*/
    z-index: 998;
  }
  
  
  /* プルダウンメニュー */
  #wrapper div#access ul li ul li {
    border-bottom: 1px dotted var(--border_color);
  }
  
  #wrapper div#access ul li ul li a {
    padding: 15px 10px;
    background-color: var(--easys_standard_value002);
    color: var(--easys_standard_value003);
    line-height: 1.2em !important;
  
    background-image: none;
    height: auto !important;
    width: auto !important;
  }
  
  #wrapper div#access ul li ul li a:hover {
    background: none var(--easys_standard_value002);
    color: var(--easys_standard_value004);
  }
  
  /* カレントページのメニュー */
  #wrapper div#access ul li.current_page_item>a,
  #wrapper div#access ul li.current-menu-ancestor>a,
  #wrapper div#access ul li.current-menu-item>a,
  #wrapper div#access ul li.current-menu-parent>a {
    color: var(--easys_standard_value003);
  }
  
  #wrapper div#access ul li.current_page_item>a:hover,
  #wrapper div#access ul li.current-menu-ancestor>a:hover,
  #wrapper div#access ul li.current-menu-item>a:hover,
  #wrapper div#access ul li.current-menu-parent>a:hover {
    color: var(--easys_standard_value004);
  }
  
  
  /*  メイン画像
  ---------------------------------------------------------------------------------------------------- */
  #main_teaser,
  #video_teaser,
  #jquery_slider_pc {
    position: absolute;
    top: 0;
    right: 0;
    left: 0;
    z-index: 99;
    margin: 0 auto;
    width: 100%;
    text-align: center;
  }
  
  #main_teaser,
  #video_teaser #video_teaser_inner,
  #jquery_slider_pc .viewer {
    display: block;
    margin: 0 auto;
    min-width: calc(var(--easys_min_width)*1px);
    max-width: calc(var(--easys_max_width)*1px);
  }
  
  #main_teaser img,
  #video_teaser #video_teaser_inner video,
  #jquery_slider_pc .viewer img {
    width: 100%;
  }
  
  /*Firefox対策コード
  ---------------------------------------*/
  #jquery_slider_pc .viewer {
    aspect-ratio: var(--easys_max_width)/var(--easys_top_main_h);
  }
  
  
  /*メインレスポンシブなし
  ---------------------------------------*/
  /* body{
    background-size: auto;
  }
  #branding_box {
   padding: calc(var(--easys_naka_main_h) * 1px) 0 0 0;
  }
  
  #page_6 #branding_box {
   padding: calc(var(--easys_top_main_h) * 1px) 0 0 0;
  }
  
  #main_teaser,
  #video_teaser ,
  #jquery_slider_pc {
    overflow:hidden;
  }
  
  #video_teaser #video_teaser_inner ,
  #jquery_slider_pc .viewer {
    height:100%!important;
  }
  #main_teaser img {
    position:relative;
    top:0;
    left:calc(50% - 1000px);
    width:2000px;
    height: var(--easys_naka_main_h);
  }
  #video_teaser #video_teaser_inner video ,
  #jquery_slider_pc .viewer img {
    position:relative;
    top:0;
    left:calc(50% - 1000px);
    width:2000px;
    height:var(--easys_top_main_h);
  } */
  
  
  /* ===================================================================================================================
     ■ サイド
  ------------------------------------------------------------------------------------------------------------------- */
  /* サイドナビ　タイトル */
  .widget-title,
  .widget-title2 a {
    padding: 0;
    background-image: url(../files/widget_title_bg.png);
    color: var(--widget_title_bg_color);
    text-align: center;
  }
  
  .widget-title2 a:link,
  .widget-title2 a:visited,
  .widget-title2 a:hover,
  .widget-title2 a:active {
    color: var(--widget_title_bg_color);
  }
  
  /* サイドナビ　メニュー部分 */
  #blog_main .widget-area ul ul li a {
    overflow: hidden;
    background-image: url(../files/widget_list_bg.png);
    color: var(--widget_list_bg_color);
    text-overflow: ellipsis;
    white-space: nowrap;
  }
  
  #wp-calendar {
    border-collapse: separate;
  }
  
  #wp-calendar caption {
    text-align: center;
  }
  
  /*#wp-calendar thead th {
  }*/
  #wp-calendar tbody td {
    padding: 5px;
    border-width: 0 0 1px;
    border-style: dotted;
    border-color: var(--border_color);
    background: none transparent;
    line-height: 2;
  }
  
  #wp-calendar tbody td a {
    text-decoration: underline;
  }
  
  #wp-calendar tbody td a:hover {
    text-decoration: none;
  }
  
  #calendar_wrap table tr td#today {
    background-color: var(--link_color);
  }
  
  #calendar_wrap table tr td#today,
  #calendar_wrap table tr td#today a {
    color: var(--easys_standard_value005);
  }
  
  /* ===================================================================================================================
    ■ フッター
  ------------------------------------------------------------------------------------------------------------------- */
  #footer_block {
    position: relative;
    height: 600px;
    background: url(../files/footer_bg.png) no-repeat center top;
  }
  
  #footer_box {
    height: 600px;
    /* background: url(../files/footer_box_bg.png) no-repeat center top; */
  }
  
  
  /*  フッターナビ
  ---------------------------------------------------------------------------------------------------- */
  #footer_sitemap_block {
    padding: 0;
    position: absolute;
    top: 333px;
    left: 0px;
    width: 100%;
  }
  
  #footer_sitemap_block #footer-widget-area {
    display: block;
    width: 960px;
  }
  
  #footer_sitemap_block #footer-widget-area .widget-area ul.menu {
    border-color: var(--footnavi_color);
  }
  
  #footer_sitemap_block #footer-widget-area .widget-area .menu-item a {
    border-color: var(--footnavi_color);
    color: var(--footnavi_color);
  }
  
  #footer_sitemap_block #footer-widget-area .widget-area .menu-item a:hover {
    background-color: transparent;
  }
  
  
  /*  フッター情報
  ---------------------------------------------------------------------------------------------------- */
  .footer_infomation {
    display: block;
    width: 960px;
    margin: 0 auto;
  }
  
  #footer_information .entry-post {
    width: 100%;
    margin: 140px 0 0;
    text-align: center;
    color: var(--address_color);
  }
  
  /*フッターに記載する住所やTELなどを非表示*/
  .footer_infomation .post-data p {
    display: none;
  }
  
  
  /*  フッターSNSボタン
  ---------------------------------------------------------------------------------------------------- */
  #footer_sns_btn {
    margin: 20px auto 0;
    /* 絶対値指定する時
    position: absolute;
    bottom: 130px;
    left: 50%;
    margin: 0;
    transform: translateX(-50%);
    */
  }
  
  #footer_sns_btn .footer_sns_inner {
    width: 250px;
    height: 25px;
  }
  
  #footer_sns_btn div {
    width: 25px;
    height: 25px;
  }
  
  #footer_sns_btn div a:hover {
    opacity: 0.8;
  }
  
  
  
  /*  コピーライト
  ---------------------------------------------------------------------------------------------------- */
  #copyright {
    color: var(--copy_color);
    position: absolute;
    top: 414px;
    left: 0;
    right: 0;
  }
  
  
  /*  サイドメニュー
  ---------------------------------------------------------------------------------------------------- */
  /* サイド固定ボタン：通常時各ボタンを10px埋め、ホバー時全体表示*/
  .fixed_side_btn {
    box-sizing: border-box;
    display: flex;
    justify-content: flex-start;
    flex-direction: row-reverse;
    flex-wrap: nowrap;
    align-items: flex-end;
    position: fixed;
    bottom: var(--fixed_side_btn_bottom);
    right: 0;
    left: 0;
    margin-inline: auto;
    pointer-events: none;
    overflow: hidden;
    width: clamp(0px, 100%, calc(var(--easys_max_width)*1px));
    z-index: 1000;
  }
  
  .fixed_side_btn div {
    position: relative;
    width: var(--fixed_side_btn_width_full);
    height: var(--fixed_side_btn_height);
    margin-right: var(--fixed_side_btn_margin);
    overflow: hidden;
    transition: all 0.2s ease;
    right: 0;
    bottom: -10px;
  }
  
  .fixed_side_btn div a {
    display: block;
    width: 100%;
    height: 100%;
    overflow: hidden;
    text-indent: -99999px;
    background-repeat: no-repeat;
    background-position: left center;
    background-size: contain;
    pointer-events: all;
    white-space: nowrap;
  }
  
  .fixed_side_btn div:hover {
    transition: all 0.3s ease;
    bottom: 0;
  }
  
  /* デフォルトボタン */
  .fixed_side_btn .gaten a {
    background-image: url(../files/btn_gaten.png);
  }
  
  .fixed_side_btn .map a {
    background-image: url(../files/btn_map.png);
  }
  
  .fixed_side_btn .contact a {
    background-image: url(../files/btn_contact.png);
  }
  
  .fixed_side_btn .weblog a {
    background-image: url(../files/btn_blog.png);
  }
  
  /* SNSボタン */
  .fixed_side_btn .line a {
    background-image: url(../files/btn_line.png);
  }
  
  .fixed_side_btn .instagram a {
    background-image: url(../files/btn_insta.png);
  }
  
  .fixed_side_btn .facebook a {
    background-image: url(../files/btn_fb.png);
  }
  
  .fixed_side_btn .youtube a {
    background-image: url(../files/btn_youtube.png);
  }
  
  .fixed_side_btn .tiktok a {
    background-image: url(../files/btn_tiktok.png);
  }
  
  /* 個別ボタンの高さ調整 */
  .fixed_side_btn .contact {
    width: 170px;
    height: 130px;
    margin-right: 20px;
  }
  
  
  
  /*  スクロールトップ
  ---------------------------------------------------------------------------------------------------- */
  #float_top_btn {
    right: var(--float_top_btn_x);
    bottom: 140px;
    width: var(--float_top_btn_w);
  }
  
  #float_top_btn a:hover img {
    opacity: 0.8;
  }
  
  /*画面幅2000px以上の時*/
  @media screen and (min-width: 2000px) {
    #float_top_btn {
      right: calc(50% - 1000px + var(--float_top_btn_x));
    }
  }
  
  /* ===================================================================================================================
     ■ コンテンツ
  ------------------------------------------------------------------------------------------------------------------- */
  #container_top {
    padding: 0;
  }
  
  #container_top.single_post {
    padding: 0 0 50px;
  }
  
  /*  見出し
  ---------------------------------------------------------------------------------------------------- */
  .headline_title {
    background-image: url(../files/top_entry_title.png);
    background-position: left bottom;
    height: 80px;
    line-height: 80px;
    color: var(--top_entry_title_color);
  }
  
  h3.entry_title,
  .entry_title,
  .entry-title {
    /* サイズ、背景、余白などはこちら */
    background-image: url(../files/entry_title_bg.png);
    color: var(--entry_title_bg_color);
  }
  
  /*h3.entry_title,
  .entry_title,
  .entry_title h3,
  .entry-title {
    フォントサイズはこちら
  }*/
  .entry_title a:link,
  .entry_title a:visited,
  .entry_title a:hover,
  .entry_title a:active,
  .entry-title a:link,
  .entry-title a:visited,
  .entry-title a:hover,
  .entry-title a:active {
    color: var(--entry_title_bg_color);
  }
  
  /* 見出しリンクボタン */
  .entry_title span.read_more_btn a,
  .entry_title span.read_more_btn a:hover {
    background-image: url(../files/read_more_btn.png);
  }
  
  .entry_title span.read_more_btn a:hover {
    opacity: 0.8;
  }
  
  * .mid_entry_title {
    background-image: url(../files/entry_title_bg_w570.png);
    font-size: var(--font_size_20);
  }
  
  * .mid_entry_title,
  * .mid_entry_title a {
    color: var(--entry_title_bg_w570_color);
  }
  
  /* B-09、B-10など幅半分ブロックの見出し用 */
  * .half_entry_title,
  * .short_entry_title {
    background-image: url(../files/half_entry_title_bg.png);
  }
  
  * .half_entry_title,
  * .half_entry_title a,
  * .short_entry_title,
  * .short_entry_title a {
    color: var(--half_entry_title_bg_color);
  }
  
  * .half_sub_entry_title,
  .short_sub_entry_title {
    background-image: url(../files/half_sub_entry_title_bg.png);
  }
  
  * .half_sub_entry_title,
  * .half_sub_entry_title a,
  .short_sub_entry_title,
  .short_sub_entry_title a {
    color: var(--half_sub_entry_title_bg_color);
  }
  
  
  
  /* B-03など小見出し用 */
  * .sub_entry_title {
    background: url(../files/sub_entry_title_bg.png) no-repeat scroll left bottom transparent;
    color: var(--sub_entry_title_bg_color);
  }
  
  /*
  * .sub_entry_title h4 {
    フォントサイズはこちら
  }
  */
  * .sub_entry_title a:link,
  * .sub_entry_title a:visited,
  * .sub_entry_title a:hover,
  * .sub_entry_title a:active {
    color: var(--sub_entry_title_bg_color);
  }
  
  /* 小見出しリンクボタン */
  .sub_entry_title span.read_more_btn a,
  .sub_entry_title span.read_more_btn a:hover {
    background-image: url(../files/sub_read_more_btn.png);
  }
  
  .sub_entry_title span.read_more_btn a:hover {
    opacity: 0.8;
  }
  
  * .mid_sub_entry_title {
    background-image: url(../files/sub_entry_title_bg_w570.png);
    font-size: var(--font_size_20);
  }
  
  * .mid_sub_entry_title,
  * .mid_sub_entry_title a {
    color: var(--sub_entry_title_bg_w570_color);
  }
  
  /* C-01など3列表示インラインタイトル用 */
  * .inline_title {
    background-image: url(../files/column3_title_bg.png);
  }
  
  * .inline_title,
  * .inline_title a {
    color: var(--column3_title_bg_color);
  }
  
  /* クーポンの本文見出しなど、固定幅でないインラインタイトル用 */
  .coupon_data .inline_title,
  .c_04 .inline_title,
  .i_01 .inline_title,
  .j_01 .inline_title {
    padding: 10px;
    height: auto;
    border: 1px solid var(--table_border_color);
    border-radius: 5px;
    background: none var(--th_background_color);
    color: var(--th_character_color);
    text-align: left;
    font-size: var(--font_size_15);
    line-height: 1.7;
  }
  
  /* 詳細画面の下部「コメント」見出し */
  .indent_border {
    width: 685px;
    border-color: var(--link_color);
  }
  
  
  /* 大きな地図で見る */
  small {
    border-color: var(--link_color);
  }
  
  small a {
    padding: 5px 0;
    width: 100%;
    color: var(--link_color) !important;
    text-align: center !important;
  }
  
  small a:hover {
    background-color: var(--link_color) !important;
    color: var(--easys_standard_value006) !important;
  }
  
  
  
  /*  テーブル
  ---------------------------------------------------------------------------------------------------- */
  .table_area td.td_name,
  .table_area td.td_value,
  body.coupon .table_area td.td_name,
  body.coupon .table_area td.td_value,
  table.iqfm-table th,
  table.iqfm-table td {
    border-color: var(--table_border_color);
    border-right: none;
    border-left: none;
    background: none transparent;
  }
  
  table.table_area td.td_name,
  body.coupon table.table_area td.td_name,
  .iqfm-table th {
    background: none transparent;
  }
  
  table.table_area td.td_value,
  body.coupon table.table_area td.td_value,
  .iqfm-table td,
  .custom-wpcf7c-confirmed td,
  input.wpcf7c-conf,
  textarea.wpcf7c-conf {
    background: none transparent;
  }
  
  /* メール送信後メッセージボックスのボーダー（デフォルト：グリーン） */
  div.wpcf7-mail-sent-ok {
    border-color: var(--border_color) !important;
  }
  
  /* Dメニュー下線 */
  .td_cell {
    border-color: var(--border_color);
    vertical-align: top;
  }
  
  .table_area table tr td {
    border: solid 1px var(--table_border_color) !important;
    border-right: none !important;
    border-left: none !important;
    background: none transparent;
  }
  
  /*  ページ遷移ボタン（詳細ブロックやページ送りのナビ用）
  ---------------------------------------------------------------------------------------------------- */
  .tablenav {
    padding: 1em 0;
  }
  
  a.page-numbers,
  .tablenav .current,
  .permalink_in a,
  .pageback a,
  .page_up a {
    border-style: solid;
    border-color: var(--link_color);
    background: none transparent;
    color: var(--link_color) !important;
  }
  
  /*.permalink_in a:link,
  .permalink_in a:visited,
  .pageback a:link,
  .pageback a:visited {
  }*/
  .tablenav .next:link,
  .tablenav .next:visited,
  .tablenav .prev:link,
  .tablenav .prev:visited {
    border: 1px solid var(--easys_standard_value007);
    background: none transparent;
  }
  
  .tablenav .next:hover,
  .tablenav .next:active,
  .tablenav .prev:hover,
  .tablenav .prev:active {
    border-color: var(--link_color);
    background-color: var(--link_color);
  }
  
  .tablenav .current,
  a.page-numbers:hover,
  .permalink_in a:hover,
  .permalink_in a:active,
  .pageback a:hover,
  .pageback a:active,
  .page_up a:hover,
  .page_up a:active {
    border-style: solid;
    border-color: var(--link_color);
    background: none var(--link_color);
    color: var(--easys_standard_value008) !important;
  }
  
  
  
  /*  ブロック
  ---------------------------------------------------------------------------------------------------- */
  /* 各ブロック点線 */
  .border_margin,
  .anchor_list ul li,
  .cu_mail_block,
  .blog_post,
  .list_block .list_box {
    border-color: var(--border_color);
  }
  
  
  /* Cブロック */
  .c_01,
  .c_02,
  .c_03,
  .c_05,
  .c_06 {
    display: inline-block;
    padding: 0 0 20px;
    width: 100%;
  }
  
  .c_04 {
    margin: 0 0 20px;
  }
  
  
  /* Dブロック */
  .menu-list table {
    border-collapse: separate;
  }
  
  
  /* Gブロック */
  .g_01 .sub_entry_title a,
  .g_02 .sub_entry_title a {
    text-decoration: underline;
  }
  
  .g_01 .sub_entry_title a:hover,
  .g_02 .sub_entry_title a:hover {
    text-decoration: none;
  }
  
  
  /* Kブロック */
  .k_03 .date_area {
    font-weight: bold;
    font-size: 13px;
  }
  
  .k_03 .news_small_text {
    font-size: 12px;
    line-height: 1.7;
  }
  
  
  /* Z-D ブログRSS */
  .z_d1 {
    margin: 0 0 20px;
  }
  
  
  /* Z-E リンクバナー */
  .banner_box {
    text-align: center;
  }
  
  .banner_box img {
    max-width: 100%;
    width: auto;
  }
  
  
  
  /* Z-I スライドショー */
  .z_j1 {
    margin: 0 0 15px;
  }
  
  
  /* Z_L お知らせブロック */
  .Z_l1 .date_area {
    font-weight: bold;
    font-size: 13px;
  }
  
  .Z_l1 .news_small_text {
    font-size: 12px;
  }
  
  
  /* Z_M タブブロック */
  .z_m1 .link_list {
    font-size: 13px;
    line-height: 1.5;
  }
  
  .z_m1 div.link_list {
    margin-bottom: 10px;
  }
  
  div.link_list a {
    border: 1px solid var(--link_color);
    background-color: transparent;
    color: var(--link_color);
  }
  
  div.link_list a:hover {
    border: 1px solid var(--link_color);
    background-color: var(--link_color);
    color: #ffffff;
  }
  
  
  .faq-title {
    background-color: var(--link_color);
    color: #ffffff;
    font-weight: normal;
  }
  
  
  
  /*  メールフォーム
  ---------------------------------------------------------------------------------------------------- */
  .iqfm-table td input[type="text"]:not([size]) {
    width: 75%;
  }
  
  /* 必須項目 */
  .iqfm-req_color {
    color: var(--required_color);
  }
  
  .iqfm-table button,
  .iqfm-table input[type="reset"],
  .iqfm-table input[type="button"],
  .iqfm-table input[type="submit"] {
    line-height: 1.7;
  }
  
  .iqfm-table .post_data {
    margin: 0 0 30px;
  }
  
  
  
  /*  クーポンページ
  ---------------------------------------------------------------------------------------------------- */
  /*body.coupon {
  }*/
  .coupon_print_block .print_header,
  h1.print_page_title,
  .coupon_box table tr td.coupon_data,
  .coupon_box table tr td.coupon_meta_title,
  .coupon_box table tr td.coupon_meta {
    border-color: var(--table_border_color);
  }
  
  /* 有効期限の部分 */
  .coupon_box table tr td.coupon_meta_title {
    width: 8em;
    background-color: var(--th_background_color);
    color: var(--th_character_color);
  }
  
  .coupon_box table tr td.coupon_meta {
    background-color: var(--td_background_color);
    color: var(--td_character_color);
  }
  
  .e-04 .menu_area td {
    height: 3.5em;
  }
  
  .e-04 .menu_area .parent_title {
    height: auto;
    font-size: 120%;
  }
  
  
  
  /*  ブログ
  ---------------------------------------------------------------------------------------------------- */
  #nav-below div {
    border-color: var(--easys_standard_value009);
  }
  
  #nav-below .nav-next {
    padding: 0 0 0 10px;
  }
  
  #blog_main .entry-title {
    padding: 15px 20px 15px 20px;
    height: auto;
    background-image: url(../files/blog_title.png);
    background-position: center bottom;
    line-height: 1.5;
  }
  
  #blog_main .entry-title,
  #blog_main .entry-title a {
    color: var(--blog_title_color);
  }
  
  .img_size_thumb {
    overflow: hidden;
    width: 150px;
    height: 150px;
  }
  
  
  /*  地図
  ---------------------------------------------------------------------------------------------------- */
  #map_canvas {
    margin: 0 0 20px;
    width: 100%;
    height: 450px;
  }
  
  
  /*  googleカレンダー
  ---------------------------------------------------------------------------------------------------- */
  iframe[src^="https://calendar.google.com"] {
    border: none !important;
  }
  
  
  /* ページ内リンクアンカー位置調整 */
  a[id^="anchor"] {
    display: block;
    visibility: hidden;
    margin-top: -110px;
    height: 110px;
    content: "";
  }
  
  
  /*下記個人追記
  ---------------------------------------*/
  
  /* メール投稿ブロック画像幅調整 */
  .img_size_thumb {
    height: 150px;
  }
  
  small {
    box-sizing: border-box;
  }
  
  .flow_arr {
    height: 40px;
  }
  
  .grecaptcha-badge {
    visibility: hidden;
  }
  
  
  
  
  
  /*no_margin
  --------------------------------------- */
  /* 対象のマージンを消す */
  .easys_content.no_margin {
    margin: 0;
  }
  
  /* もし記事が割り込まれたらマージンを入れる */
  .easys_content.no_margin+.easys_content:not(.no_margin) {
    margin-top: 70px;
  }
  
  .easys_content.no_margin.nk_01 [class*="title"] {
    margin-bottom: 0;
    padding-bottom: 25px;
  }
  
  
  /*見出し
  ---------------------------------------*/
  /* .widget-title, .widget-title2 a,
  #blog_main .widget-area ul ul li a,
  #blog_main .entry-title,
  .headline_title,
  h3.entry_title, .entry_title, .entry_title h3, .entry-title,
  * .mid_entry_title,
  * .half_entry_title,
  * .short_entry_title,
  * .half_sub_entry_title,
  * .short_sub_entry_title,
  * .sub_entry_title,* .sub_entry_title h4,
  * .mid_sub_entry_title,
  * .inline_title{
     font-family: '游明朝','Yu Mincho','YuMincho','Hiragino Mincho ProN','Hiragino','Mincho Pro','HGS明朝E','メイリオ',serif;
      font-family:'Yu Gothic', '游ゴシック', 'YuGothic', '游ゴシック体', 'ヒラギノ角ゴ Pro W3', 'メイリオ',sans-serif;
  } */
  /*ローディング調整
  ---------------------------------------*/
  #progress .progress_image_wrap {
    display: block;
    position: absolute;
    bottom: calc(50% - 9px);
  }
  
  #progress .progress_image_wrap #progress_image {
    position: unset !important;
  }
  
  /*ローディングのバーは非表示へ。*/
  body #progress>#progress_bar {
    display: none;
  }
  
  #progress>#progress_text {
    font-size: 33px;
  }
  
  /*ローディング時の左右のイラスト*/
  #progress::before,
  #progress::after {
    content: "";
    display: block;
    position: absolute;
    top: calc(50% - 91px);
    width: 120px;
    height: 210px;
    pointer-events: none;
    background-position: center top;
    background-size: 100% auto;
    background-repeat: no-repeat;
    animation: css-shake-tb 2s infinite;
  }
  
  #progress::before {
    background-image: url(../files/loading_img01.png);
    left: calc(50% - 179px);
  }
  
  #progress::after {
    background-image: url(../files/loading_img02.png);
    left: calc(50% + 58px);
    animation-delay: -0.4s;
  }
  
  
  /* アニメーション共通設定
  ---------------------------------------- */
  
  /* デザインブロックスクロールギミック共通 */
  .design_block {
    position: absolute;
    transition: 1.3s ease 0s;
    pointer-events: none;
    background-repeat: no-repeat;
    background-position: center top;
    background-size: auto;
    opacity: 0;
    pointer-events: none;
  
    /* 
      top:0;
      left:calc(50% - 1000px);
      width:2000px;
      height:100%; */
  }
  
  .design_block.moved {
    transform: translate(0px, 0px)rotate3d(0, 0, 1, 0) !important;
    opacity: 1 !important;
    filter: blur(0px) !important;
    clip-path: inset(0) !important;
    -webkit-clip-path: inset(0) !important;
  }
  
  /*全体フェードイン　Dブロック・DBブロックは除外*/
  .easys_content:not(.nd_01):not(.ndb_01) .easys_content_inner {
    transition: all 1.3s ease 0s;
    transform: translate(0px, 100px);
    opacity: 0;
  }
  
  .easys_content:not(.nd_01):not(.ndb_01) .easys_content_inner.moved {
    transform: translate(0px, 0px);
    opacity: 1;
  }
  
  
  /*クリップパスで左から表示*/
  .clip-in {
    clip-path: inset(0 100% 0 0);
    transition: clip-path 1s;
  }
  
  
  /*ふわっとマスクで左から表示*/
  .f_img {
    opacity: 0;
    -webkit-mask-image: linear-gradient(90deg, #c9151e 0, #c9151e 80%, transparent 100%);
    -webkit-mask-repeat: no-repeat;
    -webkit-mask-size: 200% 100%;
    -webkit-mask-position: 200% 0;
    mask-image: linear-gradient(90deg, #c9151e 0, #c9151e 80%, transparent 100%);
    mask-repeat: no-repeat;
    mask-size: 200% 100%;
    mask-position: 200% 0;
  }
  
  .f_img.moved {
    opacity: 1;
    animation: 1.5s linear 0s 1 normal forwards maskFadeIn;
  }
  
  @keyframes maskFadeIn {
    0% {
      -webkit-mask-position: 200% 0;
      mask-position: 200% 0;
    }
  
    100% {
      -webkit-mask-position: 0 0;
      mask-position: 0 0;
    }
  }
  
  /*下からバウンスアップ　※画像はbeforeで入れてください。*/
  .bounce_in_up {
    opacity: 0;
  }
  
  .bounce_in_up.moved::before {
    animation: anime-bounce_in_up 1.0s ease 0s forwards normal;
  }
  
  @keyframes anime-bounce_in_up {
  
    0%,
    60%,
    75%,
    90%,
    100% {
      animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    }
  
    0% {
      opacity: 0;
      transform: translate3d(0, 3000px, 0) scaleY(5);
    }
  
    40% {
      opacity: 0;
    }
  
    60% {
      opacity: 1;
      transform: translate3d(0, -20px, 0) scaleY(0.9);
    }
  
    75% {
      transform: translate3d(0, 10px, 0) scaleY(0.95);
    }
  
    90% {
      transform: translate3d(0, -5px, 0) scaleY(0.985);
    }
  
    100% {
      transform: translateZ(0);
      opacity: 1;
    }
  }
  
  /*流れる画像*/
  @keyframes anime-bg {
    0% {
      transform: translateX(0%);
    }
  
    100% {
      transform: translateX(-25%);
    }
  }
  
  
  
  /* ローディング時、イラストに付与するアニメーション 
    下記プロパティを使用してください。
    animation: css-shake-tb 2s infinite;
  */
  @keyframes css-shake-tb {
    0% {
      transform: translate(0px, 3px);
    }
  
    5% {
      transform: translate(0px, -3px);
    }
  
    10% {
      transform: translate(0px, 4px);
    }
  
    15% {
      transform: translate(0px, -4px);
    }
  
    20% {
      transform: translate(0px, 3px);
    }
  
    25% {
      transform: translate(0px, -3px);
    }
  
    30% {
      transform: translate(0px, 0px);
    }
  }
  
  /*---------------------------------------- */
  
  
  /*  ↓↓ セカンドメイン・ハーフバナー・大バナー　ボタン共通調整 ↓↓  
    
    ・セカンドメイン＞採用情報（※Top）ncivlutzhxh3s184eseh
    ・バナー＞施工実績/GATEN職（※Top）r9b9b0ruw9xjgldkhko3
    ・バナー＞お問い合わせ（※Top）aboghbc5031nzqgtyk2z
    ・バナー＞GATEN職（※recruit）eanmeacnw4xqz0d69mkp
    ==================================================================================*/
  
  /* ================================================================
     セカンドメイン-ボタン下部の線
  ==================================================== */
  #ncivlutzhxh3s184eseh .eyecatch:before {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 1px;
    background-color: #b8c0cb;
  }
  
  #ncivlutzhxh3s184eseh .eyecatch:after {
    content: "";
    position: absolute;
    bottom: 0;
    right: 0;
    width: 0;
    height: 1px;
    transition: width 0.3s ease;
    background-color: #004093;
  }
  
  #ncivlutzhxh3s184eseh .eyecatch:hover::after {
    left: 0;
    width: 100%;
  }
  
  
  
  /* ================================================================
     Dブロック共通　ボタン右の矢印
  ==================================================== */
  #ncivlutzhxh3s184eseh .eyecatch a,
  #r9b9b0ruw9xjgldkhko3 .eyecatch a,
  #aboghbc5031nzqgtyk2z .eyecatch a,
  #eanmeacnw4xqz0d69mkp .eyecatch a {
    display: block;
    position: relative;
  }
  
  #ncivlutzhxh3s184eseh .eyecatch a::before,
  #r9b9b0ruw9xjgldkhko3 .eyecatch a::before,
  #aboghbc5031nzqgtyk2z .eyecatch a::before,
  #eanmeacnw4xqz0d69mkp .eyecatch a::before,
  #ncivlutzhxh3s184eseh .eyecatch a::after,
  #r9b9b0ruw9xjgldkhko3 .eyecatch a::after,
  #aboghbc5031nzqgtyk2z .eyecatch a::after,
  #eanmeacnw4xqz0d69mkp .eyecatch a::after {
    content: " ";
    display: block;
    position: absolute;
    top: calc(100%*(26/60));
    right: calc(100%*(10/500));
    width: calc(100%*(25/500));
    height: calc(100%*(20/60));
    pointer-events: none;
  }
  
  /* =====================
     それぞれの初期状態（通常時）
       ここに書いたtransitionが「ホバーを外した時」の動きになります。
  ======================== */
  /* OFFの矢印（通常時） */
  #ncivlutzhxh3s184eseh .eyecatch a::before,
  #r9b9b0ruw9xjgldkhko3 .eyecatch a::before,
  #aboghbc5031nzqgtyk2z .eyecatch a::before,
  #eanmeacnw4xqz0d69mkp .eyecatch a::before {
    background: url(../files/secondmain_btn_arr_off.png) no-repeat top center/100%;
    opacity: 1;
    transform: translateX(0);
    transition: opacity 0.3s ease-out 0s, transform 0s cubic-bezier(0.65, 0.01, 0.3, 0.97) 0s;
  }
  
  /* ONの矢印（通常時は透明にして左に待機させておく） */
  #ncivlutzhxh3s184eseh .eyecatch a::after,
  #r9b9b0ruw9xjgldkhko3 .eyecatch a::after,
  #aboghbc5031nzqgtyk2z .eyecatch a::after,
  #eanmeacnw4xqz0d69mkp .eyecatch a::after {
    background: url(../files/secondmain_btn_arr_on.png) no-repeat top center/100%;
    opacity: 0;
    transform: translateX(-50%);
    transition: opacity 0.3s ease-in, transform 0.3s cubic-bezier(0.65, 0.01, 0.3, 0.97) 0.3s;
  }
  
  /* ===================
     ホバー時の動き
     ※ここに書いたtransitionが「ホバーした時」の動きになります。
  ====================== */
  #ncivlutzhxh3s184eseh .eyecatch a:hover::before,
  #r9b9b0ruw9xjgldkhko3 .eyecatch a:hover::before,
  #aboghbc5031nzqgtyk2z .eyecatch a:hover::before,
  #eanmeacnw4xqz0d69mkp .eyecatch a:hover::before {
    opacity: 0;
    transform: translateX(50%);
    transition: opacity 0.2s ease-in, transform 0.4s cubic-bezier(0.65, 0.01, 0.3, 0.97);
  }
  
  #ncivlutzhxh3s184eseh .eyecatch a:hover::after,
  #r9b9b0ruw9xjgldkhko3 .eyecatch a:hover::after,
  #aboghbc5031nzqgtyk2z .eyecatch a:hover::after,
  #eanmeacnw4xqz0d69mkp .eyecatch a:hover::after {
    opacity: 1;
    transform: translateX(0);
    transition: opacity 0.2s ease-out 0.2s, transform 0.2s cubic-bezier(0.65, 0.01, 0.3, 0.97) 0.2s;
  }
  
  
  /* ===================================================================================================================
  ↓↓デザインブロック　共通設定
  ------------------------------------------------------------------------------------------------------------------- */
  #dkhipn3k5lw8kkpyvvos,
  #ih065iz91k9c2efatuuu {
    background-repeat: no-repeat;
    background-position: center top;
    position: relative;
  }
  
  #dkhipn3k5lw8kkpyvvos .easys_content_inner,
  #ih065iz91k9c2efatuuu .easys_content_inner {
    opacity: 1;
    top: 0px;
    width: 1300px;
  }
  
  #dkhipn3k5lw8kkpyvvos .post_margin,
  #ih065iz91k9c2efatuuu .post_margin {
    margin: 0;
  }
  
  #dkhipn3k5lw8kkpyvvos .entry_post,
  #ih065iz91k9c2efatuuu .entry_post {
    box-sizing: border-box;
  }
  
  #dkhipn3k5lw8kkpyvvos .entry_post>[class*="title"],
  #ih065iz91k9c2efatuuu .entry_post>[class*="title"] {
    display: none;
  }
  
  #dkhipn3k5lw8kkpyvvos .text_box,
  #ih065iz91k9c2efatuuu .text_box {
    float: none !important;
    height: auto;
    overflow: visible;
    position: relative;
    width: 100%;
  
    /*フェードイン*/
    transform: translate(0, 100px);
    opacity: 0;
    transition: all 1s ease;
  }
  
  #dkhipn3k5lw8kkpyvvos .text_box.moved,
  #ih065iz91k9c2efatuuu .text_box.moved {
    transform: translate(0, 0);
    opacity: 1;
  }
  
  #dkhipn3k5lw8kkpyvvos .post_data,
  #ih065iz91k9c2efatuuu .post_data {
    display: block;
    float: none !important;
    margin: 0;
    overflow: visible;
  }
  
  /* デザインブロック共通ボタン-ブロック内リンク */
  #dkhipn3k5lw8kkpyvvos [class*="_btn"],
  #ih065iz91k9c2efatuuu [class*="_btn"] {
    margin: 13px 0 0 -6px;
    position: relative;
    padding: 0;
    width: fit-content;
    height: fit-content;
  }
  
  #dkhipn3k5lw8kkpyvvos [class*="_btn"] a,
  #ih065iz91k9c2efatuuu [class*="_btn"] a {
    background: url(../files/design01_btn.png) no-repeat center top;
    font-size: 0;
    display: block;
    padding: 0;
    position: relative;
    text-indent: -9999px;
    width: 540px;
    height: 60px;
  }
  
  #dkhipn3k5lw8kkpyvvos [class*="_btn"] a::after,
  #ih065iz91k9c2efatuuu [class*="_btn"] a::after {
    background: url(../files/design01_btn_on.png) no-repeat center top;
  }
  
  
  
  /* ========================================
     デザブロ-ボタン下部の線
  ======================= */
  #main .ndb_01 [class*="_btn"]:before {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 1px;
    background-color: #c0c1c3;
  }
  
  #main .ndb_01 [class*="_btn"]:after {
    content: "";
    position: absolute;
    bottom: 0;
    right: 0;
    width: 0;
    height: 1px;
    transition: width 0.3s ease;
    background-color: #004093;
  }
  
  #main .ndb_01 [class*="_btn"]:hover::after {
    left: 0;
    width: 100%;
  }
  
  /* ================================================================
     デザブロ-ボタン右の矢印　（セカンドメインと動きはほぼ同じ）
  ==================================================== */
  #main .ndb_01 [class*="_btn"] a {
    display: block;
  }
  
  #main .ndb_01 [class*="_btn"] a::before,
  #main .ndb_01 [class*="_btn"] a::after {
    content: " ";
    display: block;
    position: absolute;
    top: calc(100%*(26/60));
    right: calc(100%*(10/540));
    width: calc(100%*(25/540));
    height: calc(100%*(20/60));
    pointer-events: none;
  }
  
  /* ------------------
     デザブロ-ボタン
     それぞれの初期状態（通常時）
       ここに書いたtransitionが「ホバーを外した時」の動きになります。
  --------------------- */
  /* OFFの矢印（通常時） */
  #main .ndb_01 [class*="_btn"] a::before {
    background: url(../files/design01_btn_arr_off.png) no-repeat top center/100%;
    opacity: 1;
    transform: translateX(0);
    transition: opacity 0.3s ease-out 0s, transform 0s cubic-bezier(0.65, 0.01, 0.3, 0.97) 0s;
  }
  
  /* ONの矢印（通常時は透明にして左に待機させておく） */
  #main .ndb_01 [class*="_btn"] a::after {
    background: url(../files/design01_btn_arr_on.png) no-repeat top center/100%;
    opacity: 0;
    transform: translateX(-50%);
    transition: opacity 0.3s ease-in, transform 0.3s cubic-bezier(0.65, 0.01, 0.3, 0.97) 0.3s;
  }
  
  /* ------------------
     デザブロ-ボタン
     ホバー時の動き
     ※ここに書いたtransitionが「ホバーした時」の動きになります。
   ------------------ */
  #main .ndb_01 [class*="_btn"] a:hover::before {
    opacity: 0;
    transform: translateX(50%);
    transition: opacity 0.2s ease-in, transform 0.4s cubic-bezier(0.65, 0.01, 0.3, 0.97);
  }
  
  #main .ndb_01 [class*="_btn"] a:hover::after {
    opacity: 1;
    transform: translateX(0);
    transition: opacity 0.2s ease-out 0.2s, transform 0.2s cubic-bezier(0.65, 0.01, 0.3, 0.97) 0.2s;
  }
  
  
  /* ===========================================================================
     トップページ   pageID：6
  =========================================================================== */
  
  /*セカンドメイン＞採用情報（※Top）
  ncivlutzhxh3s184eseh
  --------------------------------------- */
  #ncivlutzhxh3s184eseh {
    position: relative;
    background: url(../files/secondmain_bg.jpg) no-repeat center top;
    height: 990px;
  }
  
  #ncivlutzhxh3s184eseh div {
    margin-bottom: 0;
    padding-bottom: 0;
  }
  
  #ncivlutzhxh3s184eseh .easys_content_inner {
    position: absolute;
    top: 0;
    left: calc(50% - 1000px);
    width: 2000px;
    overflow: visible;
  }
  
  #ncivlutzhxh3s184eseh .img_display {
    width: 500px;
    height: 60px;
    position: absolute;
    top: 607px;
    left: calc(50% - 250px);
  }
  
  #ncivlutzhxh3s184eseh .eyecatch a img {
    opacity: 1;
    position: relative;
  }
  
  
  #ncivlutzhxh3s184eseh .design_block.block1 {
    background-image: url(../files/secondmain_img01.png);
    width: 320px;
    height: 540px;
    top: 195px;
    left: 0;
    transform: translateX(-100px);
  }
  
  #ncivlutzhxh3s184eseh .design_block.block2 {
    background-image: url(../files/secondmain_img02.png);
    width: 470px;
    height: 540px;
    top: 195px;
    right: 0;
    transform: translateX(100px);
  }
  
  #ncivlutzhxh3s184eseh .design_block.block3 {
    background-image: url(../files/secondmain_ttl01.png);
    width: 600px;
    height: 150px;
    top: 258px;
    left: calc(50% - 299px);
  }
  
  #ncivlutzhxh3s184eseh .design_block.block4 {
    background-image: url(../files/secondmain_ttl02.png);
    width: 480px;
    height: 240px;
    top: 258px;
    left: calc(50% - 240px);
    transition-delay: 0.7s;
  }
  
  /*DB＞ウレタン吹付断熱を支えるM-style（※Top）
  dkhipn3k5lw8kkpyvvos
  --------------------------------------- */
  #dkhipn3k5lw8kkpyvvos {
    background-image: url(../files/design01_bg.jpg);
    height: 1200px;
  }
  
  #dkhipn3k5lw8kkpyvvos .entry_post {
    padding: 765px 170px 0px 596px;
    /*記事部分の位置調整*/
  }
  
  /*#dkhipn3k5lw8kkpyvvos .post_data {
    color: #333;
  }*/
  
  #dkhipn3k5lw8kkpyvvos .design_block.block1 {
    background-image: url(../files/design01_img01.jpg);
    width: 1300px;
    height: 290px;
    top: 201px;
    left: calc(50% - 649px);
  }
  
  #dkhipn3k5lw8kkpyvvos .design_block.block2 {
    background-image: url(../files/design01_img02.png);
    width: 420px;
    height: 510px;
    top: 406px;
    left: calc(50% - 718px);
    transform: translateX(100px);
  }
  
  #dkhipn3k5lw8kkpyvvos .design_block.block3 {
    background-image: url(../files/design01_img03.png);
    width: 410px;
    height: 600px;
    top: 406px;
    left: calc(50% - 413px);
    transform: translateX(-100px);
  }
  
  #dkhipn3k5lw8kkpyvvos .design_block.block4 {
    background-image: url(../files/design01_ttl01.png);
    width: 460px;
    height: 110px;
    top: 543px;
    left: calc(50% - 52px);
  }
  
  #dkhipn3k5lw8kkpyvvos .design_block.block5 {
    background-image: url(../files/design01_ttl02.png);
    width: 490px;
    height: 220px;
    top: 543px;
    left: calc(50% - 10px);
    transition-delay: 0.7s;
  }
  
  /*DB＞幅広い建物に対応する断熱工事（※Top）
  ih065iz91k9c2efatuuu
  --------------------------------------- */
  #ih065iz91k9c2efatuuu {
    height: 970px;
  }
  
  #ih065iz91k9c2efatuuu .entry_post {
    padding: 342px 170px 0px 653px;
    /*記事部分の位置調整*/
  }
  
  #ih065iz91k9c2efatuuu .post_data {
    color: #fff;
  }
  
  /*画像ループ*/
  #ih065iz91k9c2efatuuu .design_block.block1 {
    width: 2000px;
    height: 970px;
    top: 0;
    left: calc(50% - 1000px);
    opacity: 1;
  }
  
  #ih065iz91k9c2efatuuu .design_block.block1::before {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
    display: block;
    width: calc(2000 * 4px);
    height: 970px;
    background: url(../files/design02_bg.jpg) repeat-x left top;
    content: '';
    animation: anime-bg 60s linear 0s infinite;
    pointer-events: none;
  }
  
  #ih065iz91k9c2efatuuu .design_block.block2 {
    background-image: url(../files/design02_img01.png);
    width: 2000px;
    height: 970px;
    top: 0;
    left: calc(50% - 1000px);
    opacity: 1;
  }
  
  #ih065iz91k9c2efatuuu .design_block.block3 {
    width: 470px;
    top: calc(520px - 300px);
    left: calc(50% - 511px);
    height: calc(450px);
    padding-top: 300px;
  }
  
  #ih065iz91k9c2efatuuu .design_block.block3::before {
    background-image: url(../files/design02_img02.png);
    display: block;
    content: "";
    position: relative;
    width: 470px;
    height: 450px;
    top: 0;
    left: 0;
  }
  
  #ih065iz91k9c2efatuuu .design_block.block4 {
    background-image: url(../files/design02_ttl01.png);
    width: 440px;
    height: 140px;
    top: 299px;
    left: calc(50% - 480px);
  }
  
  #ih065iz91k9c2efatuuu .design_block.block5 {
    background-image: url(../files/design02_ttl02.png);
    width: 440px;
    height: 220px;
    top: 299px;
    left: calc(50% - 480px);
    transition-delay: 0.7s;
  }
  
  /*ボタン下部線色*/
  #main .ndb_01#ih065iz91k9c2efatuuu [class*="_btn"]:before {
    background-color: #6b8bb5;
  }
  
  #main .ndb_01#ih065iz91k9c2efatuuu [class*="_btn"]:after {
    background-color: #ffffff;
  }
  
  /*ボタン画像書き換え*/
  #ih065iz91k9c2efatuuu [class*="_btn"] {
    margin: 36px 0 0 -3px;
  }
  
  #ih065iz91k9c2efatuuu [class*="_btn"] a {
    background-image: url(../files/design02_btn.png);
    width: 480px;
    height: 50px;
  }
  
  /* OFFの矢印（通常時） */
  #main .ndb_01#ih065iz91k9c2efatuuu [class*="_btn"] a::before {
    background-image: url(../files/design02_btn_arr_off.png);
    top: calc(100% * 16 / 50);
    width: calc(100% * 25 / 480);
    height: calc(100% * 20 / 50);
  }
  
  /* ONの矢印*/
  #main .ndb_01#ih065iz91k9c2efatuuu [class*="_btn"] a::after {
    background-image: url(../files/design02_btn_arr_on.png);
    top: calc(100% * 16 / 50);
    width: calc(100% * 25 / 480);
    height: calc(100% * 20 / 50);
  }
  
  /*バナー＞施工実績/GATEN職（※Top）
  r9b9b0ruw9xjgldkhko3
  --------------------------------------- */
  #r9b9b0ruw9xjgldkhko3 {
    position: relative;
    height: 180px;
    margin: 166px 0;
  }
  
  #r9b9b0ruw9xjgldkhko3 div {
    margin: 0;
    padding: 0;
  }
  
  #r9b9b0ruw9xjgldkhko3 .field_2col::before,
  #r9b9b0ruw9xjgldkhko3 .field_2col .eyecatch::before {
    display: block;
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-position: center center;
    background-size: 100%;
    pointer-events: none;
  }
  
  #r9b9b0ruw9xjgldkhko3 .easys_content_inner {
    position: absolute;
    top: 0;
    left: calc(50% - 1000px);
    margin: 0 auto;
    width: 2000px;
    height: auto;
  }
  
  #r9b9b0ruw9xjgldkhko3 .img_display {
    width: 1300px;
    margin: 0 auto;
  }
  
  #r9b9b0ruw9xjgldkhko3 .field_2col {
    position: relative;
    width: 640px !important;
  }
  
  #r9b9b0ruw9xjgldkhko3 .eyecatch {
    width: 100%;
  }
  
  #r9b9b0ruw9xjgldkhko3 .eyecatch a img {
    opacity: 1;
    position: relative;
  }
  
  
  /*左側*/
  #r9b9b0ruw9xjgldkhko3 .field_2col.float_left::before {
    background-image: url(../files/bnrhalf_works_bg.jpg);
  }
  
  #r9b9b0ruw9xjgldkhko3 .field_2col.float_left .eyecatch::before {
    background-image: url(../files/bnrhalf_gaten_on.jpg);
    left: -100%;
    transition: var(--custom_transition);
  }
  
  #r9b9b0ruw9xjgldkhko3 .field_2col.float_left .eyecatch:hover::before {
    left: 0;
  }
  
  /*右側*/
  #r9b9b0ruw9xjgldkhko3 .field_2col.float_right::before {
    background-image: url(../files/bnrhalf_gaten_bg.jpg);
  }
  
  #r9b9b0ruw9xjgldkhko3 .field_2col.float_right .eyecatch::before {
    background-image: url(../files/bnrhalf_gaten_on.jpg);
    left: -100%;
    transition: var(--custom_transition);
  }
  
  #r9b9b0ruw9xjgldkhko3 .field_2col.float_right .eyecatch:hover::before {
    left: 0;
  }
  
  
  
  /*矢印*/
  #r9b9b0ruw9xjgldkhko3 .eyecatch a::before,
  #r9b9b0ruw9xjgldkhko3 .eyecatch a::after {
    background-image: url(../files/bnrhalf_arr.png);
    top: calc(100% * 120 / 180);
    right: calc(100% * 0 / 640);
    width: calc(100% * 60 / 640);
    height: calc(100% * 60 / 180);
    z-index: 1
      /*imgより上に重なるように指定*/
    ;
  }
  
  /*ホバー時の矢印の動きを微調整*/
  #r9b9b0ruw9xjgldkhko3 .eyecatch a:hover::before {
    transition: opacity 0.2s ease-in, transform 0.3s cubic-bezier(0.65, 0.01, 0.3, 0.97);
  }
  
  #r9b9b0ruw9xjgldkhko3 .eyecatch a:hover::after {
    transition: opacity 0.2s ease-out 0.3s, transform 0.3s cubic-bezier(0.65, 0.01, 0.3, 0.97) 0.2s;
  }
  
  #r9b9b0ruw9xjgldkhko3 .design_block.block1 {
    background-image: url(../files/bnrhalf_cover01.png);
    width: 200px;
    height: 340px;
    top: -94px;
    left: calc(50% - 625px);
    transform: translateX(-100px);
    z-index: 2;
  }
  
  #r9b9b0ruw9xjgldkhko3 .design_block.block2 {
    z-index: 2;
    background-image: url(../files/bnrhalf_cover02.png);
    width: 230px;
    height: 340px;
    top: -94px;
    left: calc(50% + 414px);
    transform: translateX(100px);
  }
  
  /*バナー＞お問い合わせ（※Top）
  aboghbc5031nzqgtyk2z
  --------------------------------------- */
  #aboghbc5031nzqgtyk2z {
    position: relative;
    height: 390px;
    margin: 166px 0;
  }
  
  #aboghbc5031nzqgtyk2z div {
    margin: 0;
    padding: 0;
  }
  
  #aboghbc5031nzqgtyk2z .field_1col::before,
  #aboghbc5031nzqgtyk2z .field_1col .eyecatch::before {
    display: block;
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-position: center center;
    background-size: 100%;
    pointer-events: none;
  }
  
  #aboghbc5031nzqgtyk2z .easys_content_inner {
    position: absolute;
    top: 200px;
    left: calc(50% - 1000px);
    margin: 0 auto;
    width: 2000px;
    height: auto;
  }
  
  #aboghbc5031nzqgtyk2z .img_display {
    width: 1300px;
    margin: 0 auto;
  }
  
  #aboghbc5031nzqgtyk2z .field_1col {
    position: relative;
    width: 100%;
  }
  
  #aboghbc5031nzqgtyk2z .eyecatch {
    width: 100%;
  }
  
  #aboghbc5031nzqgtyk2z .eyecatch a img {
    opacity: 1;
    position: relative;
  }
  
  /*バナー上部のイラスト*/
  #aboghbc5031nzqgtyk2z .design_block.block1 {
    background-image: url(../files/bnr_contact_cover02.png);
    width: 1300px;
    height: 390px;
    top: 0;
    left: calc(50% - 650px);
    z-index: 2;
    opacity: 1;
  }
  
  /*背景*/
  #aboghbc5031nzqgtyk2z .field_1col::before {
    background-image: url(../files/bnr_contact_bg.jpg);
  }
  
  /*ホバー時背景画像*/
  #aboghbc5031nzqgtyk2z .field_1col .eyecatch::before {
    background-image: url(../files/bnr_contact_on.jpg);
    left: -100%;
    transition: var(--custom_transition);
  }
  
  #aboghbc5031nzqgtyk2z .field_1col .eyecatch:hover::before {
    left: 0;
  }
  
  /*矢印*/
  #aboghbc5031nzqgtyk2z .eyecatch a::before,
  #aboghbc5031nzqgtyk2z .eyecatch a::after {
    width: calc(100% * 80 / 1300);
    height: calc(100% * 80 / 190);
    top: calc(100% * 55 / 190);
    right: calc(100% * 402 / 1300);
    background-image: url(../files/bnr_contact_arr.png);
    z-index: 2;
  }
  
  /*矢印の動きを微調整*/
  #aboghbc5031nzqgtyk2z .eyecatch a::after {
    transform: translateX(-35%);
  }
  
  
  /*イメージ画像（※Top）
  nlvwgia7d5y86dn91rsc
  --------------------------------------- */
  #nlvwgia7d5y86dn91rsc {
    position: relative;
    overflow: hidden;
    height: 600px;
  }
  
  #nlvwgia7d5y86dn91rsc div {
    margin-bottom: 0;
    padding-bottom: 0;
  }
  
  /* transformがあれば初期値にする */
  #nlvwgia7d5y86dn91rsc .easys_content_inner {
    position: relative;
    top: 0;
    left: calc(50% - 1000px);
    width: 2000px;
    transform: none;
    -webkit-clip-path: inset(0);
    clip-path: inset(0);
    height: 100%;
    backface-visibility: hidden;
  }
  
  #nlvwgia7d5y86dn91rsc [class*='field_']:nth-of-type(1) {
    height: 0;
  }
  
  #nlvwgia7d5y86dn91rsc [class*='field_']:nth-of-type(1) img {
    position: fixed;
    top: 0;
    left: 0;
    z-index: -100;
    width: 100vw;
    height: 100vh;
    object-fit: cover;
  }
  
  
  /* ===========================================================================
     採用情報   pageID：15
  =========================================================================== */
  /*バナー＞GATEN職（※recruit）
  eanmeacnw4xqz0d69mkp
  --------------------------------------- */
  #eanmeacnw4xqz0d69mkp {
    position: relative;
    height: 190px;
    margin: 166px 0;
  }
  
  #eanmeacnw4xqz0d69mkp div {
    margin: 0;
    padding: 0;
  }
  
  #eanmeacnw4xqz0d69mkp .field_1col::before,
  #eanmeacnw4xqz0d69mkp .field_1col .eyecatch::before {
    display: block;
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-position: center center;
    background-size: 100%;
    pointer-events: none;
  }
  
  #eanmeacnw4xqz0d69mkp .easys_content_inner {
    position: absolute;
    top: 0;
    left: calc(50% - 1000px);
    margin: 0 auto;
    width: 2000px;
    height: auto;
  }
  
  #eanmeacnw4xqz0d69mkp .img_display {
    width: 1300px;
    margin: 0 auto;
  }
  
  #eanmeacnw4xqz0d69mkp .field_1col {
    position: relative;
    width: 100%;
  }
  
  #eanmeacnw4xqz0d69mkp .eyecatch {
    width: 100%;
  }
  
  #eanmeacnw4xqz0d69mkp .eyecatch a img {
    opacity: 1;
    position: relative;
  }
  
  /*背景*/
  #eanmeacnw4xqz0d69mkp .field_1col::before {
    background-image: url(../files/bnr_gaten_bg.jpg);
  }
  
  /*ホバー時背景画像*/
  #eanmeacnw4xqz0d69mkp .field_1col .eyecatch::before {
    background-image: url(../files/bnr_gaten_on.png);
    left: -100%;
    transition: var(--custom_transition);
  }
  
  #eanmeacnw4xqz0d69mkp .field_1col .eyecatch:hover::before {
    left: 0;
  }
  
  /*矢印*/
  #eanmeacnw4xqz0d69mkp .eyecatch a::before,
  #eanmeacnw4xqz0d69mkp .eyecatch a::after {
    width: calc(100% * 80 / 1300);
    height: calc(100% * 80 / 190);
    top: calc(100% * 55 / 190);
    right: calc(100% * 400 / 1300);
    background-image: url(../files/bnr_gaten_arr.png);
    z-index: 2;
  }
  
  /*矢印の動きを微調整*/
  #eanmeacnw4xqz0d69mkp .eyecatch a::after {
    transform: translateX(-35%);
  }
  
  
  /*バナー余白調整※上下にきた場合の余白設定
  ---------------------------------------*/
  #content .adjacent1 {
    margin: 150px 0 20px !important;
  }
  
  #content .adjacent2 {
    margin: 20px 0 150px !important;
  }
  
  #content .last_block {
    margin-bottom: 150px !important;
  }