@charset "utf-8";

/*
 * スマホ用スタイルCSS
 */
@import url("https://fonts.googleapis.com/css2?family=Zen+Kaku+Gothic+New:wght@300;400;500;700;900&display=swap");
body {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-weight: 400;
}
/* =================================================================================================================== */
/* SPカスタムプロパティ */
:root {
  --basic_background_color: #ffffff;
  --body_text_color: #000000;
  --link_color: #01b9e0;
  --border_color: #666666;
  --table_border_color: #4e4e4e;
  --th_background_color: #e8e8e8;
  --td_background_color: #ffffff;
  --th_character_color: #000000;
  --td_character_color: #000000;
  --required_color: #d60000;
  --navigation_background_color: #d7d7ff;
  --navi_characters_color: #2b2ba0;
  --navigation_sub_color: #2b2ba0;
  --medium_page_background_color: #2b2ba0;
  --inside_page_text_color: #ffffff;
  --middle_page_border_color: transparent;
  --h2_heading_background_color: #2b2ba0;
  --h2_heading_text_color: #ffffff;
  --h2_heading_link_color: #ffffff;
  --h2_heading_border_color: transparent;
  --h3_heading_background_color: #000000;
  --h3_heading_text_color: #ffffff;
  --h3_heading_link_color: #ffffff;
  --h3_heading_border_color: transparent;
  --h4_subheading_background_color: transparent;
  --h4_subheading_text_color: #2b2ba0;
  --h4_subheading_link_color: #2b2ba0;
  --h4_subheading_border_color: #2b2ba0;
  --inline_background_color: #01b9e0;
  --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: #000000;
  --copyright_characters_color: #ffffff;
  --kdb_background_color: #e3faff;
}
/* 置換以外 */
: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 * (300 / var(--easys_base_width))); /* サイドGATEN職ボタンの幅 */
  --fixed_side_btn_gaten_size_h: calc(100vw * (80 / 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);
}

#page_6 #main > #outer_block {
  padding-top: 0;
}

/* 余白を付ける */
/* 「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;
}

/* ブログ下部 ブログメニュー部分　文字色変更 */
#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;
  /* border-top: 1px solid var(--middle_page_border_color);
  border-bottom: 1px solid var(--middle_page_border_color);*/
}

#thirdly {
  margin: 0;
}

/*  トップメイン
---------------------------------------------------------------------------------------------------- */
#video_teaser_sp,
#jquery_slider_sp {
  position: relative;
  margin: 0;
  font-size: 0;
}

#jquery_slider_sp::before {
  position: absolute;
  display: block;
  width: 100%;
  height: 100%;
  background: url(../files/sp_top_body_bg.png) center center / cover;
  content: "";
  z-index: -1;
  top: 0;
  left: 0;
}

#jquery_slider_sp::after {
  position: absolute;
  z-index: 100;
  display: block;
  width: 100%;
  height: 100%;
  background: url(../files/sp_top_header_cover.png) center center / cover;
  content: "";
  top: 0;
  left: 0;
}

#jquery_slider_sp > .design_block.block1 {
  background: url(/files/sp_top_header_cover02.png) no-repeat center top / 100%;
  bottom: 8vw;
  left: 7vw;
  width: calc(100vw * (579 / var(--easys_base_width)));
  height: calc(100vw * (299 / var(--easys_base_width)));
  z-index: 101;
}

body.loaded #jquery_slider_sp > .design_block.block1 {
  animation: mv-appear1 1.1s linear 0s forwards;
}

#jquery_slider_sp > .design_block.block2 {
  background: url(/files/sp_top_header_cover03.png) no-repeat center top / 100%;
  bottom: 40vw;
  left: 38vw;
  width: calc(100vw * (275 / var(--easys_base_width)));
  height: calc(100vw * (264 / var(--easys_base_width)));
  opacity: 0;
  transform: translateX(15vw);
  transition:
    transform 0.5s,
    opacity 0.5s ease 0s;
  z-index: 1;
  transition-delay: 0.3s;
}

body.loaded #jquery_slider_sp > .design_block.block2 {
  opacity: 1;
  transform: translateX(0);
}

/*  ハンバーガーメニューアイコン 
---------------------------------------------------------------------------------------------------- */
/*=============================
  ボタン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); */
  background: url(/files/sp_btn_menu_off.png) no-repeat center center / 100%;
  cursor: pointer;
}

.opened #menuTrigger {
  /* background-color: var(--easys_menu_on_background_color); */
  background: url(/files/sp_btn_menu_on.png) no-repeat center center / 100%;
}

