@charset "utf-8";

/*
 * スマホ用スタイルCSS
 */


/* =================================================================================================================== */
/* SPカスタムプロパティ */
:root {
  --basic_background_color:#ffffff;
  --body_text_color:#000000;
  --link_color:#f76b00;
  --border_color:#61c7fc;
  --table_border_color:#000000;
  --th_background_color:#cceeff;
  --td_background_color:#ffffff;
  --th_character_color:#000000;
  --td_character_color:#000000;
  --required_color:#e02a14;
  --navigation_background_color: #61c7fc;
  --navi_characters_color: #003c7d;
  --navigation_sub_color: #003c7d;
  --medium_page_background_color: #003978;
  --inside_page_text_color: #ffffff;
  --middle_page_border_color: transparent;
  --h2_heading_background_color: transparent;
  --h2_heading_text_color: #ffffff;
  --h2_heading_link_color: #ffffff;
  --h2_heading_border_color: transparent;
  --h3_heading_background_color: transparent;
  --h3_heading_text_color: #ffffff;
  --h3_heading_link_color: #ffffff;
  --h3_heading_border_color: transparent;
  --h4_subheading_background_color: #7c9eb9;
  --h4_subheading_text_color: #ffffff;
  --h4_subheading_link_color: #ffffff;
  --h4_subheading_border_color: #004da1;
  --inline_background_color: #f76b00;
  --inline_characters_color: #ffffff;
  --inline_link_color: #ffffff;
  --inline_border_color: transparent;
  --widget_heading_background_color: transparent;
  --widget_heading_text_color: transparent;
  --widget_heading_link_color: transparent;
  --widget_heading_border_color: transparent;
  --blog_heading_background_color: transparent;
  --blog_heading_text_color: transparent;
  --blog_heading_link_color: transparent;
  --blog_heading_border_color: transparent;
  --copyright_background_color: #013d7e;
  --copyright_characters_color: #ffffff;
  --kdb_background_color: #daf2ff;
}
/* 置換以外 */
:root {
  --easys_base_width: 640;/* EASYSの基準横幅(単位なし) */
  --easys_padding: 5%;/* EASYSの基本余白 */
  --easys_footer_h: calc(100vw * (112 / var(--easys_base_width)));/* スクロールフッタ高さ */
  --easys_standard_value001: #ffffff;/* スクロールフッタ＞背景色 */
  --easys_standard_value002: #ffffff;/* カレンダーの本日＞文字色 */
  --font_size_10: 10px;
  --font_size_11: 11px;
  --font_size_12: 12px;
  --font_size_13: 13px;
  --font_size_14: 14px;
  --font_size_16: 16px;
  --font_size_17: 17px;
  --font_size_18: 18px;
  --font_size_20: 20px;

/*ハンバーガーメニューボタン*/
  --easys_menu_size: calc(100vw * (80 / var(--easys_base_width)));/* メニューボタンサイズ */
  --easys_menu_size_span_w: calc(100vw * (40 / var(--easys_base_width)));/* メニューボタン罫線幅 */
  --easys_menu_size_span_h: calc(100vw * (1 / var(--easys_base_width)));/* メニューボタン罫線高さ */
  --easys_menu_off_background_color: #333333;/* メニューボタンOFFカラー */
  --easys_menu_on_background_color: #111111;/* メニューボタンONカラー */
  --easys_menu_off_span_color: #eeeeee;/* メニューボタンOFF罫線色 */
  --easys_menu_on_span_color: #ffffff;/* メニューボタンON罫線色 */
  --easys_menu_x: calc(100vw * (20 / var(--easys_base_width)));/* メニューボタン位置 X軸 */
  --easys_menu_y: calc(100vw * (20 / var(--easys_base_width)));/* メニューボタン位置 Y軸 */
  /*サイドボタン*/
  --fixed_side_btn_size_w: calc(100vw * (60 / var(--easys_base_width))); /* サイド固定ボタンの幅 */
  --fixed_side_btn_size_h: calc(100vw * (60 / var(--easys_base_width))); /* サイド固定ボタンの高さ */
  --fixed_side_btn_margin: 2vw; /* サイド固定ボタンの間隔 */
  --fixed_side_btn_gaten_size_w: calc(100vw * (480 / var(--easys_base_width))); /* サイドGATEN職ボタンの幅 */
  --fixed_side_btn_gaten_size_h: calc(100vw * (150 / var(--easys_base_width))); /* サイドGATEN職ボタンの高さ */
}

/* =================================================================================================================== */


/* ===================================================================================================================
   ■共有
------------------------------------------------------------------------------------------------------------------- */
html {
  overflow-x: hidden;

  scroll-behavior: smooth;
}
body {
  overflow-x: hidden;
  word-break: break-word;
}
/* リンク */
a:link,
a:visited,
a:hover,
a:active {
  text-decoration: underline;
}

/* ページ送り */
.tablenav {
  clear: both;
}

.sp_gallery {
  text-align: center;
}
.sp_gallery img {
  max-width: 100%;
  /* width: auto; */
}
.img_border {
  border: 0 none;
}


/* SP余白設定
---------------------------------------------------------------------------------------------------- */
/* アウターブロック */
#main > #outer_block {
  padding-top: var(--easys_padding);
}

/* 余白を付ける */
/* 「K-01 見出しブロック」は下余白を除外) */
/* 「P-01～04 スライドショー」と「Z-J6 スライドショーブロック」は左右余白を除外) */
/* 「SP-01 スペーサーブロック」と「KD-0X 簡易デザインブロック」は全余白を除外) */
#main > #outer_block > section:not(.nk_01):not([class^="sp_"]):not([class^="kd_"]) {
  padding-bottom: var(--easys_padding);
}
#main > #outer_block > section:not(.device_width):not([class^="sp_"]):not([class^="kd_"]) {
  padding-right: var(--easys_padding);
  padding-left: var(--easys_padding);
}

/* ブログページ */
#main > #container,
#main > #rSide {
  padding: var(--easys_padding);
}


