@charset "utf-8";
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100;300;400;500;700;900&display=swap');

/*
 * PC用スタイルCSS
 */


/* ↓↓　雛形　レイアウトにあわせて追記・上書きして下さい　↓↓
   後々解読が面倒になるので、必要な箇所のみ記述すること
  （例：背景がPNGになるなら background-image: url("/files/xx_bg.png");　など） */




/* ===================================================================================================================
   ■ 全体
------------------------------------------------------------------------------------------------------------------- */
html {
  background: none #151515;
  scroll-padding-top: 70px;
  scroll-behavior: smooth;
}

/*Safariのみ iPadでフォントサイズが変化しないように対策*/
_:lang(x) + _:-webkit-full-screen-document,
body {
          text-size-adjust: none;
  -webkit-text-size-adjust: none;
}

body {

  background: url("/files/body_bg.jpg") no-repeat center top/100%;

  color: #f0f1f4;
  position: relative;/* 2000pxを超える画面の対策 */
  min-width: 1300px !important;
  max-width: 2000px !important;
  margin: 0 auto;
  font-family: 'Noto Sans JP', sans-serif;

}
body#page_6 {
  background: none transparent;
}

#wrapper {
  background: none transparent;
}
#outer_block {
  background: none transparent;
}

a:link, a:visited, a:hover, a:active {
color: #0055d5;
}

/* A～Cブロック記事内リンクボタン */
.main_btn a,
.sub_text_btn a {
  background-color: #0055d5;
  color: #fff;
}


/* ===================================================================================================================
   ■ ヘッダー
------------------------------------------------------------------------------------------------------------------- */
#branding_box {
  height: 0px;
  background: none transparent;
  padding: 0;
  position: relative;
  z-index: 500;
  padding: calc(100% * (640/2000)) 0 0 0;

}
#page_6 #branding_box {
  height: 0px;
  padding: calc(100% * (1035/2000)) 0 0 0;
  background: url("/files/main_catch.png") no-repeat center bottom/100%;
}
/* ヘッダーのH1～グローバルナビの高さ調整 */
#header_information {height: px;}
#page_6 #header_information {height: px;}

/*  H1テキスト
---------------------------------------------------------------------------------------------------- */

/*自由に位置設定したいとき*/
#site-description {
  margin: 0 auto;
  width: auto;
  position: absolute;
  z-index: 610;
  top: 15px;
  right: 25px;
  /*位置　レスポンシブ有り*/
  /*
  top: calc(145 / 900 * 100%);
  left: calc(105 / 2000 * 100%);
  */
  }
  
  #page_6 #site-description {
    top: 15px;
    right: 25px
  /*
  top: calc(145 / 900 * 100%);
  left: calc(105 / 2000 * 100%);
  */
  }

#site-description a {
  display: inline;
  color: #f0f1f4/*要変更：H1テキストカラー*/;
}

/*  サイトロゴ
---------------------------------------------------------------------------------------------------- */
.main_header, .header_class {
  width: 960px;
  margin: 0 auto;
  padding: 0;
}
.main_header img, .header_class img {
  width: 85px;
  height: 60px;
  position: absolute;
  top: 10px;
  left: 9px;
  margin: auto;
  background: url('/files/branding_box.png') center top /100%;
  z-index: 600;
}

#page_6 .main_header img, #page_6 .header_class img {
  width: calc(100%*(180/2000));
  height: calc(100%*(130/1090));
  position: absolute;
  background:none;
  top: calc(100%*(480/1090));
  left: calc(100%*(90/2000));
  margin: auto;
}





/*固定時*/
.main_header img.fixed,
#page_6 .main_header img.fixed{
  position: fixed;
  top: 0;
  left: 0;
  z-index: 600;
  width: 85px !important;
  height: 60px !important;
  margin-top: 10px !important;
  margin-left: 9px !important;
}


/*  グローバルナビ
---------------------------------------------------------------------------------------------------- */


#access {
  width: 100%;
  z-index: 590;
  height: 60px;
  margin: 0 auto;
  position: absolute;
  margin: 0 auto;
  top: 0;
  background: none transparent;
}

/*ナビ上からの位置　メイン画像の下にナビがあるとき*/
/*#access {
padding: calc(100% * (730/2000)) 0 0 0;
}
#page_6 #access {
padding: calc(100% * (1035/2000)) 0 0 0;
}
*/


#access .menu-header{
  width: 660px;
  height: 60px;
  /* margin: 0 calc(180 / 2000 * 100%) 0 auto; */
  margin: 10px auto 0 95px;
}

