@charset "utf-8";


/* ----------------------------------------------------------------------
 基本設定
---------------------------------------------------------------------- */
/* レイアウト */
body { padding-top:60px; touch-action:manipulation; }
#main_contents { width:auto !important; margin:0 100px; padding-bottom:70px; padding-left:0 !important; padding-right:0 !important; }
#main_col { width:calc(100% - 330px); }
#main_contents:before { left:calc(100% - 280px); }
@media screen and (max-width:1050px) {
  #main_contents { display:block; margin:0 60px; }
  #main_contents:before { display:none; }
  #main_col { width:auto; }
	#side_col {
		width:auto; margin-top:70px;
		display:-webkit-box; display:-webkit-flex; display:flex;
    -webkit-flex-wrap:wrap; flex-wrap:wrap;
  }
}
@media screen and (max-width:750px) {
  #main_contents { margin:0 20px; padding:0 0 40px !important; }
  body.page #main_contents { padding-top:40px !important; }
	body.page-template-page-about #main_contents { padding-top:0 !important; }
	#side_col { display:block; margin-top:40px; }
}


/* admin bar利用時 */
@media screen and (max-width:782px) {
  body.admin-bar { padding-top:106px; }
  body.home.admin-bar, body.page-template-page-lp.admin-bar, body.hide_page_header_bar.admin-bar { padding-top:46px; }
  body.admin-bar #header { top:46px; }
  body.admin-bar #drawer_menu { padding-top:46px;}
}


/* デザインボタン */
@media (max-width: 1200px) {
  .design_button { max-height:60px; min-width:inherit !important; width:260px !important; }
}
@media (max-width: 750px) {
  .design_button { max-height:50px; font-size:14px; min-width:inherit !important; width:240px !important; }
}


/* デザイン見出し */
@media only screen and (max-width: 750px) {
	.design_headline { font-size:20px !important; padding:0 0 0 40px !important; margin:30px 0 15px 0 !important; }
  .design_headline:before { width:25px; top:13px;}
  .post_content .design_headline:first-child { margin-top:10px !important; }
  body.single-case .design_headline { margin:30px 0 15px 0 !important; }
	body.page-template-page-about .design_headline { margin-top:27px !important; }
}


/* グレー背景のリスト */
@media only screen and (max-width: 750px) {
	.gray_list { line-height:2; font-size:14px; margin:35px 0 35px !important; padding:30px 30px; }
  .gray_list dt { width:100px; }
  .gray_list dd { width:calc(100% - 100px); }
	body.single-case .gray_list { margin:35px 0 35px !important; font-size:14px; }
	body.single-case .gray_list + .design_headline { margin-top:30px !important; }
}




/* ----------------------------------------------------------------------
 トップページ ヘッダースライダー
---------------------------------------------------------------------- */
#index_header_content { width:100%; }
#index_header_content .catch { padding:0 100px; }
@media only screen and (max-width: 950px) {
  #index_header_content .catch { padding:0 60px; }
}
@media only screen and (max-width: 750px) {
  #header_slider_wrap { height:655px; }
  #header_slider { height:655px; }
  #header_slider .item { height:655px; }
  #index_header_content .content_item_list { margin-top:25px; }
  #index_header_content .catch { padding:0 20px; }
  #index_header_content .catch.pc { display:none; }
  #index_header_content .catch.mobile { display:block; font-weight:600; }
  #index_header_content .content_item { margin:0 10px 0 0; }
  #index_header_content .link_button { margin-top:30px; }
  #index_header_content .header_data_content.use_scroll { overflow:auto; margin-bottom:-20px;}
  #index_header_content .header_data_content.use_scroll .content_item_list { padding:0 0 20px 0; -webkit-justify-content:flex-start; justify-content:flex-start; -webkit-flex-wrap:nowrap; flex-wrap:nowrap; padding:0 20px 20px; position:relative; }
  #index_header_content .header_data_content.use_scroll .content_item { -webkit-flex: 0 0 auto; flex: 0 0 auto; position:relative; }
  #index_header_content .header_data_content.use_scroll .content_item:last-of-type:after { content:''; display:block; width:20px; height:1px; position:absolute; left:100%; top:0; }
  #index_header_content .simplebar-scrollbar:before { background:#fff !important; }
  #header_slider .bg_image.pc { display:none; }
  #header_slider .bg_image.mobile { display:block; }
  #header_slider_wrap .svg_wrap { display:none; }
	#header_scroll_button { display:block; }
}




/* ----------------------------------------------------------------------
 コンテンツビルダー
---------------------------------------------------------------------- */

/* 共通パーツ */
@media only screen and (max-width: 950px) {
  .cb_header { width:auto; margin:-10px 60px 60px; }
  .cb_content:last-of-type { padding-bottom:70px; }
}
@media only screen and (max-width: 750px) {
  .cb_header { width:auto; margin:0 20px 35px; }
  .cb_content:last-of-type { padding-bottom:40px; }
  .cb_header .desc { margin:15px 0 -10px; line-height:2; }
  .cb_header .catch.mobile { display:block; }
  .cb_header .desc.mobile { display:block; }
  .cb_header .catch.pc { display:none; }
  .cb_header .desc.pc { display:none; }
}


/* 数値データ */
@media only screen and (max-width: 1200px) {
  .cb_data_content { min-width:160px; height:160px; }
  .cb_data_content .headline { font-size:14px !important; }
  .cb_data_content .num { font-size:54px; }
  .cb_data_content .unit { font-size:20px; }
  .cb_data_content .desc { font-size:13px; }
}
@media only screen and (max-width: 750px) {
  .cb_data_content { min-width:140px; height:140px; }
  .cb_data_content .headline { font-size:12px !important; margin:0 0 8px 0 !important; }
  .cb_data_content .num_area { margin:0 !important; line-height:1 !important;}
  .cb_data_content .num { font-size:43px; }
  .cb_data_content .unit { font-size:16px; }
  .cb_data_content .desc { font-size:12px; margin:10px 0 0 0 !important; }
  .cb_data_content.sc_data_content { margin:30px 0 28px; }
}


/* サービス */
@media only screen and (max-width: 1200px) {
	.cb_service_list .owl-nav { display:none; }
  .cb_service_list .service_carousel { width:auto; margin:-5px 0 0; }
	.cb_service_list .service_carousel .owl-stage { padding:0; }
  .cb_service_list .service_carousel .owl-item.active.center { transform:scale(1); box-shadow:none; }
  .cb_service_list .service_carousel .owl-item.active.center .title_area { border-left:none; }
  .cb_service_list .service_carousel .owl-item.active.center .desc { border-left:none; }
	.cb_service_list .service_carousel .desc { background:none; height:135px; }
  .service_carousel .image_wrap { width:100%; left:0px; }
	.service_carousel:before { display:none; }
  .service_carousel:after { display:none; }
}
@media only screen and (max-width: 950px) {
  .cb_service_list { padding:70px 0 70px; }
  .cb_service_list .service_carousel .owl-item.active.center { transform:scale(1); box-shadow:none; }
  .cb_service_list .service_carousel .owl-item.active.center .title_area { border-left:none; }
  .cb_service_list .service_carousel .owl-item.active.center .desc { border-left:none; }
}
@media only screen and (max-width: 750px) {
  .cb_service_list { padding:40px 0 40px; }
  .cb_service_list .service_carousel .owl-item.active.center { transform:scale(1); box-shadow:none; }
  .cb_service_list .service_carousel .owl-item.active.center .title_area { border-left:none; }
  .cb_service_list .service_carousel .owl-item.active.center .desc { border-left:none; }
	.cb_service_list .service_carousel { margin-bottom:-40px; }
	.cb_service_list .service_carousel img { filter:blur(5px); -webkit-transition: filter 0.25s ease; transition: filter 0.25s ease; }
	.cb_service_list .service_carousel .center img { filter:blur(0px); }
	.cb_service_list .link_button { margin-top:40px; }
  .cb_service_list .link_button.no_sd { margin-top:80px; }
}


