@charset "utf-8";

/*
 * スマホ用スタイルCSS
 */



/* ===================================================================================================================
   ■共有
------------------------------------------------------------------------------------------------------------------- */
html {
  scroll-behavior: smooth;
}
/* リンク */
a:link,
a:visited,
a:hover,
a:active {
  text-decoration: underline;
}


/* ロゴの上下余白調整 */
#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 {
  height: 0 !important;
  background-image: none !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: #333333 !important;
}

/* ブログ下部 ブログメニュー部分　文字色変更 */
#primary ul.xoxo li ul li a {
  color: #ffaa00 !important;/* 全体のリンクカラー */
}
/* ブログ下部 ブログメニュー部分　下線色変更 */
#Side .xoxo li .menu-item a,
#primary ul.xoxo li ul li {
  border-color: #666666 !important;/* 全体のボーダーカラー */
}
#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: #ffffff;
}/* fffか333かサイト背景色 */

#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: #59b300;
  color: #ffffff;
  text-align: center;
}

* .headline_title {
  background-position: center bottom !important;
}
* .entry_title,
* .widget-title,
* .widget-title2,
.top-back.unity_title {
  background-position: center bottom !important;
}
* .sub_post_title {
  border-right: none !important;
  border-left: none !important;
  background-position: center bottom !important;
}
* .inline_title,
* small a {
  background-position: center bottom !important;
  text-align: center;
}



/* ===================================================================================================================
   ■ブロック
------------------------------------------------------------------------------------------------------------------- */
th,
td {
  vertical-align: top;
  white-space: initial !important;
}

.mobile_e1 .icon_list_block {
  box-sizing: border-box;
  width: 100%;
}
.mobile_e1 .entry_post:not(:last-of-type) .icon_list_block {
  padding-bottom: 0 !important;
}

.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: #666666 !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;
  margin-bottom: 20px;
  max-height: 75vh;
}

/* 必須項目 */
.iqfm-req_color {
  display: block;
  color: #ff0000;
}
/* メール送信後メッセージボックスのボーダー（デフォルト：グリーン） */
div.wpcf7-mail-sent-ok {
  border-color: #666666 !important;
}

/* お問合せフォーム整形 */
table.iqfm-table {
  margin: 0 auto 1em;
}
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 {
  margin: 0 0 0 20px;
  padding: 0;
  list-style: square outside none;
  line-height: 1.7;
}

.z_g1 .content_area {
  box-shadow: none;
}

/* テーブルブロックのはみ出し禁止 */
.z_g1 .column1,
.z_g1 .column2,
.z_g1 .column3,
.z_g1 .column4 {
  vertical-align: top;
  text-align: left;
  white-space: normal !important;
  word-break: break-all;
}

/* テーブルセルの最小幅設定 */
.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 {
  display: block;
  min-width: 4em;
  content: "";
}

#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 {
  min-width: 0;
  max-width: 80%;
  width: auto;
}
.entry-content .alignleft {
  text-align: left;
}
.entry-content .aligncenter {
  text-align: center;
}
.entry-content .alignright {
  text-align: right;
}
/*テーブル設定*/
.easys_content:not(.ne_01) table:not(#wp-calendar) th {
  width: 25% !important;
}
.easys_content:not(.ne_01) table:not(#wp-calendar) tr > * {
  box-sizing: border-box !important;
  border-right: none !important;
  border-bottom: 1px solid #bbbbbb;
  border-left: none !important;
  background: none transparent !important;
}
.easys_content:not(.ne_01) table:not(#wp-calendar) tr:first-child > * {
  border-top: 1px solid #bbbbbb;
}
.easys_content:not(.ne_01) table:not(#wp-calendar) tr td:first-child {
  font-weight: bold;
}

.z_m1 {
  margin: 0 10px 10px;
}

#jquery_slider_sp {
  margin: 0;
  font-size: 0;
}

/*  メニューアイコン
---------------------------------------------------------------------------------------------------- */
/* ハンバーガーメニューアイコン */
#float_header #btn_menu {
  top: 0;
  right: 0;
  width: 12.5%;
  height: auto;
}
/* アクセスマップボタン */
#float_header #menu_access_btn {
  top: 20px;
  right: calc(20px + 12.5%);/* 12.5％=ハンバーガーメニューの横幅 */
  width: 12.5%;
  height: auto;
}
/* メニュー左上のロゴの位置
  ※ハンバーガーメニューのtop指定と同じ値を入れる */
#menu-sp_side {
  background-position: center 20px;
}



/*  scrollfooter（最下部固定 お問い合わせ･TELボタン）
     ※画像差し替えはFTPにてそれぞれ上書き
---------------------------------------------------------------------------------------------------- */
/* 最下部までスクロールした時用の余白 =.scroll_footerの高さと同じ値にする */
body.has_scroll_footer {
  padding: 0 0 17.5vw;
}
.scroll_footer ul {
  background: none transparent;
}
.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;
}


/*  その他
---------------------------------------------------------------------------------------------------- */
#foot #copy {
  background: none;
}

/*  ローディング画面
---------------------------------------------------------------------------------------------------- */
.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"] {
  display: block !important;
  margin: 0 0 20px;
  max-width: 100%;
  width: 1000px !important;
  height: 500px;
  border: none !important;
}

/* Contact Form 7 　バグ対応
---------------------------------------------------------------------------------------------------- */
input[type="tel"].wpcf7c-conf {
  min-width: 4em;
}