/*6列グローバルナビ*/
/* 親ボタンの背景画像、高さなど　全サイズ共通 */
div#access .menu-item a {
  background-image: url('/files/topnavi.png');
  background-repeat: no-repeat;
  background-position: scroll;
  background-color: transparent;
  width: 110px;
  height: 60px;
  margin: 0px;
  padding: 0px;
}

div#access .gnavi11 a { background-position: left top;}
div#access .gnavi12 a { background-position: -110px top; }
div#access .gnavi13 a { background-position: -220px top;}
div#access .gnavi14 a { background-position: -330px top; }
div#access .gnavi15 a { background-position: -440px top;}
div#access .gnavi16 a { background-position: right top;}



/*ナビ下に線を出す*/
div#access .menu-item {position: relative;}
div#access .menu-item a:after {
  display: block;
  content: "";
  background: none #fff; /*線の色*/
  width: 0;
  height: 1px;
  position: absolute;
  left: 0;
  right: 0;
  bottom: 6px;
  margin: 0 auto;
  transition: all 0.25s ease 0s;
}
div#access a:hover:after { width: 80px; }/*線の長さ*/

/*プルダウンはナビ下線非表示*/
div#access .menu-item .sub-menu a:after{display: none;}

/* div#access .gnavi11 a:hover { background-position: left bottom;}
div#access .gnavi12 a:hover { background-position: -110px bottom; }
div#access .gnavi13 a:hover { background-position: -220px bottom;}
div#access .gnavi14 a:hover { background-position: -330px bottom;}
div#access .gnavi15 a:hover { background-position: -440px bottom;}
div#access .gnavi16 a:hover { background-position: right bottom;} */

/*固定時用ナビ*/
#access.fixed{
  position: fixed;
  top: 0;
  left: 0;
  height: 70px;
  background: url('/files/branding_box.png') rgba(0,0,0,0.75) no-repeat left 10px top 10px;
  min-width: 1300px;/*ロゴが左端にある時、ナビがロゴに重ならないように調整*/
  z-index: 500;
}
#access.fixed .menu-header{
  position: relative;
  float: none;/*ロゴが左端にある時、ナビがロゴに重ならないように調整するために float: none;にする*/
  max-width: 2000px;
  transform: none !important;/*レスポンシブ無しにするため*/
}

/* 親ボタンの背景画像、高さなど　全サイズ共通 */
div#access .menu-item a, div#access .menu-item a:hover {
  background-color: transparent;
  height: 60px;
  line-height: 60px;
}

/* プルダウンメニューのサイズ */
#access ul.menu ul.sub-menu {
  top: 60px;
  width: px;
}
#access ul.menu ul.sub-menu,
#access ul.menu ul.sub-menu li {
  min-width: px;
  width: px;
}

/* プルダウンメニューの色　16進数、RGBA両方変更すること */
div#access ul.sub-menu li.sub-gnavi a, div#access ul.sub-menu li.sub-gnavi2 a {
  background: none #fff;
  background: none rgba(255, 255, 255, 0.75);
  filter: alpha(opacity=75); /* ie 6 7 */
  -ms-filter: "alpha(opacity=75)"; /* ie 8 */
  width: px;
  color: #333;
}
#access ul li.current_page_item > a, #access ul li.current-menu-ancestor > a,
#access ul li.current-menu-item > a, #access ul li.current-menu-parent > a {
  color: #333;
}
div#access ul.sub-menu li.sub-gnavi a:hover, div#access ul.sub-menu li.sub-gnavi2 a:hover {
  background: none #fff;
  background: none rgba(255, 255, 255, 0.75);
  filter: alpha(opacity=75); /* ie 6 7 */
  -ms-filter: "alpha(opacity=75)"; /* ie 8 */
  color: #666;
}
#access ul li.current_page_item > a:hover, #access ul li.current-menu-ancestor > a:hover,
#access ul li.current-menu-item > a:hover, #access ul li.current-menu-parent > a:hover {
  color: #666;
}

/* IE7 hack */
*:first-child+html div#access ul.sub-menu li.sub-gnavi a,
*:first-child+html div#access ul.sub-menu li.sub-gnavi2 a {
  background-color: #fff;
}
*:first-child+html div#access ul.sub-menu li.sub-gnavi a:hover,
*:first-child+html div#access ul.sub-menu li.sub-gnavi2 a:hover {
  background-color: #fff;
}