/* ===================================================================================================================
   ■ナビ
------------------------------------------------------------------------------------------------------------------- */
/* メニューON時　メニューの文字色変更 */
#Side .xoxo li .menu-item a {
  color: var(--navi_characters_color) !important;
  font-family: "Roboto", "Zen Maru Gothic", sans-serif;
  font-weight: 700;
  font-style: normal;
}

/* ブログ下部 ブログメニュー部分　文字色変更 */
#primary ul.xoxo li ul li a {
  color: var(--link_color) !important;/* 全体のリンクカラー */
}
/* ブログ下部 ブログメニュー部分　下線色変更 */
#Side .xoxo li .menu-item a,
#primary ul.xoxo li ul li {
  border-color: var(--border_color) !important;/* 全体のボーダーカラー */
}
#rSide_wrap {
  background: none transparent !important;
}

#searchform input[type="text"] {
  max-width: 77%;
}

/* SPメニュークリックで一番上にスクロールさせない */
.scroll-prevent {
  position: static !important;
  overflow: hidden !important;
}
#Side_wrap,
#rSide_wrap,
#Side {
  height: 100% !important;
}

/* ===================================================================================================================
   ■見出し
------------------------------------------------------------------------------------------------------------------- */
/* 中ページ ページタイトル */
/*#naka_page_title {
  margin: 0 0 1em;
}*/
#naka_page_title h1 {
  padding: 1em 5%;
  background: var(--medium_page_background_color);
  color: var(--inside_page_text_color);
  text-align: center;
}


/*  トップメイン
---------------------------------------------------------------------------------------------------- */
#video_teaser_sp,
#jquery_slider_sp {
  position: relative;
  margin: 0;
  font-size: 0;
  overflow: hidden;
}
/* トップに画像を重ねる時 */
#video_teaser_sp::before,
#jquery_slider_sp::before {
  position: absolute;
  z-index: 100;
  display: block;
  width: 100%;
  height: 100%;
  background: url(../files/sp_main_logo.png) no-repeat center top / contain;
  content: "";
}

/* 追加画像 */
.sp_top_header_cover01{
  left: 0;
  margin-inline: auto;
  position: absolute;
  right: 0;
  top: calc(208 / 640 * 100vw);
  width: calc(588 / 640 * 100vw);
  z-index: 1;
}

.sp_top_header_cover02{
  left: 0;
  margin-inline: auto;
  position: absolute;
  right: 0;
  bottom: calc(0 / 640 * 100vw);
  width: calc(640 / 640 * 100vw);
  z-index: 1;
}

.moved .sp_top_header_cover02{
  transition-delay: .6s;
}

/*  ハンバーガーメニューアイコン 
---------------------------------------------------------------------------------------------------- */
/*=============================
  ボタンOFF
  =============================*/
#menuTrigger {
  position: fixed;
  top: var(--easys_menu_y);
  right: var(--easys_menu_x);
  z-index: 10001;
  width: var(--easys_menu_size);
  height: var(--easys_menu_size);
  outline: none;
  background-color: var(--easys_menu_off_background_color);
  cursor: pointer;
}

.opened #menuTrigger {
  background-color: var(--easys_menu_on_background_color);
}

#menuTrigger span {
  position: absolute;
  right: 0;
  left: 0;
  display: inline-block;
  box-sizing: border-box;
  margin: auto;
  width: var(--easys_menu_size_span_w);
  height: var(--easys_menu_size_span_h);
  background-color: var(--easys_menu_off_span_color);
  transition: all 0.5s;
}

#menuTrigger span:nth-of-type(1) {
  top: 33%;
}

#menuTrigger span:nth-of-type(2) {
  top: 0;
  bottom: 0;
  margin: auto;
}

#menuTrigger span:nth-of-type(3) {
  top: 66%;
}

/*=============================
  ボタンON
  =============================*/
.opened #menuTrigger span {
  background-color: var(--easys_menu_on_span_color);
}

.opened #menuTrigger span:nth-of-type(1) {
  top: 50%;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}

.opened #menuTrigger span:nth-of-type(2) {
  width: 0;
  opacity: 0;
}

.opened #menuTrigger span:nth-of-type(3) {
  top: 50%;
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
}

#menuTrigger{
  background:url(../files/sp_btn_menu_off.png) no-repeat center / 100%;
}

.opened #menuTrigger {
  background:url(../files/sp_btn_menu_on.png) no-repeat center / 100%;
}

#menuTrigger span{
  display: none;
}

/*=============================
  ナビ開閉
  =============================*/
#Side_wrap {
  visibility: hidden;
  opacity: 0;
  transition: all 0.5s;
}

body.opened #Side_wrap {
  visibility: visible;
  opacity: 1;
}

/* アクセスマップボタン */
#float_header #menu_access_btn {
  top: var(--easys_menu_y);
  right: calc(5vw + var(--easys_menu_size));
  width: var(--easys_menu_size);
  height: auto;
}
/* メニュー左上のロゴの位置 ※ハンバーガーメニューのtop指定と同じ値を入れる */
#Side_wrap ul#menu-sp_side {
  background: url(../../../../files/sp_main_logo.png) no-repeat center top / 100%;
  background-position: center top;
  padding-top: 35%;
}
/* okieasys：ロゴ画像の非表示 */
html.okieasys #h1_teaser_image,
html.okieasys #Side_wrap ul#menu-sp_side {
  background-image: none !important;
}
/* okieasys：サイドメニューのサイト名テキスト */
html.okieasys #Side_wrap ul#menu-sp_side {
  padding-top: calc(100vw * (20 / var(--easys_base_width))) !important;
}
#Side_wrap ul#menu-sp_side .oki_side_title {
  list-style: none;
  padding: calc(100vw * (20 / var(--easys_base_width))) var(--easys_padding);
  font-size: calc(100vw * (30 / var(--easys_base_width)));
  font-weight: bold;
  color: var(--body_text_color);
}
/* okieasys：中ページヘッダーロゴ */
#h1_teaser_image .oki_header_logo {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: calc(100vw * (56 / var(--easys_base_width))) 0;
  text-decoration: none;
}
#h1_teaser_image .oki_header_logo_text {
  font-size: calc(100vw * (30 / var(--easys_base_width)));
  font-weight: bold;
  color: var(--body_text_color);
}

