/* デザイナー用stylesheet */
/*** 同じセクションが複数設置される場合はclassが変わりますのでコーダーにご相談ください！！ ***/

/* フッター背景と文字色（白文字）設定 */
/* フッター全体 */
#footer{
	background-color: var(--main_color);
	color: #fff;
}
/* Googleマップボタンボーダーと文字色とホバー */
.footer-company__map a{
	border: 1px solid rgb(255 255 255);
	color: #fff;
}
.footer-company__map a:hover{
	background-color: rgba(0, 0, 0, 0.15);
}*/
/* ??? */
/*.p-footer-bar--type2{
	background: var(--main_color);
}
.sns_button_list.color_type2 li.insta a:before{
	color: #ffffff;
}*/
/* プライバシーポリシーリンク文字色 */
.privacy_policy_pc a{
	color: #fff;
}
/* フッターナビ文字色 */
#footer .swiper li a{
	color: #fff;
}
/* フッターナビホバー */
@media screen and (min-width: 641px) {
	#footer_inner_right .swiper a:hover{
	        border-bottom: 1px solid #ffffff;
	}
}
/* フッター背景設定 */
/*#footer{
	background:url(画像のパス) no-repeat;
	background-size:cover;
	background-position:center center;
}*/

/* サービス一覧セクション背景設定 */
.cb_free_space.num4.cb_white_bg{
	background:url(http://enjoyworks-test2.site/wp-content/uploads/bg_service.png) no-repeat!important;
	background-size:cover;
	background-position:center center;
}

/* セールスコンテンツセクション背景設定 */
/*.cb_selling_point{
	background:url(画像のパス) no-repeat;
	background-size:cover;
	background-position:center center;
} */

/* 事例一覧セクション背景設定 */
#top-jisseki{
	background:url(http://enjoyworks-test2.site/wp-content/uploads/bg_case.png) no-repeat;
	background-size:cover;
	background-position:center center;
	background-attachment: fixed  !important;

}

/* 投稿一覧セクション背景設定 */
/*.cb_blog_list{
	background:url(画像のパス) no-repeat;
	background-size:cover;
	background-position:center center;
} */

/* 画像カルーセルセクション背景設定 */
.cb_design_carousel{
	background:url(http://enjoyworks-test2.site/wp-content/uploads/bg_carousel.png) no-repeat;
	background-size:cover;
	background-position:center center;
}

/* お知らせ一覧セクション背景設定 */
/*.cb_news_list{
	background:url(画像のパス) no-repeat;
	background-size:cover;
	background-position:center center;
}*/

/* フリースペースセクション背景設定 */
/*.cb_free_space{
	background:url(画像のパス) no-repeat;
	background-size:cover;
	background-position:center center;
}*/

/***** デザイナー調整ここから *****//***** デザイナー調整ここから *****//***** デザイナー調整ここから *****//***** デザイナー調整ここから *****//***** デザイナー調整ここから *****/

/*---------------------------------------------------------------------------------------------*/
/***** メイン画像 *****/

/* キャッチコピー原寸 */
#header_slider_content .catch-image img {
	max-width: 900px;
}

/* キャッチコピー左寄せ */
#header_slider_content .catch-image {
    text-align: left !important;
}

/* キャッチコピー */
@media (max-width: 1024px) {
    #header_slider_content .catch-image img {
        width: 100%;
        height: auto;
    }
}

  #header_slider_content {

	top: 78%;
    transform: translate(-50%, -100%);
  }

/* キャッチコピー・アニメーション */
/* 初期状態（必須） */
#header_slider_wrap .catch-image {
  opacity: 0;
  transform: translateX(-40px);
}

/* Swiper初期化後に発火 */
#header_slider_wrap.start_slide .catch-image {
  animation: catchSlideIn 1s ease-out forwards;
  animation-delay: 0.8s; /* 時間差 */
}

@keyframes catchSlideIn {
  to {
    opacity: 1;
    transform: translateX(0);
  }
}