/* IE9 hack */
div#access ul.sub-menu li.sub-gnavi a:not(:target),
div#access ul.sub-menu li.sub-gnavi2 a:not(:target),
div#access ul.sub-menu li.sub-gnavi a:not(:target):hover,
div#access ul.sub-menu li.sub-gnavi2 a:not(:target):hover {
  filter: none;
  -ms-filter: none;
}

/*  メイン画像
---------------------------------------------------------------------------------------------------- */
#main_teaser,
#video_teaser,
#jquery_slider_pc {
  width: 100%;
  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: 1300px;
  max-width: 2000px;
}
#main_teaser img,
#video_teaser #video_teaser_inner video,
#jquery_slider_pc .viewer img {
  width: 100%;
}

/* ===================================================================================================================
   ■ サイド
------------------------------------------------------------------------------------------------------------------- */
/* サイドナビ　タイトル */
.widget-title, .widget-title2 a {
  padding: 0;
  text-align: center;
  color: #ffffff;
}
.widget-title2 a:link, .widget-title2 a:visited,
.widget-title2 a:hover, .widget-title2 a:active {
  color: #ffffff;
}

/* サイドナビ　メニュー部分 */
#blog_main .widget-area ul ul li a {
  background-image: url(/files/widget_list_bg.png);
  color: #00b2ff;
  overflow: hidden;
  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 {
  background: none transparent;
  border-width: 0 0 1px;
  border-style: dotted;
  border-color: #333333;
  line-height: 2;
  padding: 5px;
}
#wp-calendar tbody td a { text-decoration: underline; }
#wp-calendar tbody td a:hover { text-decoration: none; }




/* ===================================================================================================================
   ■ フッター
------------------------------------------------------------------------------------------------------------------- */
#footer_block {
  background-image: url(/files/footer_bg.jpg);
  background-position: center top;
  height: 540px;
}
#footer_box {
  background: url(/files/footer_box_bg.png) no-repeat center top;
  height: 540px;
  position: relative;
}

#footer_box,#footer_sitemap_block,#footer-widget-area, .footer_infomation{
  width: 100%;
  margin: 0 auto;
}
#footer-widget-area{/*フッターナビの所*/
  display: block;
  text-align: left;
  position: relative;
  left: calc(50% - 659px);
}
/*  フッターナビ
---------------------------------------------------------------------------------------------------- */
#footer_sitemap_block {
  /* フッターナビの上余白はここで調整 */
  position: absolute;
  bottom: 240px;
  margin: 0 auto;
  /* position: relative; */
}
#footer-widget-area .widget-area ul.menu {
  border-color: transparent;
}
#footer-widget-area .widget-area .menu-item a {
  border-color: transparent;
  color: #f0f1f4;
  font-size: 16px;
}
#footer-widget-area .widget-area .menu-item a:hover {
  background-color: transparent;
}

/*ナビ縦並び２列*/
#footer-widget-area .widget-area ul.menu {
  border: none;
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
  height: 130px;/*表示させたいナビまでの高さ*/
  align-content: space-between;
  width: 300px;/*2列間の隙間の広さ調整*/
}

#footer-widget-area .widget-area {
  text-align: left;
}

#footer-widget-area .widget-area .menu-item {
  margin: 0px 0 14px;
  background: url(/files/footernavi_top.png) no-repeat left top -1px;
  padding-left: 18px;
}

/*  フッター情報
---------------------------------------------------------------------------------------------------- */
.footer_infomation {
  display: block;
  margin: 0 auto;
  text-align: left;
}
#footer_information .entry-post {
  width: 100%;
  margin: 400px 0 0;/*住所の上からの位置*/
  text-align: left;
  color: #f0f1f4;
/* テキスト左寄せ用
  margin: 40px 0 0 320px;
*/
  position: relative;
  left: calc(50% - 650px);
}

/*  フッターSNSボタン
---------------------------------------------------------------------------------------------------- */
#footer_sns_btn {
  margin: 20px auto 0;
}
#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: #f0f1f4;
  text-align: left;
  position: relative;
  bottom: 50px;
  left: calc(50% - 650px);
}


/*  フッターメニュー
---------------------------------------------------------------------------------------------------- */
.fixed_btn {z-index: 1000;}

.fixed_btn div,
.fixed_btn div a {height: 50px;width: 55px;}

.fixed_btn #fixed_btn_gtn,
.fixed_btn #fixed_btn_gtn a {/* height: 150px; */}

#float_top_btn{
  bottom: 20px
}

/* ===================================================================================================================
   ■ コンテンツ
------------------------------------------------------------------------------------------------------------------- */
#container_top {
  padding: 0;
}
#container_top.single_post {
  padding: 0 0 50px;
}

