@charset "utf-8";

@import url('https://fonts.googleapis.com/css2?family=Zen+Kaku+Gothic+New:wght@500;700&display=swap');

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

body {
  position: relative;
  margin: 0 auto;
  min-width: 1300px;
  max-width: 2000px;
  background: url("/files/body_bg.jpg") no-repeat center top/100%;
  word-break: break-word;
  font-family: 'Zen Kaku Gothic New', sans-serif;
}

body,
.wpcf7c-conf {
  color:
    #333333;
}

/* Safariのみ */
_:lang(x)+_:-webkit-full-screen-document,
body {
  text-size-adjust: none;
  -webkit-text-size-adjust: none;
}

body#page_6 {
  background: none no-repeat center top;
}

#wrapper {
  background: none transparent;
}

#outer_block {
  background: none transparent;
}

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

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

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

#page_6 #branding_box {
  height: 0px;
  padding: 0 0 calc(985 / 2000 * 100%) 0;
  background: none transparent;
}

/*  H1テキスト
---------------------------------------------------------------------------------------------------- */
#site-description {
  margin: 0 auto;
  width: auto;
  position: absolute;
  z-index: 752;
  top: calc(645 / 860 * 100%);
  right: calc(125 / 2000 * 100%);
}

#page_6 #site-description {
  top: calc(925 / 985 * 100%);
}

#site-description a {
  display: inline;
  color:
    #dd7994;
  text-align: right;
}

/*  サイトロゴ
---------------------------------------------------------------------------------------------------- */
/* ヘッダーのH1～グローバルナビの高さ調整 */
#header_information,
#page_6 #header_information {
  height: 0px;
}

/*ロゴ*/
#header_information .main_header a img {
  display: none;
}

/* #header_information .main_header a img {
  position: absolute;
  z-index: 752;
  background: url(/files/branding_box_bg.png) no-repeat center top / 100%;
  top: calc(10 / 860 * 100%);
  left: 0;
  right: 0;
  margin: 0 auto;
  width: calc(160 / 2000 * 100%);
  height: calc(160 / 860 * 100%);
}

#page_6 #header_information .main_header a img {
  top: calc(10 / 985 * 100%);
  width: calc(160 / 2000 * 100%);
  height: calc(160 / 985 * 100%);
}

#header_information .main_header a img.fixed {
  position: fixed !important;
  top: 0;
  left: 0;
  transform: none !important;
  z-index: 1000;
  animation: nav_anime 0.5s ease 0s forwards;
}

@media(min-width:2000px) {
  #header_information .main_header a img.fixed {
    left: calc(50% - 1000px) !important;
  }
} */

/*  グローバルナビ（access）
---------------------------------------------------------------------------------------------------- */
#access {
  margin: 0 auto;
  position: fixed;
  top: calc(20 / 2000 * 100vw);
  left: 0;
  z-index: 751;
  padding: 0;
  width: 100%;
  height: 80px;
  transform-origin: center;
}

@media(max-width:1316px) {
  #access {
    top: 13.2px;
  }
}

@media(min-width:2000px) {
  #access {
    top: 20px;
  }
}

div#access .menu-header {
  margin: 0 auto;
  width: 950px;
  height: 80px;
}

div#access .menu-item a {
  background-image: url('/files/topnavi.png');
  background-repeat: no-repeat;
  background-position: scroll;
  background-color: transparent;
  height: 80px;
  margin: 0px;
  padding: 0px;
}

div#access .gnavi11 a {
  background-position: left top;
  width: 80px;
}

div#access .gnavi12 a {
  background-position: -80px top;
  width: 110px;
}

div#access .gnavi13 a {
  background-position: -190px top;
  width: 200px;
}

#menu-item-1295 {
  margin-top: -20px !important;
}

#access.fixed #menu-item-1295 {
  margin-top: 0px !important;
}

div#access .gnavi14 a {
  background-position: -390px top;
  width: 160px;
  height: 160px;
  background: url(/files/branding_box_bg.png) no-repeat center top/100%;
}

div#access .gnavi15 a {
  background-position: -550px top;
  width: 170px;
}

div#access .gnavi16 a {
  background-position: -720px top;
  width: 130px;
}

div#access .gnavi17 a {
  background-position: right top;
  width: 100px;
}

div#access .gnavi11 a:hover {
  background-position: left bottom;
  width: 80px;
}

div#access .gnavi12 a:hover {
  background-position: -80px bottom;
  width: 110px;
}

div#access .gnavi13 a:hover {
  background-position: -190px bottom;
  width: 200px;
}