/*  PC共通サイドボタン
---------------------------------------------------------------------------------------------------- */
/* ウィジェット内設定タイトル削除 */
#thirdly .widget-container > h3,
#Side .widget-container > h3{
  display: none;
}

/* PCのみ表示ボタン非表示 */
.pconly {
  display: none;
}

/* SPサイドメニュー内のside_btnメニュー */
#menu-side_btn {
  margin: 0;
  padding: 0;
  list-style: none;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-flow: wrap-reverse;
}

#menu-side_btn li {
  margin: 1vw;
}

#menu-side_btn li a {
  display: block;
  width: var(--fixed_side_btn_size_w);
  height: var(--fixed_side_btn_size_h) !important;
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  text-indent: -9999px;
  overflow: hidden;
  padding: 0;
}

/* 幅広のGATENボタン */
#menu-side_btn li.gaten {
  width: 100%;
  height: fit-content;
  margin-top: var(--fixed_side_btn_margin);
  padding: 0;
  text-align: center;
}

#menu-side_btn li.gaten a {
  display: inline-block;
  width: var(--fixed_side_btn_gaten_size_w);
  height: var(--fixed_side_btn_gaten_size_h) !important;
}

/* デフォルトボタン */
#menu-side_btn li.gaten a {
  background-image: url(../files/gtn_bnr.png);
}

#menu-side_btn li.map a {
  background-image: url(../files/sp_btn_map.png);
}

#menu-side_btn li.contact a {
  background-image: url(../files/sp_btn_contact.png);
}

#menu-side_btn li.blog a {
  background-image: url(../files/sp_btn_blog.png);
}

/* SNSボタン */
#menu-side_btn li.line a {
  background-image: url(../files/sp_sns_line.png);
}

#menu-side_btn li.instagram a {
  background-image: url(../files/sp_sns_insta.png);
}

#menu-side_btn li.facebook a {
  background-image: url(../files/sp_sns_fb.png);
}

#menu-side_btn li.youtube a {
  background-image: url(../files/sp_sns_youtube.png);
}

#menu-side_btn li.tiktok a {
  background-image: url(../files/sp_sns_tiktok.png);
}

/*  scrollfooter（最下部固定 お問い合わせ･TELボタン）
     ※画像差し替えはFTPにてそれぞれ上書き
---------------------------------------------------------------------------------------------------- */
/* 最下部までスクロールした時用の余白 =.scroll_footerの高さと同じ値にする */
body.has_scroll_footer {
  padding: 0 0 var(--easys_footer_h);
}

.scroll_footer ul {
  background: none transparent;
}

.scroll_footer,
.scroll_footer ul {
  background: transparent;
  box-shadow: none;
  height: var(--easys_footer_h);
}

.scroll_footer ul li {
  width: 50%;
  height: var(--easys_footer_h);
}

.scroll_footer ul li a {
  display: block;
}

.scroll_footer ul li.footer_tel_link {
  left: 0;
}

.scroll_footer ul li.footer_contact_link {
  right: 0;
}

/*  その他
---------------------------------------------------------------------------------------------------- */
#foot #copy {
  background: none;
}


/*■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■
		▼SPサイトデザイン▼ここから
■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■*/
/*	タイトルロゴ
===============================================================■■■■■*/
#h1_teaser_image {
  margin: 0;/* ロゴの上下余白調整 */
  background: #61c7fc url(../files/sp_main_logo.png) center / cover;
}
/* fixする場合(ハンバーガーメニューの高さ) 
#h1_teaser_image {
  position: fixed;
  top: 0;
  z-index: 1000;
}*/
/* TOPロゴ非表示 */
html:not(.shosai) #page_6 #h1_teaser_image {
  display: none;
}
#h1_teaser_image h1 a img {
  width: 100%;
  height: calc(100vw * (180 / var(--easys_base_width)));/*「150」はロゴ画像の高さに変更*/
}
/*	メイン背景画像 - トップページ用(※不要な場合はコメントアウト)
===============================================================■■■■■
html:not(.shosai) body#page_6 div#main #top_slide {
  padding-bottom: calc(100vw * (870 / var(--easys_base_width)));
  background: transparent url(../files/sp_top_bg.png) center / cover;
}*/
/*	メイン背景画像 - 中ページ用
===============================================================■■■■■
body:not(#page_6) div#main #top_slide,
html.shosai body div#main #top_slide {
  padding-bottom: calc(100vw * (870 / var(--easys_base_width)));
  background: transparent url(../files/sp_naka_bg.png) center / cover;
}*/
/*	フッター - コピーライト
===============================================================■■■■■*/
address#copyright {
  display: block;
  background-color: var(--copyright_background_color);
  color: var(--copyright_characters_color);
  font-style: normal;
  font-size: var(--font_size_12);
}
/*	■メインコンテンツ背景
===============================================================■■■■■*/
html,
body,
#Wrap {
  background-color: var(--basic_background_color);
  /*background: var(--basic_background_color) url(../files/sp_html_bg.png);*/
}
/*	○ 両サイドナビゲーション背景
===============================================================■■■■■*/
#Side_wrap {
  background-color: var(--navigation_background_color);
  /*background: var(--navigation_background_color) url(../files/sp_navi_bg.png);*/
}
/*	サイト全体 テキストカラー：文字色
===============================================================■■■■■*/
body {
  color: var(--body_text_color);
}
/*	サイト全体 リンクカラー：リンク文字色
===============================================================■■■■■*/
* a {
  color: var(--link_color);
}
/*	サイト全体 リンクカラー：リンク文字色（マウスオーバー）
===============================================================■■■■■*/
* a:hover {
  color: var(--link_color);
}
/*	大見出し(h2見出し)
===============================================================■■■■■*/
* .headline_title {
  box-sizing: border-box;
  border: solid 1px var(--h2_heading_border_color);
  background: var(--h2_heading_background_color);
  color: var(--h2_heading_text_color);
  background: url(../files/sp_headline_title_bg.png) no-repeat center bottom / 100% auto;
  /*background: linear-gradient(#555555,#555555);*/
  padding-top: 0;
}
* .headline_title::before {
  background: url(../files/sp_headline_title_bg_top.png) no-repeat center bottom / calc(100vw * (640 / var(--easys_base_width)));
  content: "";
  display: block;
  width: 100%;
  height: calc(100vw * (108 / var(--easys_base_width)));
}