/*  見出し
---------------------------------------------------------------------------------------------------- */
.headline_title {
  background-image: url(/files/top_entry_title.png);
  color: #f0f1f4;
  height: 110px;
  padding-top: 16px;
  line-height: 110px;
}
h3.entry_title, .entry_title, .entry-title { /* サイズ、背景、余白などはこちら */
  background-image: url(/files/entry_title_bg.png);
  color: #ffffff;
}
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: #ffffff;
}
/* 見出しリンクボタン */
.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: 20px;
  color: #ffffff;
}


/* 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: #ffffff;}

* .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: #f0f1f4;}



/* B-03など小見出し用 */
* .sub_entry_title {
  background: url("/files/sub_entry_title_bg.png") no-repeat scroll left top transparent;
  color: #f0f1f4;
}
* .sub_entry_title a:link, * .sub_entry_title a:visited,
* .sub_entry_title a:hover, * .sub_entry_title a:active {
  color: #f0f1f4;
}
/* 小見出しリンクボタン */
.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: 20px;
  color: #f0f1f4;
}


/* C-01など3列表示インラインタイトル用 */
* .inline_title {
  background-image: url(/files/column3_title_bg.png);
}
* .inline_title,
* .inline_title a {color: #ffffff;}


/* クーポンの本文見出しなど、固定幅でないインラインタイトル用 */
.coupon_data .inline_title,
.c_04 .inline_title,
.i_01 .inline_title,
.j_01 .inline_title {
  background: none #333333;
  border: 1px solid #151515;
  border-radius: 5px;
  height: auto;
  line-height: 1.7;
  padding: 10px;
  text-align: left;
  font-size: 15px;
  color: #333333;
}

/* 詳細画面の下部「コメント」見出し */
.indent_border {
  border-color: #0055d5;
  width: 685px;
}


/* 大きな地図で見る */
small {
  border-color: #0055d5;
}
small a {
  width: 100%;
  padding: 5px 0;
  text-align: center !important;
  color: #0055d5 !important;
}

small a:hover {
  background-color: #0055d5 !important;
  color: #FFF !important;
}




/*  テーブル
---------------------------------------------------------------------------------------------------- */
.table_area td.td_name, .table_area td.td_value, /* Eブロック、Gブロック等 */
body.coupon .table_area td.td_name, body.coupon .table_area td.td_value, /* クーポンページ */
table.iqfm-table th, table.iqfm-table td /* お問合せ */ {
  border-color: #ccc;
}
.table_area td.td_name, body.coupon table.table_area td.td_name, .iqfm-table th {
  background: none #eee;
}
.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 {
  max-width: 300px;/*firefox 確認画面のはみ出し防止用*/
  background: none transparent;
}


/*  テーブル
---------------------------------------------------------------------------------------------------- */
.easys_content:not(.ne_01) table:not(#wp-calendar) tr > * {
  background: none #e1e1e1 !important;
  border-color: #151515;
  color: #151515;
}
.easys_content:not(.ne_01) table:not(#wp-calendar) tr > *:first-child,
.easys_content:not(.ne_01) table:not(#wp-calendar) tr > th {
  background: none #333 !important;
  color: #f0f1f4;
}

/*メール送信後メッセージボックスのボーダー（デフォルト：グリーン）*/
div.wpcf7-mail-sent-ok {
  border-color: #0055d5 !important;
}

/* Dメニュー下線 */
.td_cell {
  border-color: #ccc;
  vertical-align: top;
}

.table_area table tr td {
  background: none transparent;
}




/*  ページ遷移ボタン（詳細ブロックやページ送りのナビ用）
---------------------------------------------------------------------------------------------------- */
.tablenav { padding: 1em 0; }
a.page-numbers, .tablenav .current,
.permalink_in a, .pageback a,
.page_up a {
  background: none transparent;
  border-style: solid;
  border-color: #0055d5;
  color: #0055d5 !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 #fff;
  background: none transparent;
}
.tablenav .next:hover, .tablenav .next:active,
.tablenav .prev:hover, .tablenav .prev:active {
  background-color: #0055d5;
  border-color: #0055d5;
}
.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 {
  background: none #0055d5;
  border-style: solid;
  border-color: #0055d5;
  color: #fff !important;
} 



/*  ブロック
---------------------------------------------------------------------------------------------------- */
/* 各ブロック点線 */
.border_margin,
.anchor_list ul li,
.cu_mail_block,
.blog_post,
.list_block .list_box {
  border-color: #333333;
}


/* Cブロック */
.c_01, .c_02, .c_03, .c_05, .c_06 {
  display: inline-block;
  *display: inline;
  *zoom: 1;
  width: 100%;
  padding: 0 0 20px;
  *padding: 0 0 30px;
}
.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-size: 13px;
  font-weight: bold;
}
.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;
  _width: 100%;
}