div#access .gnavi14 a:hover {
  background-position: -390px bottom;
  width: 160px;
  height: 160px;
  background: url(/files/branding_box_bg.png) no-repeat center top/100%;
}

div#access .gnavi15 a:hover {
  background-position: -550px bottom;
  width: 170px;
}

div#access .gnavi16 a:hover {
  background-position: -720px bottom;
  width: 130px;
}

div#access .gnavi17 a:hover {
  background-position: right bottom;
  width: 100px;
}

/*固定時用ナビ*/
#access.fixed {
  position: fixed;
  height: 80px;
  width: 100%;
  max-width: 2000px;
  min-width: 1300px;
  padding: 0;
  top: 0;
  bottom: inherit;
  right: 0;
  left: 0;
  background: rgba(255, 255, 255, 0.85);
  z-index: 999;
  transform: none !important;
  /* animation: nav_anime 0.8s ease 0s forwards; */
}

/* @keyframes nav_anime {
  from {
    top: -80px;
  }

  to {
    top: 0;
  }
} */

#access.fixed .menu-header {
  margin: 0 auto;
  float: none;
  max-width: 2000px;
  transform: none !important;
}

#access ul.menu ul.sub-menu {
  top: 80px;
}

#access ul.menu ul.sub-menu,
#access ul.menu ul.sub-menu li {
  width: 100%;
}

div#access ul.sub-menu li.sub-gnavi a,
div#access ul.sub-menu li.sub-gnavi2 a {
  width: 100%;
  background: none rgba(254, 251, 252, 0.85);
  color: #dd7994;
}

#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: #dd7994;
}

div#access ul.sub-menu li.sub-gnavi a:hover,
div#access ul.sub-menu li.sub-gnavi2 a:hover {
  background: none rgba(254, 251, 252, 0.85);
  color: #e40f64;
}

#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: #e40f64;
}

/*  メイン画像
---------------------------------------------------------------------------------------------------- */
#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%;
}

/* スライダー(スクロール距離を稼ぐ為に200vhにする) */
#video_teaser {
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  z-index: -1;
  margin: 0 auto;
  width: 100%;
  height: 200vh;
  text-align: center;
  -webkit-clip-path: inset(0);
  clip-path: inset(0);
}

/* fixedする */
#video_teaser #video_teaser_inner {
  position: fixed;
  top: 0;
  right: 0;
  left: 0;
  z-index: -1;
  margin: 0 auto;
  min-width: 1300px;
  max-width: 2000px;
  height: 100vh;
  /* 100vh固定 */
}

/*背景画像*/
#video_teaser_inner .before {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: url(/files/body_bg_top.jpg)no-repeat center top / 100%;
  z-index: -1;
}

/* カバー画像 */
#video_teaser_inner .after {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: url(/files/movie_front02.png)no-repeat center top / 100%;
}

#video_teaser #video_teaser_inner video {
  width: calc(1750 / 2000 * 100%);
  margin: calc(120 / 2000 * 100%) auto 0;
}

/* ===================================================================================================================
   ■ サイド
------------------------------------------------------------------------------------------------------------------- */
/* サイドナビ　タイトル */
.widget-title,
.widget-title2 a {
  padding: 0;
  background-image: url(/files/widget_title_bg.png);
  color:
    #ffffff;
  text-align: center;
}

.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 {
  overflow: hidden;
  background-image: url(/files/widget_list_bg.png);
  color:
    #333333;
  text-overflow: ellipsis;
  white-space: nowrap;
}

#wp-calendar {
  border-collapse: separate;
}

#wp-calendar caption {
  text-align: center;
}

/*#wp-calendar thead th {
}*/
#wp-calendar tbody td {
  padding: 5px;
  border-width: 0 0 1px;
  border-style: dotted;
  border-color:
    #666666;
  background: none transparent;
  line-height: 2;
}

#wp-calendar tbody td a {
  text-decoration: underline;
}

#wp-calendar tbody td a:hover {
  text-decoration: none;
}

#calendar_wrap table tr td#today {
  background-color:
    #dd7994;
}

#calendar_wrap table tr td#today,
#calendar_wrap table tr td#today a {
  color: #ffffff;
}

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

#footer_box {
  height: 600px;
  background: url(/files/footer_box_bg.png) no-repeat center top;
}

#footer-widget-area {
  /*フッターナビの所*/
  display: block;
}

/*  フッターナビ
---------------------------------------------------------------------------------------------------- */
#footer-widget-area .widget-area {
  position: absolute;
  top: 340px;
  left: calc(50% - 140px);
  width: 500px;
}

#footer_sitemap_block #footer-widget-area {
  display: block;
  width: 960px;
}

#footer_sitemap_block #footer-widget-area .widget-area ul.menu {
  border: none;
}