/* バナーコンテンツ */
@media only screen and (max-width: 750px) {
  .cb_banner_content { height:440px; }
  .cb_banner_content.one_item { height:220px; }
  .cb_banner_content .content { display:block; }
  .cb_banner_content .cb_data_content { width:100%; height:50%; color:#fff; }
  .cb_banner_content.one_item .cb_data_content { height:100%; }
	.cb_banner_content .bg_image { width:100%; height:50%; }
	.cb_banner_content.one_item .bg_image { height:100%; }
  .cb_banner_content .bg_image:nth-child(2) { left:auto; right:0; top:220px; z-index:2; transform: skewX(0deg); -webkit-transform-origin:0%; transform-origin:0%; }
  .cb_banner_content .bg_image:nth-child(2) img { transform: skewX(0deg); -webkit-transform-origin:0%; transform-origin:0%; }
	.cb_banner_content .bg_image.pc { display:none; }
  .cb_banner_content .bg_image.mobile { display:block; }
	#content_builder .cb_banner_content:first-child { margin-top:0px; }
}


/* お知らせ */
.cb_news_list .news_category_sort_button ol { width:auto; margin:0 100px 70px; }
.cb_news_list .news_list { width:auto; margin:0 100px; }
.cb_news_list .news_category_sort_button.use_scroll { overflow:auto; }
.cb_news_list .news_category_sort_button.use_scroll ol { -webkit-justify-content:flex-start; justify-content:flex-start; -webkit-flex-wrap:nowrap; flex-wrap:nowrap; padding:0 10px; position:relative; }
.cb_news_list .news_category_sort_button.use_scroll li { -webkit-flex: 0 0 auto; flex: 0 0 auto; position:relative; }
.cb_news_list .news_category_sort_button.use_scroll li:last-of-type:after { content:''; display:block; width:20px; height:1px; position:absolute; left:100%; top:0; }
@media only screen and (max-width: 950px) {
  .cb_news_list { padding:70px 0 70px; }
  .cb_news_list .news_category_sort_button ol { margin:0 0 70px; }
  .cb_news_list .news_list { width:auto; margin:0 60px; }
}
@media only screen and (max-width: 750px) {
  .cb_news_list { padding:40px 0 40px; }
  .cb_news_list .news_category_sort_button ol { margin:0 0 40px; }
	.cb_news_list .news_category_sort_button li { margin:0 10px; font-size:14px; }
  .cb_news_list .news_list { margin:0; }
	.cb_news_list .link_button { margin-top:40px; }
}


/* 事例 */
@media only screen and (max-width: 1200px) {
  .cb_case_list .owl-carousel .owl-nav { display:none; }
}
@media only screen and (max-width: 950px) {
  .cb_case_list { padding:70px 0; }
}
@media only screen and (max-width: 750px) {
  .cb_case_list { padding:40px 0; }
	.cb_case_list .case_list .item { width:290px; }
	.cb_case_list .case_list .title { font-size:16px; }
  .cb_case_list .link_button { margin-top:40px; }
}


/* デザインコンテンツ */
.cb_design_content .banner_content { width:auto; margin:0 100px; height:400px; }
@media only screen and (max-width: 950px) {
  .cb_design_content { padding:70px 0; }
  .cb_design_content .banner_content { margin:0; height:350px; }
}
@media only screen and (max-width: 750px) {
  .cb_design_content { padding:40px 0; }
  .cb_design_content .banner_content { height:300px; }
	.cb_design_content .data_content_top { margin-top:-35px; }
	.cb_design_content .link_button { margin-top:40px; }
}
@media only screen and (max-width: 550px) {
  .cb_design_content .banner_content { height:220px; }
}


/* フリースペース */
.cb_free_space .post_content { width:auto; margin:0 100px; }
.cb_free_space.width_type2 .post_content { margin:0; }
@media only screen and (max-width: 950px) {
  .cb_free_space .post_content { margin:0 60px; }
}
@media only screen and (max-width: 750px) {
  .cb_free_space { padding:40px 0; }
  .cb_free_space .post_content { margin:0 20px; }
}




/* ----------------------------------------------------------------------
 固定ページ
---------------------------------------------------------------------- */
#page_contents { width:auto !important; margin:0 100px; }
@media only screen and (max-width: 950px) {
  #page_contents { margin:0 60px; padding:70px 0; }
}
@media only screen and (max-width: 750px) {
  #page_contents { margin:0 20px; padding:40px 0; }
}


/* 事業内容 */
.business_content .image img { width:100%; }
@media only screen and (max-width: 1150px) {
	.business_content .content { display:block; padding:60px; }
	.business_content h3 { width:auto; margin:0 0 40px 0 !important; }
	.business_content p { width:auto; padding-right:0px; }
}
@media only screen and (max-width: 750px) {
	.business_content { margin:0 0 20px 0; }
  .business_content + .link_button { margin-top:40px; }
	.business_content .content { padding:25px 30px 23px; }
	.business_content .image { width:100%; height:130px; }
	.business_content .image img { width:100%; height:100%; object-fit:cover; }
	.business_content h3 { font-size:18px !important; width:auto; margin:0 0 18px 0 !important; }
}


/* アバウトページ */
body.page-template-page-about #side_col { top:60px; }
@media screen and (max-width:1050px) {
  body.page-template-page-about #side_col { display:none; }
	body.page-template-page-about #main_col { padding-top:0px; }
  body.page-template-page-about #main_contents { display:block; margin:0 100px; }
	body.page-template-page-about #main_contents { padding:0 0 70px; }
  body.page-template-page-about #main_contents:before { display:none; }
	body.page-template-page-about.header_fix #header { box-shadow:none; }
	body.mobile_about_page_menu_sticky #mobile_about_page_menu { border-bottom:none; border-top:1px solid #ddd; box-shadow:0 5px 20px 0 rgba(0,0,0,0.1); }
	#mobile_about_page_menu { display:block; border-bottom:1px solid #ddd; margin:0 -100px 35px; padding:0 100px; position:sticky; top:60px; background:#fff; z-index:10; }
	#mobile_about_page_menu .menu {
    display:-webkit-box; display:-webkit-flex; display:flex;
    -webkit-flex-wrap:wrap; flex-wrap:wrap;
	  -webkit-justify-content:center; justify-content:center;
  }
	#mobile_about_page_menu a { display:block; height:60px; line-height:60px; margin:0 10px; }
	#mobile_about_page_menu .menu_wrap.use_scroll { overflow:auto; }
  #mobile_about_page_menu .menu_wrap.use_scroll .menu { -webkit-justify-content:flex-start; justify-content:flex-start; -webkit-flex-wrap:nowrap; flex-wrap:nowrap; padding:0 10px; position:relative; }
  #mobile_about_page_menu .menu_wrap.use_scroll a { -webkit-flex: 0 0 auto; flex: 0 0 auto; position:relative; }
  #mobile_about_page_menu .menu_wrap.use_scroll a:last-of-type:after { content:''; display:block; width:20px; height:1px; position:absolute; left:100%; top:0; }
}
@media screen and (max-width:950px) {
  body.page-template-page-about #main_contents { margin:0 60px; }
	#mobile_about_page_menu { margin:0 -60px 35px; padding:0 60px; }
}
@media screen and (max-width:750px) {
  body.page-template-page-about #main_contents { margin:0 20px; }
	body.page-template-page-about #main_contents { padding:0 0 35px; }
	#mobile_about_page_menu { margin:0 -20px 35px; padding:0; }
	.page_content { padding-top:20px; }
	.about_table1 { margin-bottom:40px !important; font-size:14px; }
  .about_table1 th { width:100px !important; }
	.about_table2 { font-size:14px; }
	.about_table2 .year { width:80px !important; }
  .about_table2 th { width:50px !important; }
	#about_map_info { margin-top:40px; }
  #about_map_info .name { font-size:14px; }
  #about_map_info .address { font-size:14px; margin:0 0 5px 0; }
  #about_map_info .link { margin:0 0 10px 0; }
  #about_map_info .link a { color:#f3b80a; }
  #about_map_info .qt_google_map { margin-top:40px; }
}



