@charset "utf-8";

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



/* ===================================================================================================================
   ■共有
------------------------------------------------------------------------------------------------------------------- */
/* リンク */
a:link, a:visited, a:hover, a:active{
  text-decoration: underline;
}


#main {
    margin-top:0;
    overflow: hidden;
}

body:not(#page-6) #h1_teaser_image {
    max-height: 310px!important;
    height: 18.8vw!important;
}

/*中ページ　固定時ロゴ*/
#h1_teaser_image a.fixed{
    position: fixed;
    top: 0;
    z-index: 1000;
    width: 100%;
    background: url(/files/sp_main_logo.png)no-repeat center top/100%;
}


/*スライダーの上にロゴを重ねる*/
#page-6 #slide {
  position: absolute;
  top: 0;/*ロゴの上からの位置調整*/
}
#page-6 #jquery_slider_sp {
  margin: 0;
  position: relative;
  z-index: 1;
}
#page-6 #h1_teaser_image {
  position: relative;
  z-index: 10;
}



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

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


/* ===================================================================================================================
   ■ナビ
------------------------------------------------------------------------------------------------------------------- */
#Side .xoxo li .menu-item a {
    text-align: left;
    padding-left: 9%;
}

/* メニューON時　メニューの文字色変更 */
#Side .xoxo li .menu-item a {
  color: #000000 !important;
}

/* ブログ下部 ブログメニュー部分　文字色変更 */
#primary ul.xoxo li ul li a {
  color: #dfb200 !important;/*h3と同じリンク色か全体のリンクカラー*/
}
/* ブログ下部 ブログメニュー部分　下線色変更 */
#Side .xoxo li .menu-item a,
#primary ul.xoxo li ul li {
  border-color: #000 !important;/*h3と同じボーダー色か全体のボーダーカラー*/
}
#rSide_wrap {background: none transparent !important;}
#calendar_wrap table tr td a { text-decoration: underline; }
#calendar_wrap table tr td a:hover { text-decoration: none; }
#calendar_wrap table tr td#today,
#calendar_wrap table tr td#today a { color: #fff; }/*fffか333かサイト背景色*/

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

/* ===================================================================================================================
   ■見出し
------------------------------------------------------------------------------------------------------------------- */
/*中ページ ページタイトル*/
#naka_page_title {
    margin: 0 0 1em;
}
#naka_page_title h1 {
  background: #87cc76;
  color: #294e07;
  padding: 1em 5%;
  text-align: center;
}

* .headline_title {
    padding-top: 1.7em;
}
* .entry_title {
    background-position: center bottom!important;
}
* .widget-title, * .widget-title2, .top-back.unity_title {
    background-position: center bottom!important;
}
* .sub_post_title {
    background-position: center bottom!important;
}
* .inline_title,
* small a {
  text-align: center;
  border-radius: 0;
  width: 90%;
  margin: 10px auto 0;
  display: flex;
  justify-content: center;
}
* .permalink_in a,* .pageback a {
    border-radius: 0;
    width: 90%;
    margin: 10px auto 0;
    display: flex;
    justify-content: center;
}


/* ===================================================================================================================
   ■ブロック
------------------------------------------------------------------------------------------------------------------- */
th,td{
  vertical-align: top;
  white-space: initial !important;
}

.mobile_e1 .icon_list_block {
  width: 100%;
  box-sizing: border-box;
}
.mobile_e1 .entry_post:not(:last-of-type) .icon_list_block {
  padding-bottom: 0 !important;
}

.icon_list_block {
}
.img_thumb, .column_1, .column_2, .column_3, .column_4 { text-align: center; }
.img_thumb img, .column_1 img, .column_2 img, .column_3 img, .column_4 img {
  max-width: 100%;
  width: auto;
  vertical-align: top;
}


.menu_area td, .menu_td_text, .bottom_border {
  /* Dブロック　メニュー部点線 */
  border-color: #000000 !important;
}
.menu_area td, .menu_td_text {
  vertical-align: top !important;
}

.flow_arr {
  background-size: contain !important;
}

/* K-01、K-02 メール投稿ブロック */
.k_01 .content_area, .k-02 .content_area {
  line-height: 2;
}

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

.gallery_box {
  display: inline-block;
  width: 100%;
  height: auto;
}

.j_01 .sub-post { margin: 0 10px 20px; }
.j_01 .content_area .sub-post { margin: 0; }


.z_d1 {
  overflow-x: hidden;
  overflow-y: scroll;
  max-height: 75vh;
  margin-bottom: 20px;
}


/* 必須項目 */
.iqfm-req_color {
  color: #fff;
  display: block;
}
/*メール送信後メッセージボックスのボーダー（デフォルト：グリーン）*/
div.wpcf7-mail-sent-ok {
  border-color: #dfb200 !important;
}

/* お問合せフォーム整形 */
table.iqfm-table th,
table.iqfm-table td {
  vertical-align: middle !important;
  white-space: normal !important;
}
table.iqfm-table td {
  min-width: 16em;
}
table.iqfm-table td span.wpcf7-list-item {
  display: block;
  margin: 0;
}
input[type="text"], input[type="email"], textarea {
  width: 95%;
}
table.iqfm-table td input[type="text"]:not([size]) { width: 96%; }
table.iqfm-table td input[type="text"][size="4"] { width: 4em; }