#footer-widget-area .widget-area .menu-item {
  margin-bottom: 10px;
}

#footer_sitemap_block #footer-widget-area .widget-area .menu-item a {
  border: none;
  color:
    #000000;
}

#footer_sitemap_block #footer-widget-area .widget-area .menu-item a:hover {
  background-color: transparent;
}

/*ナビ・装飾*/
/* #footer-widget-area .widget-area .menu-item {
  position: relative;
}

#footer-widget-area .widget-area .menu-item::before {
  display: block;
  content: '・';
  width: 15px;
  height: 15px;
  color: #ccc;
  position: absolute;
} */

/*ナビ縦*/
/* #footer_sitemap_block #footer-widget-area .widget-area .menu-item a:hover {
  background-color: transparent;
}
#footer-widget-area .widget-area .menu-item {
  float: none;
  text-align: left;
} */

/*ナビ２列*/
/* #footer_sitemap_block #footer-widget-area .widget-area ul.menu {
  border: none;
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
  height: 100px;
  align-content: space-between;
  width: 425px;
} */

/*  フッター情報
---------------------------------------------------------------------------------------------------- */

#footer_information {
  position: absolute;
  top: 215px;
  left: calc(50% - 128px);
}

#footer_information .entry-post {
  width: 300px;
  margin: 0;
  text-align: left;
}

/*  フッター住所文字色
---------------------------------------------------------------------------------------------------- */
#footer_information .entry-post .post-data>p {
  color:
    #000000;
}

/*  コピーライト
---------------------------------------------------------------------------------------------------- */
#copyright {
  color:
    #e40f64;
}

#copyright {
  position: absolute;
  bottom: 130px;
  left: calc(50% - 126px);
  text-align: left;
}

/*  サイドメニュー
---------------------------------------------------------------------------------------------------- */
.fixed-btn {
  z-index: 1000;
  position: fixed;
  right: 0;
  bottom: 125px;
}

.fixed-btn div,
.fixed-btn div a {
  display: block;
  width: 50px;
  height: 100px;
}

.fixed-btn div:last-child {
  margin-bottom: 0;
}

#fixed-btn_access {
  background: url(/files/btn_map.png) no-repeat left top;
}

#fixed-btn_faq {
  background: url(/files/btn_faq.png) no-repeat left top;
  height: 140px;
}

#fixed-btn_faq a {
  height: 140px;
}

#fixed-btn_blog {
  background: url(/files/btn_blog.png) no-repeat left top;
  height: 90px;
}

#fixed-btn_blog a {
  height: 90px;
}

#fixed-btn_reserve {
  background: url(/files/btn_hb.png) no-repeat left top;
}

#fixed-btn_line {
  background: url(/files/btn_insta.png) no-repeat left top;
    height: 140px;
}

#fixed-btn_line a {
  height: 140px;
}

.fixed-btn div:hover {
  background-position: right top !important;
}

/*  スクロールトップ
---------------------------------------------------------------------------------------------------- */
#float_top_btn {
  right: 20px;
  bottom: 30px;
}

#float_top_btn a:hover img {
  opacity: 0.8;
}

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

#container_top.single_post {
  padding: 0 0 50px;
}

/*  見出し
---------------------------------------------------------------------------------------------------- */
.headline_title {
  background-image: url(/files/top_entry_title.png);
  color:
    #dd7994;
  height: 150px;
  line-height: 150px;
}

h3.entry_title,
.entry_title,
.entry-title {
  /* サイズ、背景、余白などはこちら */
  background-image: url(/files/entry_title_bg.png);
  color:
    #333333;
}

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

/* 見出しリンクボタン */
.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;
}

* .mid_entry_title,
* .mid_entry_title a {
  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:
    #333333;
}

/* B-03など小見出し用 */
* .sub_entry_title {
  background: url(/files/sub_entry_title_bg.png) no-repeat scroll left top transparent;
  color:
    #333333;
}

/*
* .sub_entry_title h4 {
  フォントサイズはこちら
}
*/
* .sub_entry_title a:link,
* .sub_entry_title a:visited,
* .sub_entry_title a:hover,
* .sub_entry_title a:active {
  color:
    #333333;
}

/* 小見出しリンクボタン */
.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;
}

* .mid_sub_entry_title,
* .mid_sub_entry_title a {
  color:
    #333333;
}

/* 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 {
  padding: 10px;
  height: auto;
  border: 1px solid transparent;
  border-radius: 5px;
  background: none transparent;
  color:
    #333333;
  text-align: left;
  font-size: 15px;
  line-height: 1.7;
}

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

/* 大きな地図で見る */
small {
  border-color:
    #dd7994;
}