/* スマホ時キャッチコピー配置調整 */
@media screen and (max-width: 767px) {
  #header_slider_content {
    padding: 0;
    width: 100%;
	top: 80%;
    transform: translate(-50%, -100%);
  }
}

/* ヘッダー調整 */

#header_message {
background-color: #fff !important;}

.typea_head_box {
	background-color:#fff !important;
}

/* =========================
   ヘッダー全体（カード化）
========================= */
@media screen and (min-width: 1201px){.typea_head_box {
  margin: 0 10px;          /* ← 画面左右の余白 */
  border-radius: 15px;     /* ← 角丸 */
  overflow: hidden;        /* ← 角丸を効かせる必須 */
  border: none;
	}}

/* =========================
   ロゴエリア
========================= */
@media screen and (min-width: 1201px){#header_logo a {
  border-radius: 12px;
  border: none;
	}}

/* =========================
   電話・メールアイコン
========================= */
@media screen and (min-width: 1201px){.head_icon_box a {
  border-radius: 999px;    /* アイコンは丸が一番安定 */
  border: none;
	}}

/* =========================
   スマホナビ（各メニュー）
========================= */
@media screen and (min-width: 1201px){#global_menu ul.menu li a {
  border-radius: 0px;
  border: none;
  box-shadow: none;
	}}

/* hover / current でも線を出さない */
@media screen and (min-width: 1201px){#global_menu ul.menu li a:hover,
#global_menu ul.menu li.current-menu-item a {
  border: none;
	}}

@media screen and (min-width: 1201px) {
    .header-typea #header_message {
         border-top: 0; 
         border-left: 0; 
    }
}

@media screen and (min-width: 1201px) {
    .header-typea #global_menu > ul > li {
        border-right: 0;
    }
}

@media screen and (min-width: 1201px) {
    .head-tel-btn, .head-mail-btn {
        border-radius: 50px;
    }
}

@media screen and (min-width: 1201px) {
    .header-typea #header_message {
        border-radius: 50px;
    }
}

@media screen and (min-width: 1201px) {
    .header-typea #global_menu > ul {
        border-right: 0;
    }
}

@media screen and (min-width: 1201px){.typea_head_box {
	margin-bottom: 20px !important;
	}}

@media screen and (min-width: 1201px){.head_logo_box {
    margin-right: 20px !important;
	}}

/* シャドウ */
.header-typea #global_menu > ul { box-shadow: 0 6px 20px rgba(0, 0, 0, 0.15); }


@media (max-width: 767px) {
    #header_slider_content .catch-image {
        padding: 0px;
    }
}

/*---------------------------------------------------------------------------------------------*/
/***** セクション全体 *****/
/* サブメニュー背景色 */
#global_menu ul ul a {
    background: #f6f6f6;
}

#global_menu > ul ul > li:first-of-type > a:after {
    border-color: transparent transparent #f6f6f6 transparent;
}

/* タイトル下余白 */
.design_header .catch {
    padding-bottom: 30px;
	color: #00787c;
}

/* ボタン背景・白 */
.design_button {
	background-color: #fff;
}

    #mobile_menu li li a {
        background: #888888;
    }


/*---------------------------------------------------------------------------------------------*/
/***** セクション1 *****/