/*	大見出し(h2見出し)：リンクカラー
===============================================================■■■■■*/
* .headline_title a {
  color: var(--h2_heading_link_color);
  font-weight: bold;
}
* .headline_title a:hover {
  color: var(--h2_heading_link_color);
}
/*	見出し(h3見出し)
===============================================================■■■■■*/
/*	ウィジェットタイトル(ウィジェット見出し)
===============================================================■■■■■*/
/*	ブログ見出し：グラデーション
===============================================================■■■■■*/
* .entry_title,
* .widget-title,
* .widget-title2,
.top-back.unity_title,
#content .type-post .entry_title {
  box-sizing: border-box;
  border: solid 1px var(--h3_heading_border_color);
  background: var(--h3_heading_background_color);
  color: var(--h3_heading_text_color);
  background: transparent url(../files/sp_entry_title_bg.png) no-repeat center top / cover;
  /*background: linear-gradient(#888888,#888888);*/
}
/*	見出し(h3見出し)：リンクカラー
===============================================================■■■■■*/
/*	ウィジェットタイトル(ウィジェット見出し)：リンクカラー
===============================================================■■■■■*/
/*	ブログ見出し：リンクカラー
===============================================================■■■■■*/
* .entry_title a,
* .widget-title a,
* .widget-title2 a,
.top-back.unity_title a,
#content .type-post .entry_title a {
  color: var(--h3_heading_link_color);
  font-weight: bold;
}
* .entry_title a:hover,
* .widget-title a:hover,
* .widget-title2 a:hover,
.top-back.unity_title a:hover,
#content .type-post .entry_title a:hover {
  color: var(--h3_heading_link_color);
}
/*	小見出し(h4小見出し)
===============================================================■■■■■*/
* .sub_entry_title {
  box-sizing: border-box;
  border: solid 1px var(--h4_subheading_border_color);
  background: var(--h4_subheading_background_color);
  color: var(--h4_subheading_text_color);
  /*background: transparent url(../files/sp_sub_title_bg.png) no-repeat center top / 100% auto;*/
  /*background: linear-gradient(#cccccc,#cccccc);*/
}
/*	小見出し(h4小見出し)：リンクカラー
===============================================================■■■■■*/
* .sub_entry_title a {
  color: var(--h4_subheading_link_color);
  font-weight: bold;
}
* .sub_entry_title a:hover {
  color: var(--h4_subheading_link_color);
}
/*	インラインタイトル(インライン)
===============================================================■■■■■*/
.inline_title,
.main_btn a,
small a,
.tablenav .page-numbers,
.navigation .nav-next a,
.navigation .nav-previous a,
.pageback a,
.permalink_in a {
  box-sizing: border-box;
  border: solid 1px var(--inline_border_color);
  background: var(--inline_background_color);
  color: var(--inline_characters_color);
  /*background: transparent url(../files/sp_inline_title_bg.png) no-repeat center top / 100% auto;*/
  /*background: linear-gradient(#cccccc,#cccccc);*/
}
.inline_title,
.main_btn a,
small a {
  text-align: center;
}
.comment_title {
  border-left: 5px solid var(--inline_border_color);
}
/*	インラインタイトル(インライン)：リンクカラー
===============================================================■■■■■*/
.inline_title a {
  color: var(--inline_link_color);
}
.main_btn a,
small a,
.tablenav a,
.navigation .nav-next a,
.navigation .nav-previous a,
.pageback a,
.permalink_in a {
  color: var(--inline_link_color) !important;
  font-weight: bold;
}
.inline_title a:hover,
.main_btn a:hover,
small a:hover,
.tablenav a:hover,
.navigation .nav-next a:hover,
.navigation .nav-previous a:hover,
.pageback a:hover,
.permalink_in a:hover {
  color: var(--inline_link_color) !important;
}
/*	ページ共通：テーブル
===============================================================■■■■■*/
/* テーブル背景 */
.iqfm-table tr th,
.iqfm-table tr td,
td.td_name,
td.td_value,
td.coupon_meta_title,
td.coupon_meta,
td.coupon_data {
  box-sizing: border-box;
  border: solid 1px var(--table_border_color);
  background-color: var(--td_background_color);
  color: var(--td_character_color);
}
td.coupon_data {
  color: var(--td_character_color);
}
/* テーブルセル左 */
.iqfm-table tr th,
td.td_name,
td.coupon_meta_title {
  background-color: var(--th_background_color);
  color: var(--th_character_color);
}
/* テーブルセル右 */
.iqfm-table tr td,
.iqfm-table tr input.wpcf7c-conf,
.iqfm-table tr textarea.wpcf7c-conf,
td.td_value,
td.coupon_meta,
td.coupon_data {
  background-color: var(--td_background_color);
  color: var(--td_character_color);
}
/* ▼テーブル設定▼ここから(※案件毎にテーブルデザインを設定する) */
/*テーブル設定*/
.iqfm-table tr th {width: 25%;}
.iqfm-table tr th, .iqfm-table tr td, td.td_name, td.td_value,
.easys_content:not(.ne_01) table:not(#wp-calendar) tr > * {
  background: none var(--td_background_color);
  color: var(--td_character_color);
  border: 1px solid var(--table_border_color);
}
.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 var(--th_background_color) !important;
  color: var(--th_character_color);
}
/* ▲テーブル設定▲ここまで */