small a {
  padding: 5px 0;
  width: 100%;
  color:
    #dd7994 !important;
  text-align: center !important;
}

small a:hover {
  background-color:
    #dd7994 !important;
  color: #ffffff !important;
}

#rf8jvyojuils00h86sxy .html_post small {
  height: 36px;
  margin: 10px auto;
}

#rf8jvyojuils00h86sxy .html_post small a {
  height: 36px;
}

/*  テーブル
---------------------------------------------------------------------------------------------------- */
.easys_content:not(.ne_01) table:not(#wp-calendar) tr>* {
  border: none !important;
  background: none #fceef3;
  color:
    #333333;
  box-sizing: border-box;
}

.easys_content:not(.ne_01) table:not(#wp-calendar) {
  border-collapse: separate;
  border-spacing: 0 10px !important;
}

table.iqfm-table td {
  min-width: 7em;
}

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

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

.table_area table tr td {
  border: solid 1px transparent !important;
  border-right: none !important;
  border-left: none !important;
  background: none transparent;
}

/*  ページ遷移ボタン（詳細ブロックやページ送りのナビ用）
---------------------------------------------------------------------------------------------------- */
.tablenav {
  padding: 1em 0;
}

a.page-numbers,
.tablenav .current,
.permalink_in a,
.pageback a,
.page_up a {
  border-style: solid;
  border-color:
    #dd7994;
  background: none transparent;
  color:
    #dd7994 !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 #ffffff;
  background: none transparent;
}

.tablenav .next:hover,
.tablenav .next:active,
.tablenav .prev:hover,
.tablenav .prev:active {
  border-color:
    #dd7994;
  background-color:
    #dd7994;
}

.tablenav .current,
a.page-numbers:hover,
.permalink_in a:hover,
.permalink_in a:active,
.pageback a:hover,
.pageback a:active,
.page_up a:hover,
.page_up a:active {
  border-style: solid;
  border-color:
    #dd7994;
  background: none #dd7994;
  color: #ffffff !important;
}

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

/* Cブロック */
.c_01,
.c_02,
.c_03,
.c_05,
.c_06 {
  display: inline-block;
  padding: 0 0 20px;
  width: 100%;
}

.c_04 {
  margin: 0 0 20px;
}

/* Dブロック */
.menu-list table {
  border-collapse: separate;
}

/* Gブロック */
.g_01 .sub_entry_title a,
.g_02 .sub_entry_title a {
  text-decoration: underline;
}

.g_01 .sub_entry_title a:hover,
.g_02 .sub_entry_title a:hover {
  text-decoration: none;
}

/* Kブロック */
.k_03 .date_area {
  font-weight: bold;
  font-size: 13px;
}

.k_03 .news_small_text {
  font-size: 12px;
  line-height: 1.7;
}

/* Z-D ブログRSS */
.z_d1 {
  margin: 0 0 20px;
}

/* Z-E リンクバナー */
.banner_box {
  text-align: center;
}

.banner_box img {
  max-width: 100%;
  width: auto;
}

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

/* Z_L お知らせブロック */
.Z_l1 .date_area {
  font-weight: bold;
  font-size: 13px;
}

.Z_l1 .news_small_text {
  font-size: 12px;
}

/* Z_M タブブロック */
.z_m1 .link_list {
  font-size: 13px;
  line-height: 1.5;
}

.z_m1 div.link_list {
  margin-bottom: 10px;
}

div.link_list a {
  border: 1px solid #dd7994;
  background-color: transparent;
  color:
    #dd7994;
}

div.link_list a:hover {
  border: 1px solid #dd7994;
  background-color:
    #dd7994;
  color: #ffffff;
}

.faq-title {
  background-color:
    #dd7994;
  color: #ffffff;
  font-weight: normal;
}

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

/* 必須項目 */
.iqfm-req_color {
  color:
    #dd7994;
}

.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:
    transparent;
}

/* 有効期限の部分 */
.coupon_box table tr td.coupon_meta_title {
  width: 8em;
  background-color:
    transparent;
  color:
    #333333;
}

.coupon_box table tr td.coupon_meta {
  background-color:
    #fceef3;
  color:
    #333333;
}

.e-04 .menu_area td {
  height: 3.5em;
}

.e-04 .menu_area .parent_title {
  height: auto;
  font-size: 120%;
}

/*  ブログ
---------------------------------------------------------------------------------------------------- */
#nav-below div {
  border-color: #000000;
}

#nav-below .nav-next {
  padding: 0 0 0 10px;
}

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

#blog_main .entry-title,
#blog_main .entry-title a {
  color:
    #333333;
}