/* ----------------------------------------------------------------------
 LPページ
---------------------------------------------------------------------- */
#lp_header .content { width:100%; }
#lp_header .catch { padding:0 100px; }
#lp_contents { width:auto !important; margin:0 auto; padding-left:100px; padding-right:100px; }
body.hide_page_header #lp_contents { margin-top:60px; }
@media only screen and (max-width: 950px) {
  #lp_header .catch { padding:0 60px; }
  #lp_contents {  margin:0 60px; padding-left:0px !important; padding-right:0px !important; }
	.lp_content { padding:70px 0; }
  .lp_content .post_content { margin:0 60px; }
	.lp_page_demo_faq { margin:60px 0; }
	.lp_content .link_button { margin-top:70px; }
}
@media only screen and (max-width: 750px) {
  #lp_header { height:655px; }
  #lp_header .item { height:655px; }
  #lp_header .content_item_list { margin-top:25px; }
  #lp_header .catch { padding:0 20px; font-weight:600; }
  #lp_header .catch.pc { display:none; }
  #lp_header .catch.mobile { display:block; }
  #lp_header .content_item { margin:0 10px 0 0; }
  #lp_header .link_button { margin-top:30px; }
  #lp_header .header_data_content.use_scroll { overflow:auto; margin-bottom:-20px;}
  #lp_header .header_data_content.use_scroll .content_item_list { padding:0 0 20px 0; -webkit-justify-content:flex-start; justify-content:flex-start; -webkit-flex-wrap:nowrap; flex-wrap:nowrap; padding:0 20px 20px; position:relative; }
  #lp_header .header_data_content.use_scroll .content_item { -webkit-flex: 0 0 auto; flex: 0 0 auto; position:relative; }
  #lp_header .header_data_content.use_scroll .content_item:last-of-type:after { content:''; display:block; width:20px; height:1px; position:absolute; left:100%; top:0; }
  #lp_header .simplebar-scrollbar:before { background:#fff !important; }
  #lp_header .bg_image.pc { display:none; }
  #lp_header .bg_image.mobile { display:block; }
  #lp_header .svg_wrap { display:none; }
  #lp_contents { margin:0 20px; padding:40px 0; }
	.lp_page_demo_faq { margin:30px 0; }
	.lp_page_table { margin-bottom:40px !important; }
	.lp_page_table th { width:120px !important; }
	.gray_wide_content { margin:35px 0; }
	.gray_wide_content_inner { padding:35px 0; }
}



/* ----------------------------------------------------------------------
 サービス
---------------------------------------------------------------------- */

/* サービスアーカイブ */
#archive_service { width:auto; margin:0 100px; }
@media only screen and (max-width: 1100px) {
	#archive_service .service_list .item { width:515px; display:block; margin:0 auto 50px; border-radius:15px; overflow:hidden; position:relative; }
	#archive_service .service_list .item:last-of-type { margin:0 auto; }
  #archive_service .service_list .image_wrap { display:block; width:auto; height:200px; overflow:hidden; border-radius:15px 15px 0 0; }
	#archive_service .service_list .image { border-radius:15px 15px 0 0; }
	#archive_service .service_list .content { width:auto; border-radius:0 0 15px 15px; border:none; background:#f6f6f6; padding:25px 30px 30px; }
  #archive_service .service_list .link_button { margin-top:23px; }
}
@media only screen and (max-width: 950px) {
  #archive_service { margin:0 60px; padding:70px 0; }
}
@media only screen and (max-width: 750px) {
  #archive_service { margin:0 20px; padding:40px 0; }
	#archive_service .service_list .item { width:auto; max-width:515px; margin:0 auto 20px; }
	#archive_service .service_list .catch { line-height:2; }
	#archive_service .point { top:15px; left:15px; width:80px; height:80px; }
  #archive_service .point .headline { font-size:12px; }
  #archive_service .point .num { font-size:26px; font-weight:600; }
  #archive_service .point .unit { font-size:12px; }
}
@media only screen and (max-width: 550px) {
  #archive_service .service_list .image_wrap { height:160px; }
}


/* サービス詳細 */
@media only screen and (max-width: 1000px) {
	#service_page_header { height:400px; }
  #service_page_header .content { width:100%; padding:0 60px; -webkit-box-sizing:border-box; box-sizing:border-box; }
	#service_page_header .title h1 { width:auto; height:70px; line-height:70px; margin:0 60px; }
  #single_service { width:auto; margin:0 60px; padding:60px 0 100px; }
}
@media only screen and (max-width: 800px) {
	#service_page_header { height:300px; }
  #service_page_header .content { padding:0 20px; height:240px; }
  #service_page_header .box_content { display:none; }
  #mobile_box_content { display:block; border-bottom:1px solid #ddd; }
	#service_page_header .catch { text-align:center; width:100%; padding:0; }
	#service_page_header .title h1 { text-align:center; height:auto; line-height:1.6; margin:9px 20px; }
  #single_service { margin:0 20px; padding:35px 0 40px; }
	.service_design_content { margin:35px 0 40px; }
	body.single-post .service_design_content, body.show_side_bar .service_design_content { margin-bottom:35px; }
	.service_design_content .headline { height:55px; line-height:55px !important; font-size:18px !important; }
	.service_design_content .catch { font-size:16px !important; }
  .service_design_content .content { padding:20px 25px; }
	#single_service .post_content img.aligncenter { margin-top:35px; }
  #single_service .post_content .design_headline + p img.aligncenter { margin-top:30px; }
	#single_service .service_design_content .content { padding:25px 30px; }
	body.page-template-page-lp .service_design_content .content { padding:25px 30px; }
	#service_page_header .animate_item { opacity:1; top:0; }
	body.single-service .mobile_animate_item {
    top:40px !important; opacity:0 !important;
    -webkit-transition: top 1.5s cubic-bezier(0.22, 1, 0.36, 1) 0.5s, opacity 1.5s cubic-bezier(0.22, 1, 0.36, 1) 0.7s !important;
    transition: top 1.5s cubic-bezier(0.22, 1, 0.36, 1) 0.5s, opacity 1.5s cubic-bezier(0.22, 1, 0.36, 1) 0.7s !important;
  }
  body.single-service .mobile_animate_item.mobile_animate { top:0 !important; opacity:1 !important; }
}
@media only screen and (max-width: 750px) {
	#service_page_header { height:240px; }
}