/* ============================== ↓↓各ブロックの個別CSSはこちらに記述↓↓ ============================== */
/* 共通
  ---------------------------------------------------------------------------------------------------- */
/*  */


/*  バナー
  ---------------------------------------------------------------------------------------------------- */
/* バナー＞会社概要 (※top) */
/* バナー＞お問い合わせ (※business) */
#t5hmwnrrxlnk1lociusw .content_area,
#imvlsvfz601r8e6e9cq8 .content_area {
  margin-right: 0;
  margin-left: 0;
}

/* バナー＞LINE／インスタ (※top) */
/* バナー＞LINE／インスタ (company) */
/* バナー＞LINE／インスタ (business) */
/* バナー＞LINE／インスタ (works) */
/* バナー＞LINE／インスタ (flow) */
/* バナー＞LINE／インスタ (contact) */
.target_block01 .content_area {
  margin-right: 0;
  margin-left: 0;
}

.target_block01 .content_area .img_display {
  display: flex;
  flex-wrap: nowrap;
  font-size: 0 !important;
}
.target_block01 .content_area .img_display .column_2 {
  flex-grow: 1;
  margin: 0;
  width: auto;
}
.target_block01 .content_area .img_display .column_2 .eyecatch a {
  display: inline-block;
  width: 100%;
}


/*  デザインブロック
    ---------------------------------------------------------------------------------------------------- */
/* 共通 */
/*デザインブロック 記事タイトル 非表示*/
#cenv3hrh5baa8506x0ip [class*="title"],
#lc5b3lau2rpzw4ag6aal [class*="title"] {
  display: none;
}
/*デザインブロック 記事画像 非表示*/
#cenv3hrh5baa8506x0ip .sp_gallery,
#lc5b3lau2rpzw4ag6aal .sp_gallery {
  display: none;
}
/* デザインブロック背景とテキストのマージン */
#cenv3hrh5baa8506x0ip .entry_post,
#lc5b3lau2rpzw4ag6aal .entry_post {
  margin: 0;
}


/* トップページ
---------------------------------------------------------------------------------------------------- */
/* セカンドメイン */
#s0tnr5fosun2hrn09bye {
  padding: calc((900vw/640)*100) 0 0 0;
  background: url(/files/spsecondmain_img01.png) no-repeat center top / 100% auto;
}
#s0tnr5fosun2hrn09bye * {
  margin: 0;
  padding: 0;
}

/* デザインブロック＞こんなお困りごとはありませんか？ (※top) */
#cenv3hrh5baa8506x0ip {
  margin: 0 0 calc((50vw/640)*100) 0;
  padding: calc((570vw/640)*100) 0 0 0;
  background: #f7f7f7 url(/files/designblock01_ttl.png) no-repeat center top / 100% auto;
}
#cenv3hrh5baa8506x0ip .entry_post .content_area {
  margin: 0;
  padding: calc((50vw/640)*100) 0;
}
#cenv3hrh5baa8506x0ip .entry_post .content_area .post_data {
  box-sizing: border-box;
  margin: 0 0 calc((50vw/640)*100) 0;
  padding: 0 6%;
}
#cenv3hrh5baa8506x0ip .entry_post .content_area .post_data p {
  margin: 0;
}
#cenv3hrh5baa8506x0ip .entry_post .content_area small a {
  overflow: hidden;
  margin: 0;
  padding: calc((80vw/640)*100) 0 0 0;
  height: 0;
  border: none;
  border-radius: 0;
  background: transparent url(/files/designblock01_btn.png) no-repeat center top / 100% auto;
}


/* お仕事のご依頼について
---------------------------------------------------------------------------------------------------- */
/* デザインブロック＞ご依頼の流れ (※flow) */
#lc5b3lau2rpzw4ag6aal {
  margin: 0 0 calc((50vw/640)*100) 0;
  padding: calc((415vw/640)*100) 0 calc((672vw/640)*100) 0;
  background: url(/files/designblock02_img01.png) center top,
  url(/files/designblock02_img05.png) center bottom;
  background-color: #f7f7f7;
  background-size: 100% auto;
  background-repeat: no-repeat;
}
#lc5b3lau2rpzw4ag6aal .entry_post {
  margin: 0;
}
#lc5b3lau2rpzw4ag6aal .entry_post .content_area {
  margin: 0;
}
#lc5b3lau2rpzw4ag6aal .entry_post .content_area:first-of-type {
  display: none;
}
#lc5b3lau2rpzw4ag6aal .entry_post .content_area.sub_post .post-data {
  margin: calc((30vw/640)*100) calc((40vw/640)*100);
}
#lc5b3lau2rpzw4ag6aal .entry_post .content_area.sub_post .flow_arr {
  margin: 0;
  padding: calc((167vw/640)*100) 0 0 0;
  height: 0;
  background-position: center top;
  background-size: 100% auto !important;
  background-repeat: no-repeat;
}
#lc5b3lau2rpzw4ag6aal .entry_post .content_area.sub_post:nth-of-type(2) .flow_arr {
  background-image: url(/files/designblock02_img02.png);
}
#lc5b3lau2rpzw4ag6aal .entry_post .content_area.sub_post:nth-of-type(3) .flow_arr {
  background-image: url(/files/designblock02_img03.png);
}
#lc5b3lau2rpzw4ag6aal .entry_post .content_area.sub_post:nth-of-type(4) .flow_arr {
  background-image: url(/files/designblock02_img04.png);
}