.img_size_thumb {
  overflow: hidden;
  width: 150px;
  height: 150px;
}

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

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

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

/* ============================== ↓↓各ブロックの個別CSSはこちらに記述↓↓ ============================== */
/*上下左右フェードインギミック------------------------------------*/
.f_up,
.f_down,
.f_left,
.f_right,
.f_blur {
  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);
}

.f_blur {
  filter: blur(15px);
}

.moved {
  transform: translate(0px, 0px);
  filter: blur(0);
}

/*全体フェードイン　Dブロックは解除*/
.easys_content_inner:not(.nd_01 .easys_content_inner) {
  transition: all 2s ease 0s;
  transform: translate(0px, 20px);
  opacity: 0;
}

.easys_content_inner.moved_all:not(.nd_01 .easys_content_inner.moved_all) {
  transform: translate(0px, 0px);
  opacity: 1;
}

/* 対象のマージンを消す */
.easys_content.no_margin {
  margin: 0;
}

/* もし記事が割り込まれたらマージンを入れる */
.easys_content.no_margin+.easys_content:not(.no_margin) {
  margin-top: 70px;
}

.easys_content.no_margin.nk_01 [class*="title"] {
  margin-bottom: 0;
  padding-bottom: 25px;
}

/* デザインブロック共通設定
--------------------------------------- */
/*追加画像*/
.add_images {
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  pointer-events: none;
}

.db_block {
  margin-top: 0 !important;
}

.db_block *[class*="title"] {
  display: none;
}

.easys_content .sub_post .float_left {
  float: left !important;
}

.easys_content .sub_post .float_right {
  float: right !important;
}

#page_6 #outer_block:not(.shosai #page_6 #outer_block) {
  padding-top: 0;
}

/* ===========================================================================
     TOP
=========================================================================== */
/*セカンドメイン＞安心価格
ulifg11rg2hric51uj8j
--------------------------------------- */
#ulifg11rg2hric51uj8j {
  position: relative;
}

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

#ulifg11rg2hric51uj8j .easys_content_inner {
  width: 100%;
}

#ulifg11rg2hric51uj8j div {
  margin: 0 !important;
  padding: 0 !important;
}

#ulifg11rg2hric51uj8j .img01 {
  display: block;
  background: url(/files/2nd_bg01.png) no-repeat center top / 100%;
  width: calc(440 / 2000 * 100%);
  height: calc(300 / 1050 * 100%);
  margin-top: calc(30 / 2000 * 100%);
  margin-left: calc(780 / 2000 * 100%);
}

#ulifg11rg2hric51uj8j #design_video01 {
  display: block;
  background: url(/files/2nd_bg01.png) no-repeat center top / 100%;
  width: calc(400 / 2000 * 100%);
  height: calc(400 / 1050 * 100%);
  position: absolute;
  top: calc(565 / 1050 * 100%);
  left: calc(225 / 2000 * 100%);
}

#ulifg11rg2hric51uj8j #design_video01 video {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/*TOP記事
x78d8aai3huyfyv8yheo
--------------------------------------- */
#nxqyaobyodnciu8qdycy {
  background: none #fefbfc;
}

/*DB＞理想を叶えるために毎月ちゃんと通えるお手頃価格♪
nxqyaobyodnciu8qdycy
--------------------------------------- */
#nxqyaobyodnciu8qdycy {
  position: relative;
  background: url(/files/db01_bg03.jpg) no-repeat center top #fefbfc;
  color: #dd7995;
}

#nxqyaobyodnciu8qdycy,
#nxqyaobyodnciu8qdycy .easys_content_inner,
#nxqyaobyodnciu8qdycy .entry_post {
  height: 1250px;
  position: relative;
  z-index: 9;
}

#nxqyaobyodnciu8qdycy .text_box {
  width: 440px;
  margin: 845px auto 0 0;
}

#nxqyaobyodnciu8qdycy .img01 {
  background: url(/files/db01_bg02.jpg) no-repeat center top;
  width: 1300px;
  height: 710px;
  position: absolute;
  top: 115px;
  left: calc(50% - 300px);
}

#nxqyaobyodnciu8qdycy .img02 {
  background: url(/files/db01_bg01.png) no-repeat center top;
  width: 950px;
  height: 700px;
  position: absolute;
  top: 550px;
  left: calc(50% - 665px);
}

#nxqyaobyodnciu8qdycy .easys_content_inner {
  overflow: visible;
}

#nxqyaobyodnciu8qdycy .text_size_full {
  overflow: visible;
}