/* サービス詳細　カルーセル */
@media only screen and (max-width: 1000px) {
	#recent_service { background:#f6f6f6; padding:100px 0 0; }
  #recent_service .service_carousel { width:auto; margin:0; }
	.service_carousel.owl-carousel .owl-nav { display:none; }
	.service_carousel .item { width:290px; }
	.service_carousel .title_area { height:90px; }
  .service_carousel .image_wrap { height:170px; }
  .service_carousel .image { height:170px !important; }
	.service_carousel .catch { font-size:14px; }
	.service_carousel .title { font-size:18px; }
	.service_carousel .desc { border:none; background:#f6f6f6; }
	.service_carousel .desc p { line-height:2; max-height:6em; font-size:14px; }
	.service_carousel:before { display:none; }
  .service_carousel:after { display:none; }
}
@media only screen and (max-width: 800px) {
	#recent_service { padding:40px 0 0; }
	#recent_service .headline { margin:0 0 35px 0; font-size:20px; }
	#recent_service img { filter:blur(5px); -webkit-transition: filter 0.25s ease; transition: filter 0.25s ease; }
	#recent_service .center img { filter:blur(0px); }
}



/* ----------------------------------------------------------------------
 事例
---------------------------------------------------------------------- */

/* 事例アーカイブ */
#archive_case .case_list { width:auto; margin:0 100px -36px; }
@media only screen and (max-width: 1100px) {
  #archive_case .case_list .item { width:calc(50% - 18px); margin:0 36px 36px 0; }
  #archive_case .case_list .item:nth-child(3n) { margin-right:36px; }
  #archive_case .case_list .item:nth-child(2n) { margin-right:0px; }
}
@media only screen and (max-width: 950px) {
	#archive_case { padding:70px 0 70px; }
  #archive_case .case_list { margin:0 60px -36px; }
}
@media only screen and (max-width: 750px) {
	#archive_case { padding:40px 0 40px; }
	body.no_page_nav #archive_case {padding-bottom:20px; }
  #archive_case .case_list { margin:0 20px -20px; }
  #archive_case .case_list .item { width:calc(50% - 10px); margin:0 20px 20px 0; }
  #archive_case .case_list .item:nth-child(3n) { margin-right:20px; }
  #archive_case .case_list .item:nth-child(2n) { margin-right:0px; }
	.case_list .image_wrap { height:150px; }
	.case_list .category { z-index:1; top:115px; padding:0 15px; }
  .case_list .title { min-height:3em; max-height:3em; }
  .case_list .title a { -webkit-line-clamp:2; }
	.case_list .title_area { padding:28px 30px 28px; }
	.case_list .item.no_meta .title_area { padding:28px 30px; }
  .case_list .title_area.one_data { padding:25px 30px 25px; }
	.case_list .meta { font-size:12px; position:relative; bottom:0; left:0px; margin-top:25px; }
	.case_list .meta li { display:inline-block; }
	.case_list .meta .date { display:inline; word-break:break-all; }
	.case_list .meta li:first-of-type { margin:0 10px 0 0; }
	.case_list .meta li:only-of-type { margin:0; }
	.case_list.owl-carousel .meta li { display:block; }
	.case_list.owl-carousel .meta li:first-of-type { margin:0 0 -5px 0; }
}
@media only screen and (max-width: 550px) {
	#archive_case .case_list { display:block; margin:0 20px; }
  #archive_case .case_list .item { width:auto; margin:0 0 20px 0; }
  #archive_case .case_list .item:nth-child(3n) { margin-right:0px; }
	#archive_case .page_navi { margin-top:20px; }
}	


/* 事例詳細 */
@media only screen and (max-width: 1030px) {
  #related_case .case_list .item { width:290px; }
}
@media only screen and (max-width: 920px) {
  #single_case { width:auto; margin:0 60px; padding:70px 0 70px; }
}
@media only screen and (max-width: 750px) {
  #single_case { width:auto; margin:0 20px; padding:0 0 40px; }
	#case_post_title { border-radius:0px; margin:0 -20px 35px; }
	#case_post_title .title_area { padding:15px 20px; }
	#case_post_title .meta { font-size:12px; }
	#case_post_title .category { padding:0 20px;left:0px; }
	body.single-case #next_prev_post { margin-top:40px; }
	#single_case  .archive_button { margin-top:40px; }
  #related_case { padding:40px 0; }
	#related_case .headline { font-size:20px; margin:0 0 30px 0; }
}
@media only screen and (max-width: 550px) {
	#case_post_title { height:260px; }
}


/* 関連事例 */
@media only screen and (max-width: 1200px) {
	#related_case .owl-carousel .owl-nav { display:none; }
}
@media only screen and (max-width: 1030px) {
  #related_case .case_list { width:auto; }
}




/* ----------------------------------------------------------------------
 CTA
---------------------------------------------------------------------- */
@media only screen and (max-width: 750px) {
  #case_cta { margin:35px 0 0; padding:40px 0 0 0; }
  #case_cta .headline { margin:0 0 30px 0; font-size:20px; }
}
@media only screen and (max-width: 950px) {
  #case_cta_main { height:200px; border-radius:10px; }
  #case_cta_main .catch { padding:15px 30px; }
}
@media only screen and (max-width: 750px) {
  #case_cta_main { height:160px; }
  #case_cta_main .catch { padding:12px 30px; }
}




/* ----------------------------------------------------------------------
 お知らせ
---------------------------------------------------------------------- */

/* お知らせアーカイブ */
#archive_news { padding:70px 0 150px; width:auto; margin:0 100px; }
#archive_news .news_category_button_wrap.use_scroll { overflow:auto; }
#archive_news .news_category_button_wrap.use_scroll ol { -webkit-justify-content:flex-start; justify-content:flex-start; -webkit-flex-wrap:nowrap; flex-wrap:nowrap; padding:0 10px; position:relative; }
#archive_news .news_category_button_wrap.use_scroll li { -webkit-flex: 0 0 auto; flex: 0 0 auto; position:relative; }
#archive_news .news_category_button_wrap.use_scroll li:last-of-type:after { content:''; display:block; width:20px; height:1px; position:absolute; left:100%; top:0; }
@media screen and (max-width:950px) {
  #archive_news { padding:70px 0 70px; margin:0 60px; }
}
@media screen and (max-width:750px) {
  #archive_news { padding:40px 0 40px; margin:0; }
	body.no_page_nav #archive_news { padding-bottom:0; }
	#archive_news .news_category_button { margin-bottom:40px; }
	#archive_news .news_category_button li { font-size:14px; margin:0 10px; }
	.news_list { }
	.news_list .item { height:auto; line-height:1; padding:20px 20px; -webkit-flex-wrap:wrap; flex-wrap:wrap; }
	.news_list .date { font-size:12px; margin:0 15px 0 0; }
	.news_list .date:before { margin:0 5px 0 0; }
	.news_list .category { margin:0; min-width:90px; height:30px; line-height:30px; border-radius:30px; padding:0 15px; }
	.news_list .title { font-size:14px; width:100%; margin-top:15px; line-height:1.1; }
	#archive_news .page_navi { margin:20px 20px 0; }
}



/* ----------------------------------------------------------------------
 ブログアーカイブページ
---------------------------------------------------------------------- */

/* ブログ一覧 */
#blog_list { width:auto; margin:0 100px -60px; }
#blog_list .item_list_top .image_wrap { height:auto; }
@media screen and (max-width:1050px) {
	#blog_list .item_list_top .content { min-height:170px; }
	#blog_list .item_list_top .item.no_date .content { min-height:135px; }
  #blog_list .title { font-size:18px; }
  #blog_list .item_list_bottom .title { font-size:16px; }
}
@media screen and (max-width:950px) {
	#archive_blog { padding:70px 0 70px; }
  #blog_list { width:auto; margin:0 60px -60px; }
  #blog_list .item_list_bottom .item { width:calc(50% - 18px); margin:0 35px 60px 0; }
  #blog_list .item_list_bottom .item:nth-of-type(3n) { margin-right:35px; }
	#blog_list .item_list_bottom .item:nth-of-type(2n) { margin-right:0; }
	#no_post { margin:40px 0; padding:0 60px; }
}
@media screen and (max-width:750px) {
	#archive_blog { padding:0 0 40px; }
	#archive_blog #archive_header { margin-top:35px; }
  #blog_list { width:auto; margin:0; }
	#blog_list .item_list_top_wrap { margin-bottom:-2px; }
  #blog_list .item_list_top .content { min-height:75px; padding:20px 20px 15px; }
  #blog_list .item_list_top .item.no_date .content { min-height:50px; }
  #blog_list .item_list_top .item:nth-child(1) .content { border-left:none; }
  #blog_list .item_list_top .item:nth-child(2) .content { border-right:none; }
	#blog_list .item_list_top .item { margin-bottom:0px; }
	#blog_list .item_list_bottom .item { width:50%; margin:0 0 -1px 0 !important; border-bottom:1px solid #ddd; }
	#blog_list .item_list_bottom .item:nth-child(odd) .content { border-right:1px solid #ddd; height:100%; }
  #blog_list .item_list_bottom .content { padding:20px 20px 15px; }
  #blog_list .title { font-size:16px !important; }
  #blog_list .item_list_bottom .title { font-size:14px !important; }
	#blog_list .category { padding:0 15px; }
	#blog_list .date { font-size:12px; margin:2px 0 10px 0; }
	#blog_list .desc { font-size:14px; display:none; }
  #no_post { margin:60px 0 20px; padding:0 20px; }
}
@media screen and (max-width:620px) {
	#blog_list .item_list_top_wrap { overflow:auto; }
	#blog_list .item_list_top { -webkit-flex-wrap:nowrap; flex-wrap:nowrap; }
  #blog_list .item_list_top .item { width:310px; -webkit-flex: 1 0 auto; flex: 1 0 auto; }
	#blog_list .item_list_top .item:only-of-type .content { border-right:none; }
	#blog_list .item_list_bottom .image_wrap { height:112px;}
}




/* ----------------------------------------------------------------------
 ページヘッダー
---------------------------------------------------------------------- */
#page_header_inner { width:auto; padding:0 100px; }
@media screen and (max-width:1050px) {
  #page_header_inner { height:70px; }
  #page_header .desc { font-size:15px; }
}
@media screen and (max-width:950px) {
  #page_header_inner { padding:0 60px; }
	#archive_header { width:auto; margin:-10px 60px 60px; }
	body.page #archive_header { margin:-10px 0 60px; }
}
@media screen and (max-width:750px) {
  #page_header_inner { padding:0 20px; height:60px; }
  #page_header .headline { margin-top:3px; }
  #page_header .desc { font-size:12px; margin-top:3px; }
	#page_header .desc.hide_when_mobile { display:none; }
	#archive_header { width:auto; margin:-10px 20px 35px; }
	body.page #archive_header { margin:-10px 0 35px; }
	#archive_header .desc { margin:15px 0 0; line-height:2; }
	#archive_header .catch.mobile { display:block; }
  #archive_header .desc.mobile { display:block; }
  #archive_header .catch.pc { display:none; }
  #archive_header .desc.pc { display:none; }
}


/* ページナビ */
@media screen and (max-width:750px) {
  .page_navi { margin:15px 0 0 0; }
	.page_navi a, .page_navi a:hover, .page_navi span { width:50px; height:60px; line-height:60px; }

}




/* ----------------------------------------------------------------------
 ドロワーメニュー
---------------------------------------------------------------------- */
#drawer_menu {
	display:block; position:fixed; top:0px; right:0; width:300px; height:100%; background:#000; overflow:auto; z-index:9999999;
  -webkit-transform: translate3d(100%,0,0); transform: translate3d(100%,0,0);
	-webkit-transition: transform 0.25s ease; transition: transform 0.25s ease;
  -webkit-overflow-scrolling: touch;
}
.open_menu #drawer_menu { -webkit-transform: translate3d(0,0,0); transform: translate3d(0,0,0); box-shadow:-5px 0 20px 0 rgba(0,0,0,0.4);}
.open_menu #js-footer-bar { display:none; }