/*	新着リスト：ベースカラー
===============================================================■■■■■*/
.nq_01 .list_block {
  border: 1px solid var(--link_color);
}
/* インデント */
.nq_01 h2.post_read_title .border_line {
  border-left: 5px solid var(--link_color);
}
/* リスト見出し */
.nq_01 h2.post_read_title {
  padding: 10px;
  border-bottom: 1px solid var(--link_color);
}
/* リストボーダー */
.nq_01 .list_box {
  border-bottom: 1px dotted var(--link_color);
}
/* 日付ボーダー */
.nq_01 .list_box .date,
.nq_01 .list_box_last .date {
  border-bottom: 1px dashed var(--link_color);
}
/* 新着リスト：文字色 */
.nq_01 .list_block {
  color: var(--link_color);
}
/*	投稿カレンダー：今日のテーブルセル背景色
===============================================================■■■■■*/
#calendar_wrap table tr td#today {
  background-color: var(--link_color);
}
#calendar_wrap table tr td a {
  text-decoration: underline;
}
#calendar_wrap table tr td a:hover {
  text-decoration: none;
}
/* fffか333かサイト背景色 */
#calendar_wrap table tr td#today,
#calendar_wrap table tr td#today a {
  color: var(--easys_standard_value002);
}
/*	HTMLリセット
===============================================================■■■■■*/
html {
  margin-top: 0 !important;
}
* html body {
  margin-top: 0 !important;
}
/*■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■
		▲SPサイトデザイン▲ここまで
■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■*/
■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■*/
/* 中ページDB 余白消し */
#naka_page_title + #outer_block{
  padding-top: 0;
}
/* 中ページ #outer_block最初のブロックがDB以外の時は余白追加 */
#naka_page_title + #outer_block > *:first-child:not([class*="ndb_01"]),
#main_teaser + #outer_block > *:first-child:not([class*="ndb_01"]){
  padding-top: 5%;
}

/* アニメーション画像 */
.add-image,
.add-image img{
  display: block;
  pointer-events: none;
}

.add-image{
  position: absolute;
}

.add-image img{
  height: auto;
  width: 100%;
}

.add-image,
.add-image img{
  transition: clip-path 1.3s ease,
  filter 1.3s ease,
  opacity 1.3s ease,
  scale 1.3s ease,
  transform 1.3s ease;
}

.add-image{
  position: absolute;
}

/* フェードイン後 */
.moved .add-image:not([class*="css-"]),
.moved .add-image:not([class*="css-"]) img,
.add-image.moved:not([class*="css-"]),
.add-image.moved:not([class*="css-"]) img{
  filter: none;
  opacity: 1;
  scale: 1;
  transform: none;
}

.add-image img{
  height: auto;
}

.moved .animation-clip,
.animation-clip.moved{
  clip-path: inset(0);
}

/* blur */
.animation-blur{
  filter: blur(10px);
  opacity: 0;
}

.animation-blur.moved{
  filter: none;
  opacity: 1;
}

/* clip-path */
.animation-clip-from-bottom{
  clip-path: inset(100% 0 0 0);
}

.animation-clip-from-center-y{
  clip-path: inset(50% 0);
}

.animation-clip-from-left{
  clip-path: inset(0 100% 0 0);
}

.animation-clip-from-top{
  clip-path: inset(0 0 100% 0);
}

/* scale */
.animation-scale{
  opacity: 0;
  scale: 0;
}

.animation-scale-shrink{
  opacity: 0;
  overflow: hidden;
}

.animation-scale-shrink img{
  scale: 1.3;
  transition: scale 2.3s ease;
}

/* clip-path */
.animation-clip-from-bottom{
  clip-path: inset(100% 0 0 0);
}

.animation-clip-from-center-y{
  clip-path: inset(50% 0);
}

.animation-clip-from-left{
  clip-path: inset(0 100% 0 0);
}

.animation-clip-from-top{
  clip-path: inset(0 0 100% 0);
}

/* general */
.animation-from-bottom{
  opacity: 0;
  transform: translateY(100px);
}

.animation-from-left{
  opacity: 0;
  transform: translateX(-100px);
}

.animation-from-right{
  opacity: 0;
  transform: translateX(100px);
}

.animation-from-top{
  opacity: 0;
  transform: translateY(-100px);
}

.animation-min-from-bottom{
  opacity: 0;
  transform: translateY(20px);
}

.animation-min-from-left{
  opacity: 0;
  transform: translateX(-20px);
}

.animation-min-from-left{
  opacity: 0;
  transform: translateX(-20px);
}

.animation-min-from-right{
  opacity: 0;
  transform: translateX(20px);
}

.animation-min-from-top{
  opacity: 0;
  transform: translateY(-20px);
}

/* css animation */

.css-bounce-in{
  opacity: 0;
}

.css-bounce-in.moved{
  animation: css-bounce-in 1.1s linear 0s forwards;
  transition: none;
}

@keyframes css-bounce-in {
  0% { transform: scale(1); opacity: 0;}
  5% { transform: scale(2.5); opacity: .5;}
  10%{ transform: scale(2.5); opacity: 1;}
  15%{ transform: scale(2.5); opacity: 1;}
  20%{ transform: scale(1); opacity: 1;}
  25%{ transform: scale(1.3); opacity: 1;}
  30%{ transform: scale(1); opacity: 1;}
  35%{ transform: scale(1.3); opacity: 1;}
  40%{ transform: scale(1); opacity: 1;}
  45%{ transform: scale(1.1); opacity: 1;}
  50% { transform: scale(1); opacity: 1;}
  55% { transform: scale(1.08); opacity: 1;}
  60% { transform: scale(1); opacity: 1;}
  65% { transform: scale(1.05); opacity: 1;}
  70% { transform: scale(1); opacity: 1;}
  75% { transform: scale(1.03); opacity: 1;}
  80% { transform: scale(1); opacity: 1;}
  85% { transform: scale(1.01); opacity: 1;}
  90% { transform: scale(1); opacity: 1;}
  95% { transform: scale(1); opacity: 1;}
  100%{ transform: scale(1); opacity: 1;}
}