/*下記ボタン指定*/
/*ボタン画像　共通設定*/
#nxqyaobyodnciu8qdycy .sub_text_btn,
#nxqyaobyodnciu8qdycy .sub_text_btn a {
  margin: 0;
  padding: 0;
  display: block;
  text-indent: -9999px;
  position: relative;
}

/*ボタン1 位置指定*/
#nxqyaobyodnciu8qdycy .sub_post_0 {
  position: absolute;
  top: 1105px;
  left: calc(50% - 480px);
  margin: 0;
  width: auto;
}

/*ボタン1 サイズとボタンOFF画像指定*/
#nxqyaobyodnciu8qdycy .sub_post_0 .sub_text_btn a {
  width: 210px;
  height: 50px;
  background: url(/files/db01_btn01.png) no-repeat center;
}

/*ボタン2 位置指定*/
#nxqyaobyodnciu8qdycy .sub_post_1 {
  position: absolute;
  top: 1105px;
  left: calc(50% - 260px);
  margin: 0;
  width: auto;
}

/*ボタン2 サイズとボタンOFF画像指定*/
#nxqyaobyodnciu8qdycy .sub_post_1 .sub_text_btn a {
  width: 210px;
  height: 50px;
  background: url(/files/db01_btn02.png) no-repeat center;
}

/* .button--bubble__container {
  position: relative;
  display: inline-block;
} */
#nxqyaobyodnciu8qdycy .sub_text_btn {
  position: relative;
  display: inline-block;
}

.button {
  -webkit-font-smoothing: antialiased;
  background-color: #dd7995;
  border: none;
  color: #fff;
  display: inline-block;
}

.button:hover {
  background-color: #dd7995;
}

.button:active {
  transform: scale(0.95);
}

.button--bubble {
  position: relative;
  z-index: 2;
  background: none;
}

.button--bubble:hover {
  background: none;
}

.button--bubble:hover+.button--bubble__effect-container .circle {
  background: #dd7995;
}

.button--bubble:hover+.button--bubble__effect-container .button {
  background: #dd7995;
}

.button--bubble:active+.button--bubble__effect-container {
  transform: scale(0.95);
}

.effect-button {
  position: absolute;
  width: 50%;
  height: 25%;
  top: 50%;
  left: 25%;
  z-index: 1;
  transform: translateY(-50%);
  background: #dd7995;
  border-radius: 50px;
}

.button--bubble__effect-container {
  position: absolute;
  display: block;
  width: 200%;
  height: 400%;
  top: -150%;
  left: -50%;
  -webkit-filter: url("#goo");
  filter: url("#goo");
  transition: all 0.1s ease-out;
  pointer-events: none;
}

.button--bubble__effect-container .circle {
  position: absolute;
  width: 25px;
  height: 25px;
  border-radius: 15px;
  background: #dd7995;
}

.button--bubble__effect-container .circle.top-left {
  top: 40%;
  left: 27%;
}

.button--bubble__effect-container .circle.bottom-right {
  bottom: 40%;
  right: 27%;
}

.goo {
  position: absolute;
  visibility: hidden;
  width: 1px;
  height: 1px;
}

@keyframes hue-rotate {
  from {
    -webkit-filter: hue-rotate(0);
    -moz-filter: hue-rotate(0);
    -ms-filter: hue-rotate(0);
    filter: hue-rotate(0);
  }

  to {
    -webkit-filter: hue-rotate(360deg);
    -moz-filter: hue-rotate(360deg);
    -ms-filter: hue-rotate(360deg);
    filter: hue-rotate(360deg);
  }
}

/* DB＞スティッキー用
u4b0sac0ohwuf5dim1nu
--------------------------------------- */
#u4b0sac0ohwuf5dim1nu {
  position: relative;
}

#main {
  overflow: clip;
}

.sticky_parent {
  position: relative;
  padding: 0 !important;
  width: 100%;
  height: 100vh;
}

.sticky_child {
  position: sticky;
  top: 0;
  left: 0;
  display: flex;
  overflow: hidden;
  width: 100%;
  height: 100vh;

  place-content: center;
  place-items: center;
}

.sticky_child>div {
  width: 100%;
}

#u4b0sac0ohwuf5dim1nu:before {
  content: " ";
  display: block;
  position: absolute;
  top: 50vh;
  left: 0;
  right: 0;
  margin: 0 auto;
  z-index: 1;
  width: 100%;
  height: 240px;
  pointer-events: none;
  transform: translateY(-50%);
  background: url(/files/db03_bg01.png) repeat-x top center/100%;
  animation: anime-bg 40s linear 0s infinite;
  max-width: 2000px;
}

/* 該当ブロックにクラスが付いた時 */
#u4b0sac0ohwuf5dim1nu.scroll_in:before {
  position: fixed;
}