/* ドロワーメニュー展開時のオーバーレイ */
.open_menu #container:before {
  content:''; display:block; width:100%; height:100%; position:fixed; top:0px; left:0px; background:rgba(0,0,0,0.6); z-index:9999;
}
/* safariとedgeのみ背景をぼかす */
_::-webkit-full-page-media, _:future, :root .open_menu #container:before { background:rgba(0,0,0,0.6); -webkit-backdrop-filter:blur(10px); backdrop-filter:blur(10px); }
@supports (-ms-ime-align: auto) {
  .open_menu #container:before { background:rgba(0,0,0,0.6); -webkit-backdrop-filter:blur(10px); backdrop-filter:blur(10px); }
}
/* ぼかしはここまで */


/* ドロワーメニューのスクロールバー */
#drawer_menu .simplebar-scrollbar:before { background:#fff !important; }


/* 閉じるボタン */
#drawer_menu .close_button_area { position:relative; width:100%; height:60px; border-bottom:1px solid #222; }
#drawer_menu .close_button { cursor:pointer; display:block; width:60px; height:60px; position:absolute; top:0px; right:0px; z-index:10; }
#drawer_menu .close_button:before {
  color:#fff; font-family:'design_plus'; content:'\e91a'; font-size:20px; display:block; top:21px; left:19px; position:absolute;
  -webkit-transition: all 0.2s ease; transition: all 0.2s ease;
  -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;
}
#drawer_menu .close_button:hover:before { }


/* グローバルメニュー */
#header #global_menu { display:none; }
#mobile_menu { width:100%; margin:0; }
#mobile_menu ul { margin:0; }
#mobile_menu li ul { display:none; }
#mobile_menu a {
  position:relative; display:block;  margin:0; padding:0 60px 0 20px; height:60px; line-height:60px; overflow:hidden; text-decoration:none;
  color:#fff; font-size:13px; border-bottom:1px solid #222;
  -webkit-box-sizing:border-box; box-sizing:border-box;
  overflow:hidden; white-space:nowrap; text-overflow:ellipsis; visibility:visible;
}
#mobile_menu li li a { border:none; background:#222; height:50px; line-height:50px; }
#mobile_menu a:hover { color:#fff; }


/* グローバルメニュー（子メニュー） */
#mobile_menu li { position:relative; }
#mobile_menu .child_menu_button { display:block; position:absolute; text-align:center; width:60px; height:60px; right:0px; top:-1px; z-index:9; cursor:pointer; }
#mobile_menu .child_menu_button:after {
  background:#fff; content:''; height:2px; width:12px; display:block;
  position:absolute; right:25px; top:30px;
  -webkit-transition: background-color 0.25s ease; transition: background-color 0.25s ease;
}
#mobile_menu .child_menu_button:before {
  background:#fff; content:''; height:12px; width:2px; display:block;
  position:absolute; right:30px; top:25px;
  -webkit-transition: background-color 0.25s ease; transition: background-color 0.25s ease;
}
#mobile_menu li.open > .child_menu_button:before {  display:none; }
#mobile_menu li li a { opacity:0; }
#mobile_menu li li.animate a { opacity:1; transition: opacity 0.25s ease; }
#mobile_menu li ul { background:#222; }


/* SNS */
#drawer_menu_footer {
	padding:30px 20px 30px;
  display:-webkit-box; display:-webkit-flex; display:flex;
  -webkit-flex-wrap:wrap; flex-wrap:wrap;
  -webkit-justify-content:space-between; justify-content:space-between;
}
#drawer_menu_sns { margin:0 0 0 -5px; text-align:left; }
#drawer_menu_footer.has_lang #drawer_menu_sns { max-width:calc(100% - 60px); }
#drawer_menu_sns.color_type1 a:before { color:#fff; }
#drawer_menu_sns li { margin:0 10px 10px 0; }
#drawer_menu_sns.color_type2 { margin-top:-4px; }
#drawer_menu_sns.color_type2 li { margin-right:2px; transform:scale(0.8); }
#drawer_menu_sns.color_type2 li.rss a:before { font-size:19px; }
#drawer_menu_sns.color_type2 li.contact a:before { font-size:20px; top:14px;}
#drawer_menu_sns.color_type2 li.pinterest a:before { top:12px; }