/* Z-I スライドショー */
.z_j1 { margin: 0 0 15px; }


/* Z_L お知らせブロック */
.Z_l1 .date_area {
  font-size: 13px;
  font-weight: bold;
}
.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 {
  background-color: transparent;
  border: 1px solid #0055d5;
  color: #0055d5;
}
div.link_list a:hover {
  background-color: #0055d5;
  border: 1px solid #0055d5;
  color: #fff;
}


.faq-title {
  background-color: #0055d5;
  font-weight: normal;
  color: #fff;
}



/*  メールフォーム
---------------------------------------------------------------------------------------------------- */
.iqfm-table td input[type="text"]:not([size]) {
  width: 75%;
}

/* 必須項目 */
.iqfm-req_color {
  color: #00b2ff;
}
.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: #151515;
}
/* 有効期限の部分 */
.coupon_box table tr td.coupon_meta_title {
  background-color: #333333;
  width: 8em;
  color: #333333;
}
.coupon_box table tr td.coupon_meta {
  background-color: #e1e1e1;
  color: #151515;
}
.e-04 .menu_area td {
  height: 3.5em;
}
.e-04 .menu_area .parent_title {
  font-size: 120%;
  height:  auto;
}



/*  ブログ
---------------------------------------------------------------------------------------------------- */
#nav-below div { border-color: #000; }
#nav-below .nav-next { padding: 0 0 0 10px; }

#blog_main .entry-title {
  background-image: url(/files/blog_title.png);
  background-position: center bottom;
  height: auto;
  padding: 15px 20px 15px 20px;
  line-height: 1.5;
}
#blog_main .entry-title,
#blog_main .entry-title a {
    color: #f0f1f4;
}



/*  ローディング画面
---------------------------------------------------------------------------------------------------- */
.black-screen {
  background-color: #000000;
}

.black-screen > .inner {
  top: calc(50vh - (5vw / 2));
  width: 3vw;
  height: 3vw;
  background-image: url("/files/loading.svg");
}


/*  地図
---------------------------------------------------------------------------------------------------- */
#map_canvas {
  width: 100%;
  height: 450px;
  margin: 0 0 20px;
}

/*  googleカレンダー
---------------------------------------------------------------------------------------------------- */
iframe[src^="https://calendar.google.com"] {
  border: none !important;
}


/*ページ内リンクアンカー位置調整*/
a[name^="anchor"] {
  content: "";
  display: block;
  height: 110px;
  margin-top: -110px;
  visibility: hidden;
}

/*contactフォーム用セキュリティマーク　非表示*/
.grecaptcha-badge { visibility: hidden; }


/* ============================== ↓↓各ブロックの個別CSSはこちらに記述↓↓ ============================== */

/*上下左右フェードインギミック------------------------------------*/
.f_up,.f_down ,.f_left ,.f_right {
  opacity: 0;
  transform-origin: center;
  transition: 1s ease 0s;
}
.moved{
  top:0;
  opacity: 1;
}

.f_up {
  transform: translate(0px, -100px);
}
.f_down {
  transform: translate(0px, 100px);
}
.f_left {
  transform: translate(-100px, 0px);
}
.f_right {
  transform: translate(100px, 0px);
}
.moved {
  transform: translate(0px, 0px);
}



/*  トップページ
---------------------------------------------------------------------------------------------------- */

/*  ○○○
---------------------------------------------------------------------------------------------------- */