#menuTrigger span {
  display: none;
  /* 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);
}

/*=============================
  ナビ開閉
  =============================*/
#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-position: center 20px;
  background: url(../../../../files/sp_main_logo.png) no-repeat center top;
  background-size: 100%;
}

/*  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;
}

#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,
#menu-side_btn li.hp {
  width: 100%;
  height: fit-content;
  margin-top: var(--fixed_side_btn_margin);
  padding: 0;
  text-align: center;
}

#menu-side_btn li.gaten a,
#menu-side_btn li.hp 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.hp a {
  background-image: url(../files/sp_officialsite_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 {
  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: transparent 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;
} */

/* スライダーの上にロゴを重ねる */
#page_6 #slide {
  position: absolute;
  top: 0;
  width: 100%;
}

#page_6 #jquery_slider_sp {
  margin: 0;
  position: relative;
  z-index: 1;
}

#page_6 #h1_teaser_image {
  position: relative;
  z-index: 10;
}

#h1_teaser_image h1 a img {
  width: 100%;
  height: calc(100vw * (150 / 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;
  background: var(--h2_heading_background_color);
  color: var(--h2_heading_text_color);
}
/*	大見出し(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;
  background: var(--h3_heading_background_color);
  color: var(--h3_heading_text_color);
}
/*	見出し(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_post_title,
* .sub_entry_title {
  box-sizing: border-box;
  border-top: 1px solid var(--h4_subheading_border_color);
  border-bottom: 1px solid var(--h4_subheading_border_color);
  color: var(--h4_subheading_text_color);
}

* .sub_post_title,
* .sub_entry_title {
  display: block;
  margin: 0 0 10px 0;
  padding: 10px 2.5%;
  width: 100%;
  text-align: center;
  font-size: var(--font_size_16);
  line-height: 1.5;
}

/*	小見出し(h4小見出し)：リンクカラー
===============================================================■■■■■*/
* .sub_post_title a,
* .sub_entry_title a {
  color: var(--h4_subheading_link_color);
  font-weight: bold;
}
* .sub_post_title a:hover,
* .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: none;
  background: var(--inline_background_color);
  color: var(--inline_characters_color);
}
.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 {
  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);
}

/*黒背景お問い合わせフォームテキストカラー修正
---------------------------------------------------------------------------------------------------- */
/*input.wpcf7c-conf {color: #FFF;}textarea.wpcf7c-conf {color: #FFF;}*/

/* ▲テーブル設定▲ここまで */
/*	新着リスト：ベースカラー
===============================================================■■■■■*/
.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サイトデザイン▲ここまで
■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■*/
* .headline_title,
* .entry_title,
* .widget-title,
* .widget-title2,
.top-back.unity_title,
* .sub_post_title,
* .sub_entry_title,
* .inline_title,
* small a {
  font-weight: 700;
}

/* 自動マージン */
/* 対象のマージンを消す */
.no_margin {
  margin: 0;
}
/* もし記事が割り込まれたらマージンを入れる */
.no_margin + :not(.no_margin) {
  margin-top: 5%;
}

/* 全体ギミック */
.easys_content_inner:not(.nd_01 .easys_content_inner) {
  opacity: 0;
  transform: translateY(15vw);
  transition:
    transform 1.3s,
    opacity 1.3s ease 0s;
}
.easys_content_inner.moved:not(.nd_01 .easys_content_inner) {
  opacity: 1;
  transform: translateY(0);
}

/* 共通ギミック */
.design_block {
  position: absolute;
}

/* アニメーション */
#u1gaz7jcisl3s8ic0pji .design_block.block2.moved {
  animation: mv-appear1 1.1s linear 0s forwards;
}

@keyframes mv-appear1 {
  0% {
    transform: scale(1);
    opacity: 1;
  }
  5% {
    transform: scale(2.5);
    opacity: 1;
  }
  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;
  }
}

/* トップページ
---------------------------------------------------------------------------------------------------- */
/* SP2nd */
#l88zdtap7qpi2dewazya {
  overflow: hidden;
  padding: 0 !important;
  position: relative;
  background: url(../files/sp_secondmain_bg.png) no-repeat center top / 100%;
  height: calc(100vw * (1424 / var(--easys_base_width)));
}

#l88zdtap7qpi2dewazya .content_area {
  margin: 0;
}

#l88zdtap7qpi2dewazya div {
  margin: 0;
}