/* 検索フォーム */
#drawer_menu_search { margin:35px auto 0; position:relative; width:260px; }
#drawer_menu_search .input_area { background:rgba(255,255,255,0.15); width:260px; height:40px; border-radius:40px; position:relative; }
#drawer_menu_search .input_area input { font-size:12px; border:none; background:none; height:40px; width:210px; position:absolute; left:0px; top:2px; padding:0 10px 0 25px; color:#fff; }
#drawer_menu_search .button_area { width:40px; height:40px; position:absolute; right:0px; top:0px; }
#drawer_menu_search .button_area input { width:40px; height:40px; border:none; background:none; cursor:pointer; }
#drawer_menu_search .button_area:before {
  display:block; text-align:center; cursor:pointer; z-index:1; pointer-events:none; font-weight:600;
  position:absolute; font-family:'design_plus'; color:#fff; font-size:12px; content:'\e94c'; left:11px; top:15px;
  -webkit-transition: color 0.25s ease; transition: color 0.25s ease;
}
#drawer_menu_search .button_area:hover:before { }


/* 言語ボタン */
#drawer_lang_button {
  display:-webkit-box; display:-webkit-flex; display:flex; max-width:70px;
  -webkit-flex-wrap:wrap; flex-wrap:wrap;
	-webkit-justify-content:flex-end; justify-content:flex-end;
}
#drawer_lang_button.layout2 { display:block; text-align:right; }
#drawer_lang_button li { font-size:15px; margin:2px 0 10px 10px; line-height:1; }
#drawer_lang_button li a { color:#666; }
#drawer_lang_button li.active a { color:#fff; pointer-events:none; }


/* 色 */
body.drawermenu_light #drawer_menu { background:#fff; }
body.drawermenu_light #drawer_menu .simplebar-scrollbar:before { background:#000 !important; }
body.drawermenu_light #drawer_menu .close_button_area { border-color:#ddd; }
body.drawermenu_light #mobile_menu a { color:#000; border-color:#ddd; }
body.drawermenu_light #drawer_menu .close_button_area { border-color:#ddd; }
body.drawermenu_light #drawer_menu .close_button:before { color:#000; }
body.drawermenu_light #mobile_menu .child_menu_button:after { background:#000; }
body.drawermenu_light #mobile_menu .child_menu_button:before { background:#000; }
body.drawermenu_light #mobile_menu li ul { background:#eee; }
body.drawermenu_light #mobile_menu li li a { background:#eee; }
body.drawermenu_light #drawer_menu_sns.color_type1 a:before { color:#000; }
body.drawermenu_light #drawer_menu_search .input_area { background:#eee; }
body.drawermenu_light #drawer_menu_search .input_area input { color:#000; }
body.drawermenu_light #drawer_menu_search .button_area:before { color:#000; }
body.drawermenu_light #drawer_lang_button li.active a { color:#000; }
body.drawermenu_light #drawer_lang_button li a { color:#aaa; }




/* ----------------------------------------------------------------------
 ヘッダー
---------------------------------------------------------------------- */
#header { height:60px; }
@media screen and (max-width:1050px) {
  /* #header { box-shadow:none !important; } */
}


/* ロゴ */
#header_logo { left:25px; transform: translateY(-50%) scale(1); }
#header_logo a { }
#header_logo .logo_image.pc { display:none; }
#header_logo .logo_image.mobile { display:block; }
@media screen and (max-width:750px) {
	#header_logo { left:20px; }
  #index_header_logo .logo_image.mobile { display:block; }
  #index_header_logo .logo_image.pc { display:none; }
}


/* 非表示にする要素 */
#global_menu { display:none; }
#header_search { display:none; }
#header_lang_button { display:none; }


/* メニューボタン */
#drawer_menu_button {
  position:absolute; z-index:2; right:0px; bottom:0px;
  display:inline-block; font-size:11px; width:60px; height:60px; line-height:60px; text-decoration:none; text-align:center;
}
#drawer_menu_button span {
  width:22px; height:2px; background:#000; display:block; position:absolute; left:28px;
  -webkit-transition-property:background-color; -webkit-transition-duration:0.2s; -webkit-transition-timing-function:ease;
  transition-property:background-color; transition-duration:0.2s; transition-timing-function:ease;
	-webkit-transition: all 0.3s ease; transition: all 0.3s ease;
}
body.home #drawer_menu_button span, body.page-template-page-lp #drawer_menu_button span { background:#fff; }
body.home #header.active #drawer_menu_button span, body.home.header_fix #header #drawer_menu_button span,
  body.page-template-page-lp.header_fix #drawer_menu_button span, body.page-template-page-lp #header.active #drawer_menu_button span, body.page-template-page-lp.hide_page_header #header #drawer_menu_button span
{ background:#000; }
#drawer_menu_button:hover span { opacity:0.5; }
#drawer_menu_button span { left:20px; }
#drawer_menu_button span:nth-child(1) { top:24px; }
#drawer_menu_button span:nth-child(2) { top:30px; }
#drawer_menu_button span:nth-child(3) { top:36px; }


/* メガメニュー */
.megamenu { display:none; }


/* メッセージ */
#header_message { padding:10px 0; z-index:2000; }
#header_message .post_content { width:auto !important; margin:0 20px !important; }
#header_message.show_close_button .post_content { margin:0 40px !important; }
@media screen and (max-width:750px) {
  #header_message .post_content { line-height:1.8; }
  #header_message.show_close_button .post_content { margin:0 35px !important; }
}


/* パンくずリンク */
#bread_crumb {
	width:100%; position:relative; padding:0 25px !important;
  -webkit-box-sizing:border-box; box-sizing:border-box;
}
#bread_crumb ul { width:auto; height:60px; line-height:60px; }
@media screen and (max-width:1000px) {
  body.single-service #bread_crumb ul { width:auto; margin:0 40px; }
}
@media screen and (max-width:950px) {
  body.single-case #bread_crumb ul { width:auto; margin:0 40px; }
}
@media screen and (max-width:800px) {
  body.single-service #bread_crumb ul { margin:0; }
}
@media screen and (max-width:750px) {
  #bread_crumb { padding:0 20px !important; height:45px; }
	#bread_crumb ul { height:45px !important; line-height:45px !important; width:auto !important; }
	#bread_crumb li { font-size:12px; margin-right:5px; padding-right:15px; }
	#bread_crumb li:after { font-size:9px; top:1px; }
  body.single-case #bread_crumb ul { margin:0; }
}



/* ----------------------------------------------------------------------
 ブログ詳細ページ
---------------------------------------------------------------------- */


/* タイトルエリア */
@media screen and (max-width:750px) {
	#single_post_title { margin:0 -20px 15px; }
	#single_post_title .title { padding:0 20px; }
	#single_post_title .meta { margin-bottom:5px; }
	#single_post_title .category { height:30px; line-height:30px; min-width:inherit; padding:0 15px; margin-right:10px; margin-bottom:10px; }
	#single_post_title .date { margin:2px 10px 10px 0; font-size:12px; }
	#single_post_title .update { font-size:12px; margin:2px 0 10px 0; }
	#single_post_title .date:before { margin-right:5px; font-size:11px; }
	#single_post_title .update:before { margin-right:5px; font-size:12px; }
	#single_post_image { width:calc(100% + 40px); margin:0 -20px 40px; max-width:inherit; }
	body.single-news #single_post_title { margin:20px 0 20px; }
	body.single-news #single_post_title .title { padding:0; }
}