/* セカンドメイン --------------------------------------------------------*/
#page_6 #outer_block {
  padding-top: 0;/*スライダー下の余白を消す*/
}
#kd4ka3cb1wkxemqtxnku {
  background: url(/files/2ndmain_bg.jpg) no-repeat center top / 100%;/*セカンドメイン背景画像*/
  max-height: 1080px;/*セカンドメイン画像の高さ*/
  min-height: calc(1080px * (1300 / 2000));/* 1215＝セカンドメイン画像の高さ*/
  height: calc(100vw * ((1080 - 15) / 2000));/* 1215＝セカンドメイン画像の高さ*/
  position: relative;/*ボタン位置調整用*/
}
#kd4ka3cb1wkxemqtxnku div { margin-bottom: 0; padding-bottom: 0;}
#kd4ka3cb1wkxemqtxnku .easys_content_inner { width: 100%;}
/*ボタン　管理画面ではなくCSSで入れる場合--------------------------------------------*/
/*スマホ用画像非表示*/
#kd4ka3cb1wkxemqtxnku .eyecatch img{display: none;}
#kd4ka3cb1wkxemqtxnku .eyecatch{
    display: block;
    position: absolute;
    top: 0;/*marginで調整するためにいったん位置リセット*/
    left: 0;/*marginで調整するためにいったん位置リセット*/
    width: calc(340 / 2000 * 100%);/*ボタン画像幅÷2000*/
    z-index: 10;
    height: calc(100 / 1080 * 100%);/*ボタン画像高さ÷バナー背景画像高さ730px*/
    margin-top: calc(420 / 2000 * 100%);/* PSD上での上と左余白を入力 */
    margin-left: calc(1200 / 2000 * 100%);/* 左余白を入力 */
}
#kd4ka3cb1wkxemqtxnku .eyecatch a{
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    /* background:url(/files/2ndmain_btn_moji.png)no-repeat center top/100%; */
    /* animation: 40s linear infinite circle1; */
}

/*時計回り*/
@keyframes circle1 {
  0% {transform: rotate(0deg);}
  100% {transform: rotate(360deg);}
}


#kd4ka3cb1wkxemqtxnku .eyecatch a{
    background:none;
}
/*オンオフ画像　一瞬消えない*/
#kd4ka3cb1wkxemqtxnku .eyecatch a:before,
#kd4ka3cb1wkxemqtxnku .eyecatch a:after{
  content: '';
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  transition: opacity 0.3s ease 0s;
  opacity: 1;/*ON画像非表示*/
}
/*OFF画像表示*/
#kd4ka3cb1wkxemqtxnku .eyecatch a:after{opacity:1;}
/*ホバー時*/
#kd4ka3cb1wkxemqtxnku .eyecatch a:hover:before{opacity: 1;}/*ON画像表示*/
#kd4ka3cb1wkxemqtxnku .eyecatch a:hover:after{opacity: 0;}/*Off画像非表示*/
/*OFF画像*/
#kd4ka3cb1wkxemqtxnku .eyecatch a:after{ background: url("/files/2ndmain_btn.png") no-repeat center top/100%;}
/*ON画像*/
#kd4ka3cb1wkxemqtxnku .eyecatch a:before{ background: url("/files/2ndmain_btn_on.png") no-repeat center top/100%;}






/*上下左右フェードイン　画像---------------------------------*/
#kd4ka3cb1wkxemqtxnku span {
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  /*z-index: -5;*/
  pointer-events: none;
}
/*画像1*/
#kd4ka3cb1wkxemqtxnku #bg01 {
  background: url(/files/2ndmain_img1.png) no-repeat center top / 100%;
  width: calc(930 / 2000 * 100%);/*画像幅÷背景画像幅*/
  height: calc(1105 / 1080 * 100%);/*画像高さ÷背景画像高さ*/
  margin-top: calc(0 / 2000 * 100%);/* PSD上での上と左余白を入力 */
  margin-left: calc(0 / 2000 * 100%);/* PSD上での上と左余白を入力 */
  z-index: 1;
}
/*画像2*/
#kd4ka3cb1wkxemqtxnku #bg02 {
    background: url(/files/2ndmain_img2.png) no-repeat center top/100%;
    width: calc(530 / 2000 * 100%);/*画像幅÷背景画像幅*/
    height: calc(480 / 1080 * 100%);/*画像高さ÷背景画像高さ*/
    margin-top: calc(582 / 2000 * 100%);/* PSD上での上と左余白を入力 */
    margin-left: calc(1470 / 2000 * 100%);/* PSD上での上と左余白を入力 */
    z-index: 0;
}


/*画像3*/
#kd4ka3cb1wkxemqtxnku #bg03 {
  background: url(/files/2ndmain_btn_moji.png) no-repeat center top/100%;
  width: calc(180 / 2000 * 100%);/*画像幅÷背景画像幅*/
  height: calc(180 / 1080 * 100%);/*画像高さ÷背景画像高さ*/
  margin-top: calc(385 / 2000 * 100%);/* PSD上での上と左余白を入力 */
  margin-left: calc(1385 / 2000 * 100%);/* PSD上での上と左余白を入力 */
  z-index: 1;
  animation: 40s linear infinite circle1;
}