/* 該当ブロックにクラスが付いた時 */
#u4b0sac0ohwuf5dim1nu.scroll_in_1:before {
  top: inherit;
  transform: translateY(0);
  bottom: calc(700 / 2000 * 100vh);
}

@keyframes anime-bg {
  0% {
    background-position: left 0px top;
  }

  100% {
    background-position: left -2000px top;
  }
}

#u4b0sac0ohwuf5dim1nu.scroll_in_1.pad::before {
  bottom: calc(830 / 2000 * 100vh);
}

#u4b0sac0ohwuf5dim1nu.scroll_in_1.pad::after {
  bottom: calc(530 / 2000 * 100vh);
}

#u4b0sac0ohwuf5dim1nu.scroll_in::before,
#u4b0sac0ohwuf5dim1nu.scroll_in::after {
  position: fixed;
}

#u4b0sac0ohwuf5dim1nu::after {
  display: block;
  content: '';
  pointer-events: none;
  background: url(/files/db03_bg02.png) no-repeat center top/100%;
  width: 438px;
  height: 409px;
  position: absolute;
  top: 50vh;
  left: calc(50% + 230px);
  transform: translateY(-50%);
  z-index: 99;
  animation: 1.5s ease-in-out infinite alternate huwahuwa;
}

@keyframes huwahuwa {
  0% {
    transform: translateY(0);
  }

  100% {
    transform: translateY(20px);
  }
}

/* 該当ブロックにクラスが付いた時 */
#u4b0sac0ohwuf5dim1nu.scroll_in_1:after {
  top: inherit;
  transform: translateY(0);
  bottom: calc(100 / 2000 * 100vh);
}


/*DB＞お悩み別で最適なコースをご提案
qjpl0xn4s4mamd36woco
--------------------------------------- */
#qjpl0xn4s4mamd36woco {
  position: relative;
  background: url(/files/db03_bg04.jpg) no-repeat center top;
}

#qjpl0xn4s4mamd36woco,
#qjpl0xn4s4mamd36woco .easys_content_inner,
#qjpl0xn4s4mamd36woco .entry_post {
  height: 750px;
}

#qjpl0xn4s4mamd36woco .text_box {
  width: 960px;
  margin: 330px auto 0;
}

#qjpl0xn4s4mamd36woco .text_box p {
  text-align: center;
  color: #dd7995;
}

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

/*新着情報
mcjm4i1sgutqg0x0egdd
--------------------------------------- */
#g1tti3n35c1cf5py6q2a {
  background: url(/files/block_bg_pink.png)repeat center top;
  padding: 70px 0 0px;
}

#g1tti3n35c1cf5py6q2a .entry_title {
  margin-bottom: 0;
}

#mcjm4i1sgutqg0x0egdd {
  background: url(/files/block_bg_pink.png)repeat center top;
  padding: 20px 0 70px;
}

#mcjm4i1sgutqg0x0egdd .blog_post {
  background-color: #fff;
  border: none;
  box-sizing: border-box;
  margin-bottom: 20px;
  padding: 20px;
}

#mcjm4i1sgutqg0x0egdd .blog_list_text_size {
  width: 750px;
}

/*バナー＞フェイシャルケア／脱毛（※top）
xpw7we6den166lv2lcdi
--------------------------------------- */
#xpw7we6den166lv2lcdi {
  background: url(/files/banner_half_bg.jpg) repeat center top;
  padding: 140px 0;
}

#xpw7we6den166lv2lcdi .easys_content_inner {
  width: 1100px;
  height: 300px;
  padding: 0;
}

#xpw7we6den166lv2lcdi .eyecatch {
  width: 100%;
}

#xpw7we6den166lv2lcdi .margin-bottom_30 {
  margin-bottom: 0;
}

#xpw7we6den166lv2lcdi .field_2col {
  width: calc(530 / 1100 * 100%) !important;
  position: relative;
}

#xpw7we6den166lv2lcdi .field_2col::before {
  display: block;
  content: '';
  width: 100%;
  height: 100%;
  position: absolute;
  pointer-events: none;
  transition: all .5s;
}

#xpw7we6den166lv2lcdi .field_2col:hover::before {
  opacity: 1;
}

#xpw7we6den166lv2lcdi .float_left::before {
  background: url(/files/banner_half_facial_on.jpg) no-repeat center top;
  opacity: 0;
}

#xpw7we6den166lv2lcdi .float_right::before {
  background: url(/files/banner_half_hair-removal_on.jpg) no-repeat center top;
  opacity: 0;
}

#xpw7we6den166lv2lcdi .eyecatch a img {
  opacity: 1;
}