/* SNSボタン */
@media screen and (max-width:750px) {
  #single_share_top { margin:0 0 30px 0; }
  #single_share_top .share-top { }
  #single_share_bottom { margin:40px 0 0; }
  #single_share_bottom .share-btm { margin-bottom:0 !important; padding:0; }
  #single_share_top .mt10, #single_share_top .mt10 { margin:0 !important; }
  #single_share_bottom .mb45, #single_share_bottom .mb45 { margin:0 !important; }
  .share-type1 ul { text-align:center; margin-bottom:-5px !important; }
  .share-type3 ul { text-align:center; margin-bottom:-5px !important; }
  .share-type2 ul.type2 { text-align:center; margin-bottom:-5px !important; }
  .share-type4 ul.type4 { text-align:center; margin-bottom:-5px !important; }
  .sns_default_top  { text-align:center; margin-bottom:-5px !important; }
}


/* コピーボタン */
@media screen and (max-width:750px) {
  #single_copy_title_url_top { margin:0 0 35px; }
  #single_copy_title_url_bottom { margin:40px 0 0; }
  .single_copy_title_url_btn { border-width:2px; font-size:12px; line-height:46px; min-width:250px; }
}


/* メタ情報 */
#post_meta_bottom { padding:15px 20px 13px; }
#post_meta_bottom li { display:block; margin:0 0 5px 0; padding:0 0 0 25px; border-right:none; }
#post_meta_bottom li:last-child { border:none; margin:0; }
#post_meta_bottom li:before { line-height:1.5; }
@media screen and (max-width:750px) {
  #post_meta_bottom { margin:40px 0 0; }
}


/* ページ分割 */
@media screen and (max-width:750px) {
  #post_pagination { padding:5px 0 0; }
  #post_pagination a, #post_pagination p { font-size:12px; width:45px; height:45px; line-height:45px; }
  #p_readmore { padding:5px 0 0; margin:0; }
}


/* 広告 */
@media screen and (max-width:750px) {
  #single_banner_top { width:auto; padding:0; margin:0 0 40px 0; }
  #single_banner_bottom { width:auto; margin:40px 0 -5px; }
  #single_banner_shortcode { padding:0 0 20px; }
}


/* ナビゲーション */
@media screen and (max-width:750px) {
	#next_prev_post { margin:40px 0 0 0; }
	#next_prev_post .item { height:50px; }
  #next_prev_post .nav { display:block; }
  #next_prev_post .title { display:none; }
  #next_prev_post .nav {
		position:relative; text-align:center; width:100%; font-weight:500; font-size:14px; line-height:1;
    -webkit-box-sizing:border-box; box-sizing:border-box;
    -webkit-transition: color 0.2s ease; transition: color 0.2s ease;
  }
	#next_prev_post .nav:after {
    z-index:10; position:absolute; margin-top:2px; left:15px; top:50%; -ms-transform: translateY(-50%); -webkit-transform: translateY(-50%); transform: translateY(-50%);
    font-family:'design_plus'; color:#000; font-size:14px; font-weight:500; display:block;
    -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;
    -webkit-transition: all 0.2s ease; transition: all 0.2s ease;
  }
	#next_prev_post .prev_post .nav:after { content:'\e90f'; }
  #next_prev_post .next_post .nav:after { content:'\e910'; left:auto; right:15px; }
}


/* プロフィール */
@media screen and (max-width:750px) {
  .author_profile { padding:20px 20px 15px; }
  body.single .author_profile { margin:35px 0 0; }
  .author_profile .avatar_area { width:90px; height:90px; }
  .author_profile .info { -webkit-width:calc(100% - 90px); width:calc(100% - 90px); }
  .author_profile .info_inner { padding:0 0 0 20px; }
  .author_profile .name { font-size:18px; margin:0 0 10px 0; }
	.author_profile .author_link { margin-top:5px; }
  .author_profile .desc { font-size:12px !important; }
	body.single .author_profile .desc { line-height:2; }
	#author_sns { margin-bottom:-5px; }
	#author_sns li { margin:0 10px 5px 0; }
}


/* 関連記事 */
#related_post .item { height:120px; margin-bottom:-1px; }
#related_post .image_wrap { width:122px; height:122px; }
#related_post .title { width:calc(100% - 120px); padding:0 20px; font-size:14px; }
@media screen and (max-width:750px) {
	#related_post, #related_post_no_image { padding:40px 0 0; }
	#related_post .headline, #related_post_no_image .headline { font-size:20px !important; margin:0 0 30px 0; }
  #related_post .post_list { display:block; }
  #related_post .item { width:auto; }
	#related_post .item.no_image { height:90px; }
}


/* table スクロール対応 */
@media (max-width: 767px) {
  .post_content .s_table,
  .post_content .wp-block-table { overflow: auto; white-space: nowrap; margin-bottom: 2em; }
  .post_content .s_table table,
  .post_content .wp-block-table { margin-bottom: 0; }
}



/* ----------------------------------------------------------------------
 その他のページ
---------------------------------------------------------------------- */
/* 404ページ*/
#page_404_header .content { padding:0 30px; }




/* ----------------------------------------------------------------------
 フッター
---------------------------------------------------------------------- */