/* プライバシーポリシー整形 */
.privacy_block strong {
    font-size: 130%;
    line-height: 2;
}
.privacy_block ul li {
    line-height: 1.7;
    list-style: square outside none;
    margin: 0 0 0 20px;
    padding: 0;
}


.z_g1 .content_area { box-shadow: none; }

/* テーブルブロックのはみ出し禁止 */
.z_g1 .column1, .z_g1 .column2, .z_g1 .column3, .z_g1 .column4 {
  text-align:left;
  white-space: normal !important;
  word-break: break-all;
  vertical-align: top;
}

/* テーブルセルの最小幅設定 */
.menu_area td:before, .menu_td_text:before, td.td_name:before,
.z_g1 .column1:before, .z_g1 .column2:before, .z_g1 .column3:before, .z_g1 .column4:before {
    content: '';
    min-width: 4em;
    display: block;
}




#nav-below div a { background-size: cover !important; }

.category-blog .entry-content img:not([src*="wp-social-book"]) {
  max-width: 100%;
  width: auto !important;
  height: auto !important;
}


.entry-content img.alignnone,
.entry-content img.aligncenter,
.entry-content img.alignright,
.entry-content img.alignleft,
.entry-content .photo img {
  width: auto;
  max-width: 80%;
  min-width: 0;
}
.entry-content .alignleft { text-align: left; }
.entry-content .aligncenter { text-align: center; }
.entry-content .alignright { text-align: right; }


/*テーブル設定*/
.iqfm-table tr th {width: 25%;}
.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;}
.iqfm-table tr th, .iqfm-table tr td,
td.td_name, td.td_value,
td.coupon_meta_title, td.coupon_meta, td.coupon_data,
.no_01 table td, .z_g1 table td,
.custom-wpcf7c-confirmed td, input.wpcf7c-conf, textarea.wpcf7c-conf {
  background: none #87cc76 !important;
  color: #333 !important;
  border: none !important;
}
.company_area  table,
.no_01 table,
.z_g1 table,
.nh_01 .content_area table,
.nh_02 .content_area table,
.table_area table,
table.iqfm-table {border-collapse: separate; border-spacing : 0 8px;}


.z_m1 { margin: 0 10px 10px; }

#jquery_slider_sp { margin: 0; }




/*  メニューアイコン
---------------------------------------------------------------------------------------------------- */
/*ハンバーガーメニューアイコン*/
#float_header #btn_menu {
  width: 10.5%;
  height: auto;
  top: 20px;
  right: 20px;
}
/*アクセスマップボタン*/
#float_header #menu_access_btn {
  width: 10.5%;
  height: auto;
  top: 20px;
  right: calc(20px + 10.5%);/*12.5％=ハンバーガーメニューの横幅*/
}
/*メニュー左上のロゴの位置
  ※ハンバーガーメニューのtop指定と同じ値を入れる*/
#menu-sp_side {
  background-position: center 20px;
}



/*  scrollfooter（最下部固定 お問い合わせ･TELボタン）
     ※画像差し替えはFTPにてそれぞれ上書き
---------------------------------------------------------------------------------------------------- */
/*半分の時*/
body.has_scroll_footer {padding: 0 0 14vw;}

.scroll_footer ul {background: none transparent;}
.scroll_footer,
.scroll_footer ul {height: 14vw;}
.scroll_footer ul li {width: 50%; height: 14vw;}

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


/*  その他
---------------------------------------------------------------------------------------------------- */





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

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


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


/*  googleカレンダー
---------------------------------------------------------------------------------------------------- */
.z_h1 iframe[src^="https://calendar.google.com"] {
  height: 500px;
  display: block !important;
  width: 1000px !important;
  max-width: 100%;
  margin: 0 0 20px;
  border: none !important;
}

/*Contact Form 7 　バグ対応
---------------------------------------------------------------------------------------------------- */
input[type="tel"].wpcf7c-conf {
  min-width: 4em;
}


/*バグ修正　メニュー開くとページ最上部に戻る現象修正
---------------------------------------------------------------------------------------------------- */
.scroll-prevent {
  overflow: hidden !important;
  position: static !important;
}
#Side_wrap, #rSide_wrap, #Side {
  height: 100% !important;
}


/*  トップページ
---------------------------------------------------------------------------------------------------- */
/*SPセカンドメイン*/
#sx1vcyiy95xzd88rb5bb .content_area {margin: 0 0 1em;}



/*回転ギミック*/
#sx1vcyiy95xzd88rb5bb{
  position: relative;
}

#sx1vcyiy95xzd88rb5bb:before {
  content: '';
  display: block;
  width: 33%;
  height: 22%;
  background: url(/files/sp_secondmain_roll.png) no-repeat center top/100%;/*回転画像*/
  position: absolute;
  top: 75%;
  left: 2.5%;
  animation: circle 38s linear 0s infinite;
}

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


/* コピーライトに画像 */
#copy {
  background: url(/files/sp_footer_bg.png) no-repeat center bottom/100% !important;/*コピーライト画像*/
  width: 100%;
  height: 38vw !important;
}
#copyright {
  padding-top: 26vw;
  font-style: normal;
}


/*  バナー
---------------------------------------------------------------------------------------------------- */
#thirdly {
    margin: 0 0 1em;
    width: 100%;
}


.grecaptcha-badge { visibility: hidden; }