/* 背景画像 */
.cb_free_space{
	background:url(http://enjoyworks-test2.site/wp-content/uploads/bg_sec1.png) no-repeat !important;
	background-size:cover !important;
	background-position:center center;
	background-attachment: fixed !important;
}

/* タブレット以下時テキスト左寄せ */
/* タブレット以下時ポイント図形の余白調整 */
@media screen and (max-width: 1200px){
.sp_content.layout_type1 .main_content .catch, .sp_content.layout_type1 .main_content .desc {
    text-align: left;
}

.sp_content.layout_type1 .main_content .desc {
    text-align: left;
	}
.sp_content.layout_type1.position_type3 .main_content .point {
    margin: 0 20px 0 auto;
}
	
	
}

/* 2カラム */
.grid-section {
  display: grid;
  grid-template-columns: repeat(2, 1fr); /* 横2列 */
  gap: 20px; /* ブロック間の余白 */
  max-width: 1200px;
  margin: 0 auto;
  padding: 20px 20px;
}

.grid-item {
  background: rgba(255, 255, 255, 1); 
  border-radius: 0px;
  padding: 0 0 2.5rem;
  text-align: center;
  box-shadow: 0 8px 20px rgba(0, 0, 0, 0.1);
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}

/* .grid-item:hover {
  transform: translateY(-5px); 
  box-shadow: 0 12px 28px rgba(0, 0, 0, 0.15);
} */

.grid-item img {
  width: 100%;
  height: auto;
  border-radius: 0px;
  margin-bottom: 15px;
}

.grid-item h3 {
  font-weight: 700;
  letter-spacing: 0.05em;
  margin-bottom: 10px;
  color: #111;
	font-size: 170%;
	margin: 0.5em 0 0.6em;
	padding: 0 1.5rem;
}

.grid-item p {
  font-family: var(--tcd-font-type1);
  font-weight: 500;
  color: #111;
  line-height: 1.6;
	padding: 0 1.5rem;
	text-align: left;
	    font-size: 105%;
}

/* レスポンシブ対応 */
@media (max-width: 767px) {
  .grid-section {
    grid-template-columns: 1fr; /* スマホは縦1列 */
	gap: 40px; /* ブロック間の余白 */
  }
}

.grid-section .grid-item img + p:empty {
  display: none;
}

/* 余白 */
.home #content_builder section {
  padding-top: 150px !important;
}

.home #content_builder section.grid-section {
  padding-top: 100px !important;
}

@media screen and (max-width: 800px) {
    .home #content_builder > section, .home #content_builder > .custom-cat-posts {
        padding-top: 100px !important;
        padding-bottom: 80px !important;
    }
}

.grid-item h3 {
    padding: 0;
    text-align: center;
 }

.grid-item {
    padding: 2.0rem;
    text-align: left;
    line-height: 2.4;
}

.post_content *:last-child {
    margin-bottom: 1rem;
}

/* PCのみ3カラム */
@media screen and (min-width: 1024px) {
  .grid-section {
    grid-template-columns: repeat(3, 1fr);
  }
}

.post_content h3 {
	line-height: 1.3;}

/* =========================
   カード：画像だけ外枠ピッタリ
   テキストは内側余白あり
   ========================= */

/* カード全体 */
.grid-item {
  padding: 0;                /* ← まず全部リセット */
  background: #fff;
  box-shadow: 0 8px 20px rgba(0,0,0,.1);
}

/* 画像：外枠にピッタリ */
.grid-item img {
  display: block;            /* ← 余白事故防止 */
  width: 100%;
  margin: 0;
  border-radius: 0;
}

/* テキストエリア（h3 + p 共通） */
.grid-item h3,
.grid-item p {
  padding-left: 1.5rem;
  padding-right: 1.5rem;
}

/* タイトルだけ上余白 */
.grid-item h3 {
  margin: 1.2rem 0 0.6rem;
  text-align: center;
  color: #00787c;
}

/* 本文 */
.grid-item p {
  margin: 0 0 1.5rem;
  line-height: 1.8;
}

/* カードを縦レイアウトにする */
.grid-item {
  display: flex;
  flex-direction: column;
  height: 100%;
}

/* 本文を下に押して高さを揃える */
.grid-item p {
  margin-top: auto;
}

/* h3の高さを揃えて中央寄せ */
.grid-item h3 {
  min-height: 4.8em;          /* 2〜3行分の高さを確保 */
  display: flex;
  align-items: center;        /* 縦中央 */
  justify-content: center;    /* 横中央 */
  text-align: center;
}

/* 本文の開始位置を揃える */
.grid-item p {
  margin-top: 0;
}