/* スクロールバー */
.custom_scroll_bar { scrollbar-color: rgba(0,0,0,0) rgba(255,255,255,0); scrollbar-width: thin; -webkit-transition: all 0.25s ease; transition: all 0.25s ease; }
.custom_scroll_bar:hover { scrollbar-color: #f3b80a rgba(255,255,255,0.2); scrollbar-width: thin; }
.custom_scroll_bar::-webkit-scrollbar { height:0px; width:0px; }
.custom_scroll_bar:hover::-webkit-scrollbar { height:8px; width:8px; }
.custom_scroll_bar::-webkit-scrollbar-track { background: rgba(255,255,255,0.2); border-radius:8px; }
.custom_scroll_bar::-webkit-scrollbar-thumb { background: #f3b80a; border-radius:10px; }


/* ボックスコンテンツ */
#footer_box_content { height:350px; }
#footer_box_content .item_list_wrap { margin:0 60px; left:auto; top:50%; -webkit-transform: translateY(-50%); transform: translateY(-50%); }
#footer_box_content .item { height:190px; min-width:290px; margin-right:20px; padding:15px !important; }
#footer_box_content .item .headline { font-size:16px; }
#footer_box_content .item .desc { font-size:14px; }
#footer_box_content .item .tel { font-size:30px; }
#footer_box_content .item .design_button { height:50px; min-width:inherit; width:240px; font-size:14px; }
@media screen and (max-width:1050px) {
  #footer_box_content { height:300px; }
  #footer_box_content .item_list_wrap { margin:0 20px; }
  #footer_box_content .item_list { padding:0; -webkit-flex-wrap:nowrap; flex-wrap:nowrap; position:relative; }
  #footer_box_content .item { margin-right:10px !important; position:relative; }
  #footer_box_content .item:last-of-type { margin-right:0px !important; }
  #footer_box_content .item:last-of-type:after { content:''; display:block; width:20px; height:1px; position:absolute; left:100%; top:0; }
	#footer_box_content .simplebar-scrollbar:before { background:#fff !important; }
}
@media screen and (max-width:950px) {
	#footer_box_content.item_num3 .item_list_wrap { overflow:auto; margin:10px 0 0 0; padding:0 0 20px 20px; }
	#footer_box_content.item_num3 .item_list_wrap .item_list { -webkit-justify-content:flex-start; justify-content:flex-start; }
	body.mobile_device #footer_box_content.item_num3 .item_list_wrap { margin:0; padding:0 0 0 20px; }
	#footer_box_content .item_total1 { display:block; }
	#footer_box_content .item_total1 .item { min-width:inherit; }
	#footer_box_content .item_total1 p { margin:0 0 12px 0; }
	#footer_box_content .item_total1 p:last-of-type { margin:0; }
}
@media screen and (max-width:750px) {
  #footer_box_content .bg_image.mobile { display:block; }
  #footer_box_content .bg_image.pc { display:none; }
	#footer_box_content .item .free_space { font-size:14px; }
}
@media screen and (max-width:650px) {
	#footer_box_content.item_num2 .item_list_wrap { overflow:auto; margin:10px 0 0 0; padding:0 0 20px 20px; }
	#footer_box_content.item_num2 .item_list_wrap .item_list { -webkit-justify-content:flex-start; justify-content:flex-start; }
	body.mobile_device #footer_box_content.item_num2 .item_list_wrap { margin:0; padding:0 0 0 20px; }
}
@media screen and (max-width:350px) {
	#footer_box_content.item_num1 .item_list_wrap { overflow:auto; margin:10px 0 0 0; padding:0 0 20px 20px; }
	#footer_box_content.item_num1 .item_list_wrap .item_list { -webkit-justify-content:flex-start; justify-content:flex-start; }
	body.mobile_device #footer_box_content.item_num1 .item_list_wrap { margin:0; padding:0 0 0 20px; }
}


/* ロゴエリア */
@media screen and (max-width:750px) {
	#footer { padding:40px 0; }
  #footer_catch { height:auto; line-height:1.6; font-size:14px !important; padding:14px 20px; }
	#footer_logo { margin:0 0 20px 0; }
	#footer_logo .logo_image.mobile { display:block; }
	#footer_logo .logo_image.pc { display:none; }
}


/* フッターメニュー */
#footer_menu.use_scroll .menu_wrap { overflow:auto; }
#footer_menu.use_scroll ul { -webkit-justify-content:flex-start; justify-content:flex-start; -webkit-flex-wrap:nowrap; flex-wrap:nowrap; padding:0 10px; position:relative; }
#footer_menu.use_scroll li { -webkit-flex: 0 0 auto; flex: 0 0 auto; position:relative; }
#footer_menu.use_scroll li:last-of-type:after { content:''; display:block; width:10px; height:1px; position:absolute; left:100%; top:0; }
@media screen and (max-width:750px) {
	#footer_menu a { padding:0 10px; }
}


/* ページ上部へ戻るボタン */
@media screen and (max-width:750px) {
  #return_top a { height:50px; width:50px; line-height:50px; }
	#return_top { right:10px; bottom:20px; }
  #return_top a:before { top:3px; left:17px; }
	.p-footer-bar + #return_top { bottom:68px; opacity:0; }
	.p-footer-bar + #return_top.active { bottom:68px; opacity:1; }
}




/* ----------------------------------------------------------------------
 ウィジェット
---------------------------------------------------------------------- */
/* 基本設定 */
@media screen and (max-width:1050px) {
  .widget_content { width:50%; margin:0 0 40px 0; padding:0; -webkit-box-sizing:border-box; box-sizing:border-box; border:none; }
	.widget_content:nth-child(odd) { padding-right:50px; }
	.widget_content:nth-child(even) { padding-left:50px; }
}
@media screen and (max-width:750px) {
  .widget_content { max-width:300px; width:auto; margin:0 auto 40px; padding:0; border:none; }
	.widget_content:nth-child(odd) { padding-right:0px; }
	.widget_content:nth-child(even) { padding-left:0px; }
	.widget_headline { margin:0 0 20px 0; }
}
@media screen and (max-width:500px) {
  .widget_content { max-width:inherit; }
}


/* カテゴリー一覧 */
@media screen and (max-width:1050px) {
  .category_list_widget ul { margin:0; }
	.category_list_widget li a { padding:0; }
	.category_list_widget li li a { padding-left:15px; }
  .category_list_widget li li li a { padding-left:30px; }
	.category_list_widget li a:hover { padding-left:40px; }
	.category_list_widget a:before { left:0; }
}
@media screen and (max-width:750px) {
  .category_list_widget li a { height:50px; line-height:50px; }
	.category_list_widget a:before { top:23px; }
	.category_list_widget li a:hover { padding-left:30px; }
}


/* デザインされた記事一覧 */
@media screen and (max-width:750px) {
  .styled_post_list1 li { margin:0 0 20px 0; }
}


/* 記事スライダー */
@media screen and (max-width:750px) {
  .post_slider_widget { padding-bottom:0px; }
  .post_slider_widget .post_slider { height:auto; }
  .post_slider_widget .item { width:100%; height:auto; }
	.post_slider_widget .slick-dots { bottom:auto; top:170px; }
}


/* アーカイブ　ドロップダウン */
@media screen and (max-width:750px) {
  .p-dropdown__title { height:50px; line-height:50px; }
}


/* 検索 */
@media screen and (max-width:750px) {
  #searchform { height:50px; }
  #searchform #s { height:50px; }
  #searchform #searchsubmit { height:50px; }
  #searchform .submit_button  { height:50px; }
  #searchform .submit_button:before { height:50px; line-height:50px; }
}


/* デフォルトの最近の記事 */
@media screen and (max-width:750px) {
  .widget_recent_entries li { padding:0 0 10px 0; margin-bottom:10px; }
  .widget_recent_entries li:last-child { padding:0; margin:0; }
  .widget_recent_entries .post-date { font-size:12px; }
}


/* デフォルトのブロック */
@media screen and (max-width:750px) {
  .widget_block { font-size:14px; }	
}


/* デフォルトのテキストウィジェット */
@media screen and (max-width:750px) {
  .widget_text .textwidget { font-size:14px; }
}


/* デフォルトのカテゴリー */
@media screen and (max-width:1050px) {
  .widget_categories ul { margin:0; }
	.widget_categories li a { padding:0; }
	.widget_categories li li a { padding-left:15px; }
  .widget_categories li li li a { padding-left:30px; }
	.widget_categories li a:hover { padding-left:40px; }
	.widget_categories a:before { left:0; }
}
@media screen and (max-width:750px) {
  .widget_categories li a { height:50px; line-height:50px; }
	.widget_categories a:before { top:23px; }
	.widget_categories li a:hover { padding-left:30px; }
	.widget_categories li .post-count { font-size:11px; top:13px; }
}



/* デフォルトのアーカイブとカテゴリー　ドロップダウンメニュー */
@media screen and (max-width:750px) {
  .widget_archive select, .widget_categories select { height:50px; font-size:14px; }
  .widget_archive .screen-reader-text, .widget_categories .screen-reader-text  { height:50px; }
  .widget_archive .screen-reader-text:before, .widget_categories .screen-reader-text:before { top:22px; }
}




/* ----------------------------------------------------------------------
 コメント
---------------------------------------------------------------------- */
#comments { margin:50px auto 0; padding:0 0 0 0; }
@media screen and (max-width:750px) {
  #comments { margin:40px 0 0 0; }
	#comments .headline { font-size:20px !important; margin:0 0 30px 0 !important; }
}


/* コメント・トラックバックのタブ */
#comment_tab li a, #comment_tab li p { padding:14px 15px; font-size:12px; }
@media screen and (max-width:750px) {
  body.mobile_device #comment_tab li a:hover { background:#fff; color:#000; }
}




/* ----------------------------------------------------------------------
 その他
---------------------------------------------------------------------- */
/*  WordPress プリセットスタイル */
@media screen and (max-width:750px) {
  .post_content h1, .post_content h2, .post_content h3, .post_content h4, .post_content h5, .post_content h6 { }
  .post_content p { line-height:2; }
  .post_content li, .post_content dt, .post_content dd { line-height:1.8; }
  .post_content td, .post_content th { line-height:1.8; padding:14px 20px; }
}





/* BEYOND モバイル用スタイルシート */