#l88zdtap7qpi2dewazya::before {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
  display: block;
  width: calc(100vw * ((1240 * 4) / var(--easys_base_width)));
  height: calc(100vw * (762 / var(--easys_base_width)));
  background: url(../files/sp_secondmain_image.png) repeat-x left top / auto 100%;
  content: "";
  animation: loop 40s linear 0s infinite;
  will-change: transform;
  backface-visibility: hidden;
  transform: translateZ(0);
}

@keyframes loop {
  0% {
    transform: translateX(0%);
  }
  100% {
    transform: translateX(calc(-100% / 4));
  }
}

#l88zdtap7qpi2dewazya .eyecatch a img {
  position: absolute;
  top: 161vw;
  left: 0;
  right: 0;
  margin: 0 auto;
  width: calc(100vw * (508 / var(--easys_base_width)));
  height: calc(100vw * (266 / var(--easys_base_width)));
  animation-duration: 3s;
  animation-iteration-count: infinite;
  animation-name: loopRubberBand;
}

@keyframes loopRubberBand {
  from {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }
  10% {
    -webkit-transform: scale3d(1.25, 0.75, 1);
    transform: scale3d(1.25, 0.75, 1);
  }
  13.3% {
    -webkit-transform: scale3d(0.75, 1.25, 1);
    transform: scale3d(0.75, 1.25, 1);
  }
  16.6% {
    -webkit-transform: scale3d(1.15, 0.85, 1);
    transform: scale3d(1.15, 0.85, 1);
  }
  21.6% {
    -webkit-transform: scale3d(0.95, 1.05, 1);
    transform: scale3d(0.95, 1.05, 1);
  }
  25% {
    -webkit-transform: scale3d(1.05, 0.95, 1);
    transform: scale3d(1.05, 0.95, 1);
  }
  33.3% {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }
  to {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }
}

/*  デザインブロック DB
---------------------------------------------------------------------------------------------------- */
.db {
  position: relative;
}

.db *[class*="title"] {
  display: none;
}

/*  DB1
#
--------------------------------------------------------------- */

/*  DB2
#
--------------------------------------------------------------- */

/*  DB3
#
--------------------------------------------------------------- */

/*  DB4
#
--------------------------------------------------------------- */

/*  DB5
#
--------------------------------------------------------------- */

/*  DB6
#
--------------------------------------------------------------- */

/*  DB7
#
--------------------------------------------------------------- */

/*  DB8
#
--------------------------------------------------------------- */

/*  DB9
#
--------------------------------------------------------------- */

/*  バナー bnr
---------------------------------------------------------------------------------------------------- */
/* バナー＞業務内容 rxzqnubx2mhy5tmkm83c */
#rxzqnubx2mhy5tmkm83c div {
  margin: 0 !important;
}

#rxzqnubx2mhy5tmkm83c {
  padding: 20vw 0 !important;
  background: url(../files/sp_banner_01_bg.png) no-repeat center top / 100%;
}

/* バナー＞GATEN職/お問い合わせ pivj9hwad6s2pjdfvfjb */
#pivj9hwad6s2pjdfvfjb div {
  margin: 0 !important;
}

#pivj9hwad6s2pjdfvfjb {
  padding: 5vw 0 31vw !important;
  background: url(../files/sp_banner_04_bg.png) no-repeat center top / 100%;
}

/* バナー＞GATEN/トプラスの魅力 nxvnaew3amogpi0noyv0 */
#nxvnaew3amogpi0noyv0 div {
  margin: 0 !important;
}

#nxvnaew3amogpi0noyv0 .field_2col {
  width: 50%;
}

#nxvnaew3amogpi0noyv0 {
  background: url(../files/sp_banner_02_bg.png) no-repeat center top / 100%;
  padding: 21vw 0 !important;
}

/* パララックス cc6fp14jn2evq94tcd45 */
#cc6fp14jn2evq94tcd45 {
  position: relative;
  padding: 0 !important;
  overflow: hidden;
}
#cc6fp14jn2evq94tcd45 .easys_content_inner {
  -webkit-clip-path: inset(0);
  clip-path: inset(0);
  height: calc(543 / 640 * 100vw);
}
#cc6fp14jn2evq94tcd45 .field_1col:nth-of-type(1) {
  position: absolute;
  top: 0;
  left: 0;
  height: 0;
}
#cc6fp14jn2evq94tcd45 .field_1col:nth-of-type(1) img {
  position: fixed;
  top: 0;
  left: 0;
  z-index: -100;
  width: 100vw;
  height: 100vh;
  object-fit: cover;
}
#cc6fp14jn2evq94tcd45 .content_area,
#cc6fp14jn2evq94tcd45 .margin-bottom_10 {
  margin: 0;
  padding: 0 !important;
}