/* カード全体を角丸に */
.grid-item {
  border-radius: 16px; /* 好みで 8〜24px */
  overflow: hidden;    /* 中の画像も角丸にする */
}

/*---------------------------------------------------------------------------------------------*/
/***** セクション2 *****/

.home #content_builder .cb_selling_point {
    padding-top: 100px !important;
    background-color: #00787c;
}

#content_builder .design_header {
    margin: -10px auto 0px !important;
}

#cb_content_2_list_1 .sp_content_inner {
    padding-top: 20px !important;
}

/* タイトル部分の文字色 */
#cb_content_2 .design_header .catch {
	color: #fff; }

#cb_content_2 .design_header .desc p {
color: #fff;
}

.cb_image_slider .title span {
    font-size: 20px;
    font-weight: 900;
	}

/* pointの装飾 */
.sp_content .main_content .point {
    font-weight: 900;
    background: #ffffff;
	color: #00787c;}

/*---------------------------------------------------------------------------------------------*/
/***** セクション3 *****/

/* タイトル下余白 */
#cb_content_3 .design_header  {
	padding-bottom: 50px;
}
#cb_content_3 .design_header .catch {
	color: #fff; }

/* 画像に枠線 */
.cb_image_slider .image {
	border: 5px solid #fff; }

/* 奇数のみ文字色白 */
.cb_image_slider .item:nth-of-type(even) .title span {
  color: #fff;
	font-weight: 700;
}

.cb_image_slider .item:nth-of-type(odd) .title span {
	color: #00787c;
	font-weight: 700;
}

/*---------------------------------------------------------------------------------------------*/
/***** セクション4 *****/

.home #content_builder section#cb_content_4 {
  padding-top: 50px !important;
}

#cb_content_4 .design_header .desc p {
    padding-bottom: 10px;
}

.post_content a:hover{
    color: #fff;
}

.post_content a {
    color: var(--main_color);
}

/*---------------------------------------------------------------------------------------------*/
/***** セクション5 *****/

#cb_content_5 .design_header .desc p {
    margin-bottom: 50px;
}

/*---------------------------------------------------------------------------------------------*/
/***** ブログセクション *****/
@media screen and (min-width: 1200px){
	body.home .blog_list {
  width: 100%;
  max-width: calc(1030px + 1px);
  margin: 0 auto;
	}}

/*---------------------------------------------------------------------------------------------*/
/***** フッター *****/

#footer {
    border-top: 0px;
}

a[href="/privacypolicy"] {
  color: #fff;
}
a[href="/privacypolicy"]:hover {
  color: #333;
}

#footer_catch p {
    color: #fff;
}

/*---------------------------------------------------------------------------------------------*/
/***** 下層・行間調整 *****/
.contena-title {
    line-height: 2.0;
}

.contena-text {
    line-height: 2.5;
}

.contena-title.img-type.text-left {
    line-height: 2.5;
}

.design_button {
    margin-bottom: 50px;
}

@media screen and (max-width: 999px) {
    .faq-bottom-cta__buttons .design_button {
        margin-bottom: 50px !important;
    }
}

.work-tbl th, .work-tbl td {
    line-height: 2.0;
}

.listcont {
    line-height: 5;
}

#page_contents .acont .qatxt {
        line-height: 2.5;
    }


/* 下層・水回りリフォームの表の背景色 */
.t-syoucase {
    background: #ffffff !important;
}

.work-tbl td {
	border: 1px solid #cccccc;
    background: #f6f6f6;
}

.listcont {
	background: #f6f6f6;}


/***** デザイナー調整ここまで *****//***** デザイナー調整ここまで *****//***** デザイナー調整ここまで *****//***** デザイナー調整ここまで *****//***** デザイナー調整ここまで *****/
/* サービスセクション */
.cb_free_space.num4.cb_white_bg .cb_service_list.cb_white_bg.num4{
	padding-bottom:0px!important;
}
.cb_free_space.num4.cb_white_bg .cb_service_list.cb_white_bg.num4 li::marker{
	content: ""!important;
}