.css-falling-down{
  opacity: 0;
  transform: translate(0);
  transition: none;
}

.css-falling-down.moved {
  animation: css-falling-down 2.5s forwards ease-out 0s;
}

@keyframes css-falling-down {
  0% {
    opacity: 0;
    transform: translate(0, 0);
  }
  20% {
    opacity: 0;
    transform: translate(0, -40px);
  }
  25% {
    opacity: 1;
    transform: translate(0, 0);
  }
  30% {
    opacity: 1;
    transform: translate(0, -15px);
  }
  50% {
    opacity: 1;
    transform: translate(0, 0);
  }
  100% {
    opacity: 1;
    transform: translate(0, 0);
  }
}

.css-floating{
  animation: css-floating 2s infinite alternate ease-in-out;
}

@keyframes css-floating{
  to{
    translate: 0 25px;
  }
}

#outer_block{
  overflow: hidden;
}

/* フェードイン */
.post_data{
  opacity: 0;
  transform: translateY(50px);
  transition: opacity 1s, transform 1s;
}

.post_data.moved{
  opacity: 1;
  transform: none;
}

#page_6 #main > #outer_block{
  padding-top: 0;
}

section.no_margin{
  margin-bottom: 0 !important;
  padding-bottom: 0 !important;
}

section.no_margin + section:not(.no_margin){
  margin-top: 5vw;
}

/* トップへ戻るボタン非表示 */
#thirdly{
  display: none;
}

/* ===========================================================================
   トップページ   pageID：6
=========================================================================== */

/*コンテンツ画像 > こんなお困りごと、ありませんか？
z3a941sttrp3f5wov3ck
--------------------------------------- */
#z3a941sttrp3f5wov3ck{
  overflow: hidden;
  padding: 0 !important;
  position: relative;
}

#z3a941sttrp3f5wov3ck div{
  margin-bottom: 0;
  padding-bottom: 0;
}

/*DB > 私たちにお任せ下さい！
rmmlbsh66io34v0099c3
--------------------------------------- */
#rmmlbsh66io34v0099c3{
  background: #28b6ff;
  overflow: hidden;
  padding: 0 !important;
  position: relative;
}

#rmmlbsh66io34v0099c3 div{
  margin-bottom: 0;
}

#rmmlbsh66io34v0099c3 .easys_content_inner{
  padding-bottom: calc(80 / 640 * 100vw);
  padding-top: calc(647 / 640 * 100vw);
}

#rmmlbsh66io34v0099c3 [class*="headline_title"]{
  display: none;
}

#rmmlbsh66io34v0099c3 .entry_post{
  padding-bottom: 0;
}

#rmmlbsh66io34v0099c3 .post_data{
  box-sizing: border-box;
  color: #ffffff;
  padding: 0 5% 0;
}

#rmmlbsh66io34v0099c3 .post_data :last-child{
  margin-bottom: 0;
}

/* 追加画像 */
.sp_design01_image{
  left: 0;
  top: calc(0 / 640 * 100vw);
  width: calc(640 / 640 * 100vw);
}
.sp_design01_ttl{
  inset-inline: 0;
  margin-inline: auto;
  top: calc(520 / 640 * 100vw);
  width: calc(576 / 640 * 100vw);
}

/*コンテンツ画像 > 一眼でわかるビフォーアフター 水まわりの変化をご覧ください！
nwq8r1fl830kz9g2ly6a
--------------------------------------- */
#nwq8r1fl830kz9g2ly6a{
  overflow: hidden;
  padding: 0 !important;
  position: relative;
}

#nwq8r1fl830kz9g2ly6a div{
  margin-bottom: 0;
  padding-bottom: 0;
}

/*バナー > その他の施工実績は公式サイトから！
k42qqjil6u4tnzg255ts
--------------------------------------- */
#k42qqjil6u4tnzg255ts{
  overflow: hidden;
  margin: 5% !important;
  padding: 0 !important;
  position: relative;
}

#k42qqjil6u4tnzg255ts div{
  margin-bottom: 0;
  padding-bottom: 0;
}

/*DB > こんな業者には注意！
d5ww4je00b7u3aq12dib
--------------------------------------- */
#d5ww4je00b7u3aq12dib{
  background: #ffa633 url(../files/sp_design02_bg_top.png) no-repeat center top / 100%;
  overflow: hidden;
  padding: 0 !important;
  position: relative;
}

#d5ww4je00b7u3aq12dib div{
  margin-bottom: 0;
}

#d5ww4je00b7u3aq12dib .easys_content_inner{
  padding-bottom: calc(80 / 640 * 100vw);
  padding-top: calc((466 + 438) / 640 * 100vw);
}

#d5ww4je00b7u3aq12dib [class*="headline_title"]{
  display: none;
}

#d5ww4je00b7u3aq12dib .entry_post{
  padding-bottom: 0;
}

#d5ww4je00b7u3aq12dib .post_data{
  box-sizing: border-box;
  color: #000000;
  padding: 0 5% 0;
}

#d5ww4je00b7u3aq12dib .post_data :last-child{
  margin-bottom: 0;
}

/* 追加画像 */
.sp_design02_image{
  left: 0;
  top: calc(438 / 640 * 100vw);
  width: calc(640 / 640 * 100vw);
}
.sp_design02_ttl{
  inset-inline: 0;
  margin-inline: auto;
  top: calc(0 / 640 * 100vw);
  width: calc(640 / 640 * 100vw);
}

/*DB > 対応エリアについて
utz7lzytnwpd0gltys0n
--------------------------------------- */
#utz7lzytnwpd0gltys0n{
  background: #cbe4ff;
  overflow: hidden;
  padding: 0 !important;
  position: relative;
}

#utz7lzytnwpd0gltys0n div{
  margin-bottom: 0;
}

#utz7lzytnwpd0gltys0n .easys_content_inner{
  padding-bottom: calc(80 / 640 * 100vw);
  padding-top: calc(758 / 640 * 100vw);
}

