@charset "utf-8";

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

@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP&display=swap');

/* ===================================================================================================================
   ■共有
------------------------------------------------------------------------------------------------------------------- */
/* リンク */
a:link, a:visited, a:hover, a:active{
  text-decoration: underline;
}
body{
  font-family: 'Noto Sans JP', sans-serif;
  font-weight: 300;
}

/* ロゴの上下余白調整 */
#h1_teaser_image {
  margin: 0;
}

/*fixする場合
#h1_teaser_image {
  position: fixed;
  top: 0;
  z-index: 1000;
}
#main {
    margin-top: calc(20px + 12.5%)（ハンバーガーメニューの高さ）;
    overflow: hidden;
}
*/

/* TOP ロゴ非表示 */
#page-6 #h1_teaser_image {
  background-image: none !important;
  height: 0px !important;
}

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

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


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

/* ブログ下部 ブログメニュー部分　文字色変更 */
#primary ul.xoxo li ul li a {
  color: #2f353a !important;/*h3と同じリンク色か全体のリンクカラー*/
}
/* ブログ下部 ブログメニュー部分　下線色変更 */
#Side .xoxo li .menu-item a,
#primary ul.xoxo li ul li {
  border-color: #2f353a !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%; }

#Side_wrap {
    background: url("https://www.yoshida1004.com/60018276/wp-content/uploads/2022/09/sp_hbm_body_bg.png") no-repeat scroll 0 0 /cover !important;
}
/* ===================================================================================================================
   ■見出し
------------------------------------------------------------------------------------------------------------------- */
/*中ページ ページタイトル*/
#naka_page_title {
    margin: 0 0 1em;
}
#naka_page_title h1 {
    background: #eae5e1;
    color: #2f353a;
    padding: 9vw 5% 9vw;
    font-size: 150%;
    text-align: center;
}
h1,h2,h3,h4,h5,.widget-title2,.entry_title{
  font-weight: 300;
}



* .headline_title {
    background-position: center bottom -5vw !important;
    font-size: 150%;
    padding: 0vw 0 5vw;
}
* .entry_title {
  font-size: 140%;
}
* .widget-title, * .widget-title2, .top-back.unity_title {
  font-size: 140%;
}
* .sub_post_title {
  font-size: 130%;
}
* .inline_title,
* small a ,.permalink_in a{
    text-align: center;
    border: none transparent;
    box-shadow: 0px 2vw 0px 0px rgba(99,118,137,1);
    -webkit-box-shadow: 0px 2vw 0px 0px rgb(99 118 137);
    -moz-box-shadow: 0px 2vw 0px 0px rgba(99,118,137,1);
    font-size: 120%;
    border-radius: 2vw;
}



/* ===================================================================================================================
   ■ブロック
------------------------------------------------------------------------------------------------------------------- */
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: #0c386f !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: #e39c2d;
  display: block;
}
/*メール送信後メッセージボックスのボーダー（デフォルト：グリーン）*/
div.wpcf7-mail-sent-ok {
  border-color: #775c43 !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; }


/*テーブル設定*/
table:not(#wp-calendar) th { width: 25% !important;}
table:not(#wp-calendar) tr > * {
  box-sizing: border-box !important;
  background: none transparent !important;
  border-right: none !important;
  border-left: none !important;
  border-bottom: 1px solid #c3b9b0;
}
table:not(#wp-calendar) tr:first-child > * {
  border-top: 1px solid #c3b9b0;
}

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

#jquery_slider_sp { margin: 0; }

#jquery_slider_sp .viewer {/*スライダーを重ね順下にする*/
    position: relative;
    z-index: -1;
}

.viewer_1000::after {
  content: "";
  position: absolute;
  z-index: 580;
}

.viewer_1000::after {
    top: 116vw;
    left: 0;
    right: 0;
    margin: 0 auto;
    width: 1px;
    height: 40vw;
    background: #f1f1ef;
    animation: sdl_t 1.9s linear infinite;
}

@keyframes sdl_t {
  0% {
    transform: scale(1, 0);
    transform-origin: 0 0;
    opacity: 0;
  }
  50% {
    transform: scale(1, 1);
    transform-origin: 0 0;
    opacity: 1;
  }
  50.1% {
    transform: scale(1, 1);
    transform-origin: 0 100%;
    opacity: 1;
  }
  100% {
    transform: scale(1, 0);
    transform-origin: 0 100%;
    opacity: 0;
  }
}


/*  メニューアイコン
---------------------------------------------------------------------------------------------------- */
/*ハンバーガーメニューアイコン*/
#float_header #btn_menu {
  width: 17vw;
  height: auto;
  top: 0vw;
  right: 0vw;
}

@media screen and (min-width: 640px) {
#float_header #btn_menu {
  width: 13.5vw;
}
}


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



/*  scrollfooter（最下部固定 お問い合わせ･TELボタン）
     ※画像差し替えはFTPにてそれぞれ上書き
---------------------------------------------------------------------------------------------------- */

/*半分の時*/

body.has_scroll_footer {padding: 0 0 17.5vw;}

.scroll_footer ul {background: none transparent;}
/*.scroll_footer ul {background: url(/files/sp_footerfix_contact_bg.png) no-repeat center top/100%;}*/

.scroll_footer,
.scroll_footer ul {height: 17.5vw;}
.scroll_footer ul li {width: 50%; height: 17.5vw;}

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



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

/*コンタクトフォームスパム*/
.grecaptcha-badge { visibility: hidden; }



/*  ローディング画面
---------------------------------------------------------------------------------------------------- */
.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;
}

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

#lxacxb8jo3jjgy855ewc .eyecatch img {width: 100% !important;}


/*  バナー
---------------------------------------------------------------------------------------------------- */

/* 一列・二列 */
#ymm7wcendpe4zgvuzacf .content_area,
#j554gvg9ojy16w138sp7 .content_area
{margin:0 !important; }

#ymm7wcendpe4zgvuzacf .eyecatch img,
#j554gvg9ojy16w138sp7 .eyecatch img
{width: 100% !important;}

#ymm7wcendpe4zgvuzacf .margin-bottom_10,
#j554gvg9ojy16w138sp7 .margin-bottom_10
 {margin:0 !important; }

#jwgv8qiks7jz2z0jze9l, 
#kr47ondjmse1lcytwoe3 {
    background: url(/files/recruit_bnr_bg.png) no-repeat center top/100%,#ececec;
    padding: 181vw 0 9vw;
    margin-bottom: 5vw;
}

#jwgv8qiks7jz2z0jze9l .eyecatch,
#kr47ondjmse1lcytwoe3 .eyecatch
 {
    width: 64vw;
    margin: 0 auto 0 5vw;
}

/*Gtn*/ 
#thirdly {
 margin: 0 0 10px;
 width: 100%;
    }

/*スライドショー下*/

#gco5b9202eorkwu3n5zz.np_04 {
    margin-bottom: 0em;
}