/*会社概要 (top)
rf8jvyojuils00h86sxy
--------------------------------------- */

/*バナー＞ご予約はこちらから（※top）
oidgqiu4zszfmr6vkkfz
--------------------------------------- */
#oidgqiu4zszfmr6vkkfz {
  position: relative;
  background: url(/files/banner_hp_bg03.jpg) no-repeat center top;
  height: 730px;
}

#oidgqiu4zszfmr6vkkfz::before {
  display: block;
  content: '';
  width: 100%;
  height: 206px;
  pointer-events: none;
  position: absolute;
  top: 300px;
  left: 0;
  background: url(/files/banner_hp_bg02.png)repeat-x left top;
  animation: anime-bg1 40s linear 0s infinite;
}

/*右から左*/
@keyframes anime-bg1 {
  0% {
    background-position: left 0px top;
  }

  100% {
    background-position: left -1680px top;
  }
}

#oidgqiu4zszfmr6vkkfz::after {
  display: block;
  content: '';
  width: 100%;
  height: 100%;
  pointer-events: none;
  position: absolute;
  top: 0;
  left: 0;
  background: url(/files/banner_hp_bg01.png)no-repeat center top;
}

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

#oidgqiu4zszfmr6vkkfz,
#oidgqiu4zszfmr6vkkfz .field_1col,
#oidgqiu4zszfmr6vkkfz .easys_content_inner {
  width: 100%;
}

/*ボタン画像サイズ*/
#oidgqiu4zszfmr6vkkfz .eyecatch {
  position: absolute;
  top: 287px;
  left: calc(50% + 40px);
  width: 190px;
  height: 190px;
}

/*ON画像*/
#oidgqiu4zszfmr6vkkfz .eyecatch::before {
  display: block;
  content: '';
  width: 100%;
  height: 100%;
  background: url(/files/banner_hp_on.png)no-repeat center top/100%;
  position: absolute;
  pointer-events: none;
  opacity: 0;
  transition: all .3s;
  z-index: 100;
}

#oidgqiu4zszfmr6vkkfz .eyecatch:hover::before {
  opacity: 1;
}

#oidgqiu4zszfmr6vkkfz .eyecatch a img {
  transition: all .3s;
  z-index: 99;
  position: relative;
}

#oidgqiu4zszfmr6vkkfz .eyecatch:hover a img {
  opacity: 1;
}

/*イメージ画像（※top）
sm6r5fzg7r0b85rvzi4a
--------------------------------------- */
#sm6r5fzg7r0b85rvzi4a {
  -webkit-clip-path: inset(0);
  clip-path: inset(0);
  position: relative;
  margin-bottom: 0;
}

#sm6r5fzg7r0b85rvzi4a [class*="field_"]:nth-of-type(1) img {
  object-fit: cover;
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  z-index: -1;
}

#sm6r5fzg7r0b85rvzi4a .easys_content_inner {
  width: 100%;
  padding: 0;
}

#sm6r5fzg7r0b85rvzi4a .margin-bottom_50 {
  margin-bottom: 0;
  line-height: 0;
}

/* ===========================================================================
     FACIAL TREATMENT
=========================================================================== */
/*イメージ画像（※facial-treatment）
yxz88jbw6nndtygtiy30
--------------------------------------- */
#yxz88jbw6nndtygtiy30 {
  -webkit-clip-path: inset(0);
  clip-path: inset(0);
  position: relative;
  margin-bottom: 0;
}

#yxz88jbw6nndtygtiy30 [class*="field_"]:nth-of-type(1) img {
  object-fit: cover;
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  z-index: -1;
}

#yxz88jbw6nndtygtiy30 .easys_content_inner {
  width: 100%;
  padding: 0;
}

#yxz88jbw6nndtygtiy30 .margin-bottom_50 {
  margin-bottom: 0;
  line-height: 0;
}

/* ===========================================================================
     HAIR REMOVAL
=========================================================================== */
/*イメージ画像（※hair-removal）
eruo51s2fgqkfrahnzsv
--------------------------------------- */
#eruo51s2fgqkfrahnzsv {
  -webkit-clip-path: inset(0);
  clip-path: inset(0);
  position: relative;
  margin-bottom: 0;
}

#eruo51s2fgqkfrahnzsv [class*="field_"]:nth-of-type(1) img {
  object-fit: cover;
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  z-index: -1;
}

#eruo51s2fgqkfrahnzsv .easys_content_inner {
  width: 100%;
  padding: 0;
}

#eruo51s2fgqkfrahnzsv .margin-bottom_50 {
  margin-bottom: 0;
  line-height: 0;
}