#utz7lzytnwpd0gltys0n .easys_content_inner::before{
  animation: pulse-loop 2.8s cubic-bezier(0, 0, .15, .99) 1ms infinite;
  border: 4px solid #fff800;
  border-radius: 50%;
  content: "";
  display: block;
  height: calc(200 / 640 * 100vw);
  left: calc(160 / 640 * 100vw);
  position: absolute;
  top: calc(310 / 640 * 100vw);
  width: calc(200 / 640 * 100vw);
  z-index: 1;
}

@keyframes pulse-loop{
  from{
    opacity: 1;
    transform: scale(.25);
  }

  to{
    opacity: 0;
    transform: scale(1);
  }
}

#utz7lzytnwpd0gltys0n [class*="headline_title"]{
  display: none;
}

#utz7lzytnwpd0gltys0n .entry_post{
  padding-bottom: 0;
}

#utz7lzytnwpd0gltys0n .post_data{
  box-sizing: border-box;
  color: #000000;
  padding: 0 5% 0;
}

#utz7lzytnwpd0gltys0n .post_data :last-child{
  margin-bottom: 0;
}

/* 追加画像 */
.sp_design03_image{
  left: 0;
  top: calc(0 / 640 * 100vw);
  width: calc(640 / 640 * 100vw);
}
.sp_design03_ttl{
  inset-inline: 0;
  margin-inline: auto;
  top: calc(60 / 640 * 100vw);
  width: calc(518 / 640 * 100vw);
}

/*DB > 施工の流れ
tvo5kn5wygf1g023odh3
--------------------------------------- */
#tvo5kn5wygf1g023odh3{
  background: url(../files/sp_design04_html_bg.png) repeat-y center top / 100%;
  overflow: hidden;
  padding: 0 !important;
  position: relative;
}

#tvo5kn5wygf1g023odh3 div{
  margin-bottom: 0;
}

#tvo5kn5wygf1g023odh3 .easys_content_inner{
  background: url(../files/sp_design04_bg_top.png) no-repeat center top / 100%;
  padding-bottom: calc(233 / 640 * 100vw);
  padding-top: calc(278 / 640 * 100vw);
}

#tvo5kn5wygf1g023odh3 [class*="headline_title"]{
  display: none;
}

#tvo5kn5wygf1g023odh3 .entry_post{
  padding-bottom: 0;
}

#tvo5kn5wygf1g023odh3 .sub_post{
  margin: 0;
  padding: 0;
  position: relative;
}

#tvo5kn5wygf1g023odh3 .sub_post:nth-of-type(n + 3){
  margin-top: calc(50 / 640 * 100vw);
}

#tvo5kn5wygf1g023odh3 .sub_post:nth-of-type(n + 2):nth-last-of-type(n + 2)::after{
  background: url(../files/sp_design04_arrow.png) no-repeat center top / calc(640 / 640 * 100vw);
  bottom: calc(-50 / 640 * 100vw);
  content: "";
  display: block;
  height: calc(50 / 640 * 100vw);
  position: absolute;
  width: 100%;
}

#tvo5kn5wygf1g023odh3 .entry_title{
  display: none;
}

#tvo5kn5wygf1g023odh3 .post_data{
  background: #ffffff;
  border-radius: 0 0 20px 20px;
  box-sizing: border-box;
  color: #000000;
  margin: 0 5%;
  padding: 2.5% 5%;
  width: 90%;
}

#tvo5kn5wygf1g023odh3 .post_data :last-child{
  margin-bottom: 0;
}

/* 追加画像 */
.sp_design04_ttl{
  inset-inline: 0;
  margin-inline: auto;
  top: calc(140 / 640 * 100vw);
  width: calc(447 / 640 * 100vw);
}
.sp_design04_image_bottom{
  inset-inline: 0;
  margin-inline: auto;
  bottom: calc(0 / 640 * 100vw);
  width: calc(640 / 640 * 100vw);
}

/*DB > 作業工賃表
codbwya77iotc51904vo
--------------------------------------- */
#codbwya77iotc51904vo{
  background: url(../files/sp_design05_html_bg.png) repeat-y center top / 100%;
  overflow: hidden;
  padding: 0 !important;
  position: relative;
}

#codbwya77iotc51904vo div{
  margin-bottom: 0;
}

#codbwya77iotc51904vo .easys_content_inner{
  padding-bottom: 20em;
  padding-top: calc(272 / 640 * 100vw);
}

#codbwya77iotc51904vo [class*="headline_title"]{
  display: none;
}

#codbwya77iotc51904vo .entry_post{
  padding-bottom: 0;
}

#codbwya77iotc51904vo .entry_post > .post_data{
  color: #ffffff;
  position: absolute;
  bottom: 4em;
  left: 5%;
  width: 90%;
}

#codbwya77iotc51904vo .sub_post{
  margin: 0 5%;
  padding: 0;
  position: relative;
  width: 90%;
}

#codbwya77iotc51904vo .sub_post .entry_title{
  background: #0091dc;
  margin: 0;
}

#codbwya77iotc51904vo .sub_post:nth-of-type(3) .entry_title{
  border-radius: 20px 20px 0 0;
}

#codbwya77iotc51904vo .sub_post .post_data{
  background: #ffffff;
  box-sizing: border-box;
  color: #f8670a;
  font-family: "Roboto", "Zen Maru Gothic", sans-serif;
  font-size: 20px;
  font-style: normal;
  font-weight: 700;
  margin: 0;
  padding: 2.5% 5%;
  text-align: center;
}

#codbwya77iotc51904vo .sub_post:last-child .post_data{
  border-radius: 0 0 20px 20px;
}

#codbwya77iotc51904vo .post_data :last-child{
  margin-bottom: 0;
}

/* 追加画像 */
.sp_design05_ttl{
  inset-inline: 0;
  margin-inline: auto;
  top: calc(110 / 640 * 100vw);
  width: calc(447 / 640 * 100vw);
}
.sp_design05_illust_L{
  left: 0;
  top: calc(40 / 640 * 100vw);
  width: calc(122 / 640 * 100vw);
  z-index: 1;
}
.sp_design05_illust_R{
  top: calc(40 / 640 * 100vw);
  right: 0;
  width: calc(165 / 640 * 100vw);
  z-index: 1;
}