/*時計回り*/
@keyframes circle1 {
  0% {transform: rotate(0deg);}
  100% {transform: rotate(360deg);}
}
/*  デザインブロック01
---------------------------------------------------------------------------------------------------- */

/* PC 背景付きブロックの記事画像 非表示  */
#i4pj601fw6780vbok7sr .entry_post:first-of-type .eyecatch {display: none;}
/* float 解除 */
#i4pj601fw6780vbok7sr .entry_post:first-of-type .float_left,
#i4pj601fw6780vbok7sr .entry_post:first-of-type .float_right{float: none;}
.easys_content .sub_post .float_left {float: left !important;}
.easys_content .sub_post .float_right {float: right !important;}
/* 1ブロック目 */
#i4pj601fw6780vbok7sr{/*デザイン背景画像*/
    background:none transparent;
    height: 1080px;/*背景画像の高さ*/
    position: relative;
}
#i4pj601fw6780vbok7sr *[class*="title"]{
    display: none;/*見出し非表示*/
}

#i4pj601fw6780vbok7sr .entry_post{
  margin-top: 675px;
}

#i4pj601fw6780vbok7sr .easys_content_inner{
  width: 710px;
}

#i4pj601fw6780vbok7sr .text_box{
    width: 660px;/*記事文章幅*/
    margin: 0 auto 0 0;/*記事位置調整　上下左右*/
    overflow: visible;
}

#i4pj601fw6780vbok7sr .text_box p{
  font-size: 16px;
  letter-spacing: 0.05em;
  line-height: calc(30/16);
  color: #f0f1f4;
}
/*ボタン*/
#i4pj601fw6780vbok7sr .main_btn a {
  border-radius: 0;
  padding: 0;
  display: block;
  text-indent: -9999px;
  width: 350px;
  height: 120px;
  background: url(/files/d_block_btn1.png) no-repeat center top;
  position: relative;
  margin: 0 auto 0 -56px;
  opacity: 1;
  transition: 0.3s;
}

#i4pj601fw6780vbok7sr .main_btn a:hover{
  opacity: 0.7;
}

/* #i4pj601fw6780vbok7sr .main_btn a::after{
  display: block;
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 3;
  opacity: 1;
  transition: 0.3s;
  background: url(/files/01_block01_btn_off.png) no-repeat center top;
}
#i4pj601fw6780vbok7sr .main_btn a:hover::after{
  opacity: 0;
} */


/*上下左右フェードイン　画像*/
#i4pj601fw6780vbok7sr span {
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  z-index: -5;
}
#i4pj601fw6780vbok7sr #bg01 {
  background: url(/files/d_block_title.png) no-repeat center top;
  z-index: 2;
  width: 1500px;/*画像幅*/
  height: 660px;/*画像高さ*/
  top: 15px;
  /* left: 500px; */
  left: calc(50% - 500px);
}


/*  デザインブロック02
---------------------------------------------------------------------------------------------------- */

/* PC 背景付きブロックの記事画像 非表示  */
#nv8a1uay03r0334527f3 .entry_post:first-of-type .eyecatch {display: none;}
/* float 解除 */
#nv8a1uay03r0334527f3 .entry_post:first-of-type .float_left,
#nv8a1uay03r0334527f3 .entry_post:first-of-type .float_right{float: none;}
.easys_content .sub_post .float_left {float: left !important;}
.easys_content .sub_post .float_right {float: right !important;}
/* 1ブロック目 */
#nv8a1uay03r0334527f3{/*デザイン背景画像*/
  background: url(/files/d_block_bg2.png) no-repeat center top;
    height: 1137px;/*背景画像の高さ*/
    position: relative;
}
#nv8a1uay03r0334527f3 *[class*="title"]{
    display: none;/*見出し非表示*/
}

#nv8a1uay03r0334527f3 .entry_post{
  margin-top: 510px;
}
#nv8a1uay03r0334527f3 .easys_content_inner{
  width: 660px;
}
#nv8a1uay03r0334527f3 .text_box{
    width: 660px;/*記事文章幅*/
    margin: 0 auto 0 0 0;/*記事位置調整　上下左右*/
    overflow: visible;
}

#nv8a1uay03r0334527f3 .text_box p{
  font-size: 16px;
  letter-spacing: 0.05em;
  line-height: calc(30/16);
  color: #f0f1f4;
}
/*ボタン*/
#nv8a1uay03r0334527f3 .main_btn a {
  border-radius: 0;
  padding: 0;
  display: block;
  text-indent: -9999px;
  width: 310px;
  height: 120px;
  background: url(/files/d_block_btn2.png) no-repeat center top;
  position: relative;
  margin: 0 auto 0px -60px;
  opacity: 1;
  transition: 0.3s;
}