/*バナー > お見積もりは無料です！
lg8udy9yjk785512ezbe
--------------------------------------- */
#lg8udy9yjk785512ezbe{
  overflow: hidden;
  margin: 5% !important;
  padding: 0 !important;
  position: relative;
}

#lg8udy9yjk785512ezbe div{
  margin-bottom: 0;
  padding-bottom: 0;
}

/*DB > ご依頼前のお悩み解決！Q&A
ark8vylw7au77lrlthfk
--------------------------------------- */
#ark8vylw7au77lrlthfk{
  background: url(../files/sp_design06_html_bg.png) repeat center top / 100%;
  overflow: hidden;
  padding: 0 !important;
  position: relative;
}

#ark8vylw7au77lrlthfk div{
  margin-bottom: 0;
}

#ark8vylw7au77lrlthfk .easys_content_inner{
  background: url(../files/sp_design06_image_bottom.png) no-repeat center bottom / 100%;
  padding-top: calc(314 / 640 * 100vw);
  padding-bottom: calc(435 / 640 * 100vw);
}

#ark8vylw7au77lrlthfk [class*="headline_title"]{
  display: none;
}

#ark8vylw7au77lrlthfk .entry_post{
  padding-bottom: 0;
}

#ark8vylw7au77lrlthfk .sub_post{
  margin: 0 3%;
}

#ark8vylw7au77lrlthfk .sub_post + .sub_post{
  margin-top: 5%;
}

#ark8vylw7au77lrlthfk .sub_post .inline_title{
  background: #004da1;
  border: 0;
  border-radius: 8px 8px 0 0;
  font-size: 20px;
  font-weight: 600;
  margin: 0;
  padding: 3% 5%;
  position: relative;
  text-align: left;
}

#ark8vylw7au77lrlthfk .sub_post .q_title{
  display: block;
  padding-left: 1.5em;
  position: relative;
}

#ark8vylw7au77lrlthfk .sub_post .q_title::before{
  color: #ffffff;
  content: "Q: ";
  font-family: "Roboto", sans-serif;
  font-optical-sizing: auto;
  font-size: 22px;
  font-style: normal;
  font-variation-settings:
  "wdth" 100;
  font-weight: 600;
  left: 0;
  line-height: 1;
  position: absolute;
  top: .2em;
}

#ark8vylw7au77lrlthfk .post_data{
  background: #ffffff;
  border-radius: 0 0 8px 8px;
  box-sizing: border-box;
  padding: 2.5% 2.5% 2.5% 5%;
}

#ark8vylw7au77lrlthfk .post_data :last-child{
  margin-bottom: 0;
}

#ark8vylw7au77lrlthfk .a_content{
  display: block;
  padding-left: 32px;
  position: relative;
}

#ark8vylw7au77lrlthfk .a_content::before{
  color: #004da1;
  content: "A: ";
  font-family: "Roboto", sans-serif;
  font-optical-sizing: auto;
  font-size: 22px;
  font-style: normal;
  font-variation-settings:
  "wdth" 100;
  font-weight: 600;
  left: 0;
  line-height: 1;
  position: absolute;
  top: 2px;
}

/* 追加画像 */
.sp_design06_ttl{
  inset-inline: 0;
  margin-inline: auto;
  top: calc(110 / 640 * 100vw);
  width: calc(609 / 640 * 100vw);
}

.sp_design06_image_top{
  inset-inline: 0;
  margin-inline: auto;
  top: calc(0 / 640 * 100vw);
  width: calc(640 / 640 * 100vw);
}

/*DB > お問い合わせは、お電話または公式LINEにて
hjdyu3egwmtum9hwixzs
--------------------------------------- */
#hjdyu3egwmtum9hwixzs{
  background: #238bff;
  overflow: hidden;
  padding: 0 !important;
  position: relative;
}

#hjdyu3egwmtum9hwixzs div{
  margin-bottom: 0;
}

#hjdyu3egwmtum9hwixzs .easys_content_inner{
  background: url(../files/sp_design07_image.png) no-repeat center top / 100%,
  url(../files/sp_design07_image_bottom.png) no-repeat center bottom / 100%;
  padding-top: calc(658 / 640 * 100vw);
  padding-bottom: calc(144 / 640 * 100vw);
}

#hjdyu3egwmtum9hwixzs [class*="headline_title"]{
  display: none;
}

#hjdyu3egwmtum9hwixzs .entry_post{
  padding-bottom: 0;
}

#hjdyu3egwmtum9hwixzs .post_data{
  box-sizing: border-box;
  color: #ffffff;
  padding: 0 5% 5%;
}

#hjdyu3egwmtum9hwixzs .post_data :last-child{
  margin-bottom: 0;
}

/* ボタン */
#hjdyu3egwmtum9hwixzs .main_btn{
  margin: 0;
}

#hjdyu3egwmtum9hwixzs .main_btn a{
  background: url(../files/sp_design07_btn.png) no-repeat center bottom / 100%;
  border: 0;
  border-radius: 0;
  display: block;
  height: calc(100vw*(96 / 640));
  margin: 0 auto 0;
  text-indent: -9999px;
  width: calc(100vw*(480 / 640));
}

/* 追加画像 */
.sp_design07_ttl{
  inset-inline: 0;
  margin-inline: auto;
  top: calc(60 / 640 * 100vw);
  width: calc(568 / 640 * 100vw);
}

/*タイトル＞新着情報
g1tti3n35c1cf5py6q2a
--------------------------------------- */

/*新着情報
mcjm4i1sgutqg0x0egdd
--------------------------------------- */

/*会社概要
d28hj722wd55nsbm1rcw
--------------------------------------- */

/*お問い合わせフォーム_1
qyrkvai0mlhswk2ndwn7
--------------------------------------- */