#nv8a1uay03r0334527f3 .main_btn a:hover{
  opacity: 0.7;
}

/* #i4pj601fw6780vbok7sr .main_btn a::after{
  display: block;
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 3;
  opacity: 1;
  transition: 0.3s;
  background: url(/files/01_block01_btn_off.png) no-repeat center top;
}
#i4pj601fw6780vbok7sr .main_btn a:hover::after{
  opacity: 0;
} */


/*上下左右フェードイン　画像*/
#nv8a1uay03r0334527f3 span {
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  z-index: -5;
}
#nv8a1uay03r0334527f3 #bg01 {
  background: url(/files/d_block_title2.png) no-repeat center top;
  z-index: 2;
  width: 1480px;/*画像幅*/
  height: 488px;/*画像高さ*/
  top: 0;
  left: calc(50% - 500px);
  /* left: 520px; */
}


/*  バナー＞お問い合わせ
---------------------------------------------------------------------------------------------------- */


/*1列　お問い合わせ　レスポンシブ*/
#ojxjsf3cmnncnqv5ak4s .easys_content_inner{
    width: 100%;
    padding:0;
}
/*共通*/
#ojxjsf3cmnncnqv5ak4s .margin-bottom_50{
    margin-bottom: 0;
}
/*スマホ用バナー非表示*/
#ojxjsf3cmnncnqv5ak4s a img{
  display: none;
}
/*PCバナー画像*/
#ojxjsf3cmnncnqv5ak4s .eyecatch a{
  background:url("/files/bnr_contat_top.png") no-repeat center top/100%,
             url("/files/bnr_hover.png") no-repeat left -100vw top/100%,
             url("/files/bnr_contat_bg.png") no-repeat center top/100%;
  transition: background-position 0.5s ease 0s;
  display: block;
  width: 100vw;
  height: 16vw;
  min-height: 212px;
  min-width: 1316px;
}
/*ホバー時*/
#ojxjsf3cmnncnqv5ak4s .eyecatch a:hover{
  background-position: center top,left top,center top;
}

/*  バナー＞会社概要/お問い合わせ
---------------------------------------------------------------------------------------------------- */



/*  バナー
---------------------------------------------------------------------------------------------------- */
/*レスポンシブ*/

/* #yofi1npjsid0i4cl06im .easys_content_inner {
  width: 100%;
  padding: 0;
}
#yofi1npjsid0i4cl06im .field_2col {
  width: 50% !important;
  margin: 0;
}
#yofi1npjsid0i4cl06im .field_2col .eyecatch{
  display: block;
  width: 100%;
  height: 15.3vw;
  min-height: 200px;
}
#yofi1npjsid0i4cl06im .field_2col .eyecatch a{
  display: block;
  width: 100%;
  height: 15.3vw;
  min-height: 200px;
  transition: all 0.3s ease 0s;
} */

 #yofi1npjsid0i4cl06im .easys_content_inner {
  width: 1300px;
  padding: 0;
}
#yofi1npjsid0i4cl06im .field_2col {width: 650px !important;}
#yofi1npjsid0i4cl06im .eyecatch{width: 100%;}
#yofi1npjsid0i4cl06im .eyecatch a{
  display: block;
  position: relative; 
  width: 650px;
  transition: all 0.3s ease 0s;
  height: 230px;/*画面幅1200pxの時のmin-heightも書く*/
}


#yofi1npjsid0i4cl06im a img{/*スマホ用バナー非表示*/
  display: none;
}

/*ホバー時*/
#yofi1npjsid0i4cl06im .field_2col .eyecatch a:hover{
  background-position: center top,left top,center top;
}

/*事業内容/施工実績*/
#yofi1npjsid0i4cl06im .float_left a{
  background:url("/files/bnr_half_company_top.png") no-repeat center top/100%,
             url("/files/bnr_half_hover.png") no-repeat left -50vw top/100%,
             url("/files/bnr_half_company_bg.png") no-repeat center top/100%;
}

#yofi1npjsid0i4cl06im .float_right a{
  background:url("/files/bnr_half_contact_top.png") no-repeat center top/100%,
             url("/files/bnr_half_hover.png") no-repeat left -50vw top/100%,
             url("/files/bnr_half_contact_bg.png") no-repeat center top/100%;
}
