@charset "utf-8";


/* ----------------------------------------------------------------------
 基本設定
---------------------------------------------------------------------- */
/* レイアウト */
#container { position:relative; height:100%; }
#main_contents { width:auto; padding:40px 0 60px; margin:0 auto; display:block; }
#main_contents:after { display:none; }
#main_col { width:auto; margin:0 auto; padding:0; }
body.page #main_col { padding-top:0px; }
body.hide_sidebar #main_col { width:auto; padding-top:0px; }
#side_col {
  width:auto; max-width:770px; margin:70px auto 0;
  display:-webkit-box; display:-ms-flexbox; display:-webkit-flex; display:flex;
  -ms-flex-wrap:wrap; -webkit-flex-wrap:wrap; flex-wrap:wrap;
}
@media screen and (max-width:900px) {
  #main_contents { padding:20px 20px 40px; display:block; }
  #main_col { width:auto !important; margin-bottom:40px; padding:0; }
  #side_col { width:auto; margin:40px auto 0; display:block; max-width:365px; }
}

@media screen and (max-width:550px) {
  #main_contents { padding:20px 20px 0; }
  #side_col { max-width:inherit; }
}


/* ドロワーメニュー */
#drawer_menu {
  display:block; position:fixed; top:0px; right:-400px; width:400px; height:100%; background:#333; overflow:auto; z-index:9999;
  -webkit-transition:right 300ms cubic-bezier(0.190, 1.000, 0.220, 1.000); transition:right 300ms cubic-bezier(0.190, 1.000, 0.220, 1.000);
  -webkit-backface-visibility: hidden; backface-visibility: hidden;
  -webkit-overflow-scrolling: touch;
}
.open_menu #drawer_menu { right:0; box-shadow:-5px 0 20px 0 rgba(0,0,0,0.4); }
@media screen and (max-width:500px) {
  #drawer_menu { right:-80%; width:80%; }
}


/* ドロワーメニュー展開時のオーバーレイ */
.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; }


/* admin bar利用時 */
body.admin-bar { padding-top:32px; }
body.admin-bar.header_fix_mobile #header { margin-top:32px; }
body.admin-bar #drawer_menu { padding-top:32px; }
.mobile body.admin-bar.header_fix_mobile { padding-top:102px; }
@media screen and (max-width:781px) {
  body.admin-bar { padding-top:46px; }
  body.admin-bar.header_fix_mobile #header { margin-top:46px; }
  body.admin-bar #drawer_menu { padding-top:46px;}
  body.admin-bar.fixed_find_menu #find_menu_wrap { top:46px; }
  body.admin-bar.fixed_find_menu { padding-top:106px; }
  .mobile body.admin-bar.header_fix_mobile { padding-top:126px; }
}


/* デザインボタン */
@media screen and (max-width:750px) {
  .design_button { height:50px; }
  .design_button a { min-width:240px; height:50px; line-height:50px; font-size:14px; padding:0 15px;  }
}


/* デザイン見出し */
.design_headline2 { margin:100px 0 63px 0 !important; padding:0 0 0 0 !important; }
@media screen and (max-width:750px) {
	.design_headline1 { font-size:20px !important; margin:0 0 30px 0 !important; padding:0 !important; }
  .design_headline2 { font-size:18px !important; margin:33px -20px 35px !important; }
  .design_headline2 span { padding-top:15px; }
	body.hide_sidebar .design_headline2 { margin-right:-20px !important; padding-right:-20px !important; }
	.two_column_image + .design_headline2 { margin-top:40px !important; }
}


/* ライン */
.design_line { margin:50px 0px 53px 0; }
@media screen and (max-width:750px) {
  .design_line { margin:32px -20px 35px; width:calc(100% + 40px); }
}


/* 横並びの画像 */
@media screen and (max-width:750px) {
  .two_column_image { margin:35px 0 35px; }
  .design_headline2 + .two_column_image { margin-top:0; }
  .two_column_image .item:first-of-type { margin-right:1px; }
}


/* SLOARIS用ロード画面 */
@media screen and (max-width:750px) {
  body.use_loading_screen.load_screen_animation_type2 #container {  transform: translate3d(0px, 30px, 0px); }
  body.use_loading_screen.load_screen_animation_type3 #container { transform: translate3d(0px, -30px, 0px); }
}




/* ----------------------------------------------------------------------
 トップページ　ヘッダーコンテンツ
---------------------------------------------------------------------- */
#header_slider_wrap { height:auto; }
#header_slider { height:auto; }
#header_slider .item { height:auto; padding-top: 23%; }
#header_slider .caption { width:100%; padding:0 60px; max-width:1150px; }
@media screen and (max-width:950px) {
  #header_slider_wrap { height:auto; }
  #header_slider { height:auto; }
  #header_slider .item { height:auto; padding-top: 23%; }
  #header_slider .caption { padding:0 40px; }

  #header_slider_nav_wrap.stop_animation{ display:none; }
  #header_slider .slick-dots { display: block !important; position:absolute; bottom:23px; left:0px; width:100%; z-index:10; text-align:center; }
  #header_slider .slick-dots li { display:inline-block; width:10px; height:10px; margin:0 7px; font-size:10px; }
  #header_slider .slick-dots button { cursor:pointer; border:none; color:transparent; width:14px; height:10px; display:block; font-size:0; background:none; position:relative; }
  #header_slider .slick-dots button::before { content:''; display:block; width:10px; height:10px; line-height:10px; background:none; border:1px solid #fff; border-radius:12px; position: absolute; top:0; left:0; }
  #header_slider .slick-dots button:hover::before, #header_slider .slick-dots .slick-active button::before { background:#ccc; border-color:#ccc; }
}
@media screen and (max-width:750px) {
  #header_slider_wrap { height:auto; }
  #header_slider { height:auto; }
  #header_slider .item { height:auto; padding-top: 70%; }
  #header_slider .caption { padding:0 20px; }
  #header_slider .catch { font-weight:600 !important; }
  #header_slider .desc { margin:10px 0 -5px; }
  #header_slider .desc p.pc { display:none; }
  #header_slider .desc p.mobile { display:block; }
  #header_slider .design_button { font-size:14px; min-width:200px; height:45px; line-height:45px; padding:0 20px; margin-top:15px; }
  #header_slider .bg_image.pc { display:none; }
  #header_slider .bg_image.mobile { display:block; }
	#header_slider_nav_wrap { bottom:15px; height:86px; }
	#header_slider_nav_wrap.two_item { display:none; }
  #header_slider_nav_wrap.stop_animation{ display:none; }
	#header_slider_nav .nav_item { width:255px; height:86px; margin:0 7px; }
	#header_slider_nav .nav_catch {	font-size:12px; padding:0 40px 0 20px; }
  #header_slider_nav .nav_item:after { width:255px; height:86px; left:-255px; }
  #header_slider_nav .nav_item:before { font-size:12px; top:40px; right:20px; }

  /* ドットナビゲーション */
  #header_slider .slick-dots { display: block !important; position:absolute; bottom:23px; left:0px; width:100%; z-index:10; text-align:center; }
  #header_slider .slick-dots li { display:inline-block; width:10px; height:10px; margin:0 7px; font-size:10px; }
  #header_slider .slick-dots button { cursor:pointer; border:none; color:transparent; width:14px; height:10px; display:block; font-size:0; background:none; position:relative; }
  #header_slider .slick-dots button::before { content:''; display:block; width:10px; height:10px; line-height:10px; background:none; border:1px solid #fff; border-radius:12px; position: absolute; top:0; left:0; }
  #header_slider .slick-dots button:hover::before, #header_slider .slick-dots .slick-active button::before { background:#ccc; border-color:#ccc; }
}


/* ヘッダーコンテンツを表示しない場合 */
body.no_index_header_content #header { border-bottom:1px solid #ddd; }
body.no_index_header_content.header_fix_mobile #header { border-bottom:none; }
body.no_index_header_content #index_content_builder { border-top:1px solid #ddd; padding:60px 0 0 0; }




/* ----------------------------------------------------------------------
 トップページ　その他
---------------------------------------------------------------------- */
/* 共通設定 */
.cb_content:last-of-type { padding-bottom:40px; }
@media screen and (max-width:750px) {
  .cb_headline .sub_headline { font-size:14px; }
	.cb_content:last-of-type { padding-bottom:40px; }
}


/* ニュースティッカー */
@media screen and (max-width:950px) {
  #index_news_ticker { width:100%; height:70px; }
}
@media screen and (max-width:750px) {
  #index_news_ticker { width:100%; height:115px; }
	#index_news_ticker .item { height:auto; padding:20px 20px 15px; display:block; }
	#index_news_ticker .date { width:auto; margin:0 10px 0 0; height:25px; line-height:26px; font-size:12px; float:left; }
  #index_news_ticker .category { font-size:11px; margin-right:0px; min-width:80px; height:25px; line-height:26px; padding:0 15px; }
  #index_news_ticker .title { font-size:14px; text-overflow:clip; white-space:normal; max-height:3.6em; margin-top:10px; clear:both; }
  #index_news_ticker .title a { overflow:visible; text-overflow:clip; white-space:normal; display:-webkit-inline-box; -webkit-box-orient:vertical; -webkit-line-clamp:2; }
}


/* タブコンテンツ */
.tab_content_top .tab { width:100%; }
.tab_content_bottom { width:auto; border:none; padding:100px 60px; }
.tab_content_bottom .item { left:60px; right:60px; }
.tab_content_bottom .image_area { width:50%; }
.tab_content_bottom .content { width:calc(50% - 60px); }
@media screen and (max-width:950px) {
  .tab_content_top { height:500px; }
  .tab_content_top_inner { width:100%; padding:0 40px; }
  .tab_content_bottom { padding:100px 40px; }
  .tab_content_bottom .image_area { margin-right:40px; }
  .tab_content_bottom .content { width:calc(50% - 40px); }
  .tab_content_top .tab { height:50px; }
  .tab_content_top .tab .item { font-size:14px; height:50px; line-height:50px; min-width:150px; margin:0 4px; padding:0 15px; border-radius:5px 5px 0 0; }
}
@media screen and (max-width:750px) {
  .tab_content_top { height:360px; }
  .tab_content_top_inner { padding:0 20px; }
  .tab_content_top .desc { line-height:2; margin:6px 0 0; }
  .tab_content_top .design_button { margin-top:20px; }
  .tab_content_top .tab { height:40px; }
  .tab_content_top .tab .item { font-size:12px; height:40px; line-height:40px; min-width:70px; }
  .tab_content_bottom { padding:40px 20px; }
  .tab_content_bottom .item { left:20px; right:20px; top:40px; }
  .tab_content_bottom .item_inner { display:block; }
  .tab_content_bottom .image_area { width:100%; margin:0 auto; max-width:500px; }
  .tab_content_bottom .content { width:100%; margin:37px 0 0 0; }
  .tab_content_bottom .title { margin-bottom:11px; }
  .tab_content_bottom .catch { margin-bottom:6px; }
  .tab_content_bottom .desc { line-height:2; }
  .tab_content_bottom .design_button { margin-top:33px; }
	.tab_content_bottom .slick-dots { bottom:20px; }
}


/* ブログ一覧 */
.cb_blog_list { width:auto; padding:90px 0px 100px; border:none; }
.cb_blog_list .blog_list { margin:60px 0px -70px; }
.cb_blog_list .cb_desc { margin:55px 60px 0; }
.cb_blog_list .image_link { width:50%; padding-right:30px; -webkit-box-sizing:border-box; box-sizing:border-box; }
.cb_blog_list .content { width:50%; padding-left:30px; }
@media screen and (max-width:950px) {
  .cb_blog_list .cb_desc { margin:55px 40px 0; }
  .cb_blog_list .item { height:300px; padding:40px; }
  .cb_blog_list .image_link { padding-right:20px; height:220px; }
  .cb_blog_list .content { padding-left:20px; height:220px; }
}
@media screen and (max-width:750px) {
  .cb_blog_list { padding:40px 0px 40px; }
  .cb_blog_list .cb_desc { margin:25px 20px 0; }
  .cb_blog_list .blog_list { margin:30px 0px -10px; }
  .cb_blog_list .item { height:auto; padding:20px 20px 12px; }
  .cb_blog_list .image_link { width:100%; padding:0px; margin:0 0 20px 0; }
  .cb_blog_list .content { width:100%; padding:0px; height:auto; }
  .cb_blog_list .content_inner { position:relative; top:auto; -ms-transform: translateY(0%); -webkit-transform: translateY(0%); transform: translateY(0%); }
  .cb_blog_list .meta { margin-bottom:12px; }
  .cb_blog_list .meta li:first-of-type { margin-right:10px; }
  .cb_blog_list .category a, .cb_blog_list .pr_label { font-size:11px; min-width:80px; height:25px; line-height:26px; padding:0 15px; }
  .cb_blog_list .date { font-size:12px; height:25px; line-height:26px; }
  .cb_blog_list .desc { display:none; margin:7px 0 0 0; }
  .cb_blog_list .design_button { margin-top:40px; }
}
@media screen and (max-width:550px) {
  .cb_blog_list .image_link { height:180px; }
}


/* サービス一覧 */
.cb_service_list { background:#f6f6f6; }
.cb_service_top { width:auto; padding:90px 60px; border:none; }
.cb_service_bottom { width:auto; padding:70px 60px; border:none; }
.cb_service_list.cb_content:last-of-type .cb_service_bottom { padding-bottom:100px; }
.cb_service_item_list .item { position:relative; height:500px; overflow:hidden; }
.cb_service_item_list .item a { display:block; position:relative; width:100%; height:100%; color:#fff; }
.cb_service_item_list .item a:after { content:''; display:block; width:50%; height:100%; background:rgba(0,0,0,0.5); position:absolute; right:0px; top:0px; z-index:2; }
.cb_service_item_list .content {
	width:50%; position:absolute; right:0px; bottom:auto !important; z-index:3; padding:60px;
	position:absolute; top:50%; -ms-transform: translateY(-50%); -webkit-transform: translateY(-50%); transform: translateY(-50%);
  -webkit-box-sizing:border-box; box-sizing:border-box;
}
.cb_service_item_list .item:nth-child(even) a:after { right:auto; left:0px; }
.cb_service_item_list .item:nth-child(even) .content { right:auto; left:0px; }
.cb_service_item_list .title { font-weight:600; line-height:1.5; margin-top:8px; }
.cb_service_item_list .title span { display:block; }
.cb_service_item_list .sub_title { font-weight:500; }
.cb_service_item_list .title br { display:none; }
.cb_service_item_list .desc { line-height:2.4; color:#fff; margin-top:30px; }
.cb_service_item_list .image_wrap { display:block; width:100%; height:100%; position:relative; z-index:1; overflow:hidden; }
.cb_service_item_list .image { width:100%; height:100% !important; display:block; overflow:hidden; position:relative; z-index:2; }
.cb_service_item_list .bottom_title { font-weight:600; margin:38px 0 0 0; line-height:1; position:relative; display:inline-block; padding:0 20px 0 0; }
.cb_service_item_list .bottom_title:after {
  font-family:'design_plus'; content:'\e910'; font-size:14px; display:block; position:absolute; top:2px; right:0px; font-weight:500;
  -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;
  -webkit-transition: all 0.2s ease; transition: all 0.2s ease;
}
@media screen and (max-width:950px) {
	.cb_service_top { padding:90px 40px; }
  .cb_service_bottom { padding:70px 40px; }
}
@media screen and (max-width:750px) {
	.cb_service_list { z-index:2; position:relative; }
	.cb_service_top { padding:35px 20px; }
	.cb_service_top .cb_desc { line-height:2; margin:30px 0 0; }
  .cb_service_item_list .item { height:100%; }
  .cb_service_item_list .content { position:relative; width:100%; padding:35px 50px 50px; top:0; -ms-transform: translateY(0%); -webkit-transform: translateY(0%); transform: translateY(0%); }
	.cb_service_item_list .image_wrap { position:absolute; top:0px; left:0px; }
	.cb_service_item_list .item a:after { width:100%; }
  .cb_service_item_list .desc { line-height:2; margin-top:20px; }
  .cb_service_item_list .bottom_title { margin:23px 0 0 0; }
	.cb_service_item_list .bottom_title:after { font-size:12px; }
  .cb_service_bottom { padding:40px 40px; }
	.cb_service_list.cb_content:last-of-type .cb_service_bottom { padding-bottom:40px; }
}


/* お知らせ一覧 */
.cb_news_list { width:auto; padding:90px 60px 100px; border:none; }
@media screen and (max-width:950px) {
  .cb_news_list { padding:90px 40px 100px; }
}
@media screen and (max-width:750px) {
  .cb_news_list { padding:32px 20px 35px; }
  .cb_news_list.no_archive_button { padding-bottom:0; margin-bottom:-1px; }
	.cb_news_list.no_archive_button + .white_content { padding-top:40px !important; }
  .cb_news_list .news_category_list { margin:35px auto 30px; }
  .cb_news_list .design_button { margin-top:40px; margin-bottom:5px; }
  .cb_news_list .news_list { margin:0 -20px; }
	.cb_news_list .no_category_list { margin-top:35px; }
}


/* プロジェクト一覧 */
.cb_project_list { width:auto; padding:90px 0px 100px; border:none; }
.cb_project_list .cb_headline::before {
  content: "";
  display: block;
  height: 60px;
  margin-top: -60px;
  visibility: hidden;
}
.cb_project_list .project_list { margin:60px 0px -70px; }
.cb_project_list .cb_desc { margin:55px 60px 0; }
@media screen and (max-width:950px) {
  .cb_project_list .cb_desc { margin:55px 40px 0; }
}
@media screen and (max-width:750px) {
  .cb_project_list { padding:40px 0px 40px; }
  .cb_project_list .project_list { margin:30px 0px -10px; }
  .cb_project_list .cb_desc { margin:25px 20px 0; }
  .cb_project_list .design_button { margin-top:40px; }
}


/* フリースペース */
.cb_free_space.type1 { width:auto; padding:0 60px; border:none; }
.cb_free_space.type2 { width:auto; }
@media screen and (max-width:950px) {
  .cb_free_space.type1 { padding:0 40px; }
}
@media screen and (max-width:750px) {
  .cb_free_space.type1 { padding:0 20px; }
}


/* デモサイト用 */
@media screen and (max-width:750px) {
  .cb_free_space .index_free_design_content .catch { font-size:20px; margin:0 0 17px 0; }
  .cb_free_space .index_free_design_content img { display:block; margin:25px auto 0; max-width:250px; }
}




/* ----------------------------------------------------------------------
 会社概要アーカイブページ
---------------------------------------------------------------------- */
#company_archive_top { padding:0 0 1px 0; width:auto; border:none; }
#company_archive_bottom_inner { padding:70px 0 100px 0; width:auto; border:none; }
@media screen and (max-width:950px) {
	#company_list { margin:0 40px -40px; }
  #company_list .image_wrap { height:200px; }
	#company_list .title { padding:0 40px; }
	#company_list .catch { padding:35px 40px; }
}
@media screen and (max-width:750px) {
	#company_archive_top .square_headline.inview { top:-20px; }
  #company_archive_top .square_headline.inview.animate { top:-60px; }
  #company_archive_bottom_inner { padding:40px 0 40px 0; }
	#company_archive_bottom .top_catch { margin:-5px 0 33px; }
	#company_list { display:block; margin:0 20px -40px; }
  #company_list .item { width:100%; margin:0; }
	#company_list .title { padding:0 30px; }
	#company_list .catch { padding:15px 30px 32px; }
}
@media screen and (max-width:550px) {
  #company_list .image_wrap { height:160px; }
}




/* ----------------------------------------------------------------------
 会社概要詳細ページ
---------------------------------------------------------------------- */
@media screen and (max-width:750px) {
  .single_company_catch { font-size:20px; margin:-5px 0 35px; }
}


/* 企業理念 */
@media screen and (max-width:750px) {
  .philosophy_image1 { margin:0 auto; display:block; padding:14px 0 7px; max-width:240px !important; }
	.philosophy_image1 img { }
}


/* 会社概要 */
@media screen and (max-width:750px) {
  .outline_table { margin:33px 0 0 !important; font-size:14px; }
	.outline_table th { width:90px !important; padding:0 !important; }
}


/* 沿革 */
@media screen and (max-width:750px) {
  .history_table { font-size:14px; margin:33px 0 0 !important; }
  .history_table .year { width:78px !important; font-size:14px; }
  .history_table .month { width:50px !important; }
}


/* アクセス */
@media screen and (max-width:750px) {
  #access_map { margin:33px -20px 0; }
  .qt_google_map { height:320px !important; }
  .qt_google_map .qt_googlemap_embed { height:320px !important; }
  #access_map .qt_google_map .pb_googlemap_custom-overlay-inner { top: -84px; left: -50px; width: 90px !important; height: 90px !important; }
/*	#access_map .qt_google_map .pb_googlemap_custom-overlay-inner .pb_googlemap_custom-overlay-img { max-width:70px; height:auto; } */
	#access_info { margin:35px 0 -7px; text-align:center; }
  #access_info .headline { font-size:16px; margin:0 0 6px 0; }
  #access_info .link a { padding:6px 0; }
}


/* 提携会社 */
@media screen and (max-width:750px) {
  #partner_list { display:block; border:none; margin:33px -20px -40px; }
  #partner_list .item {	width:100%; height:auto; border:none; border-top:1px solid #ddd; padding:50px 40px 35px; }
  #partner_list .item img { margin:0 auto; }
  #partner_list .item:nth-child(1) img { margin-top:auto; }
	#partner_list .item .image { margin-bottom:50px; }
  #partner_list .item p { position:relative; bottom:auto; padding:0; }
}




/* ----------------------------------------------------------------------
 プロジェクトアーカイブページ
---------------------------------------------------------------------- */
#project_archive { padding:0 0 100px; width:auto; border:none; }
.project_list { margin:0; }
@media screen and (max-width:950px) {
  .project_list .image_wrap { height:250px; }
  .project_list .category { margin-left:40px; }
	.project_list .title { padding:0 40px; }
	.project_list .desc { margin:20px 40px 0; }
}
@media screen and (max-width:750px) {
	#project_archive { padding-bottom:40px; }
	body.no_page_nav #project_archive { padding-bottom:0px; }
	#project_archive .square_headline.inview { top:-20px; }
  #project_archive .square_headline.inview.animate { top:-60px; }
  .project_list { margin:0; display:block; }
	.project_list .item { width:100%; margin:0 0 33px 0; }
	.project_list .category { font-size:14px; height:50px; line-height:50px; margin-left:20px; }
	.project_list .title { padding:0 20px; bottom:15px; }
	.project_list .desc { line-height:2; max-height:4em; margin:13px 20px 0; }
}
@media screen and (max-width:550px) {
  .project_list .image_wrap { height:205px; }
}



/* ----------------------------------------------------------------------
 プロジェクト詳細ページ
---------------------------------------------------------------------- */
#related_project .design_headline2 { margin:0px 0 70px 0 !important; }
@media screen and (max-width:950px) {
  #project_title_area .image { height:350px; }
}
@media screen and (max-width:750px) {
	#project_title_area { margin:0 -20px 30px; }
	#project_title_area .category { height:50px; line-height:50px; margin:0 0 0 20px; }
	#project_title_area .image_wrap { width:100%; position:relative; margin:0 0 5px; padding-top:57%; }
	#project_title_area .image { position:absolute; top:0; left:0; width:100%; height:100%; margin:0; }
	#project_title_area .title { border:none; border-bottom:1px solid #ddd; padding:20px 20px; }
	#related_project { margin:35px 0 -18px 0; }
	#related_project .design_headline2 { font-size:16px !important; margin:0px 0 40px 0 !important; }
	#related_project .post_list { margin:0 30px; }
	#related_project .item { width:calc(50% - 9px); margin:0 18px 18px 0; }
	#related_project .image_wrap { margin:0 0 12px 0; height:120px; }
	#related_project .title { font-size:14px; max-height:4.8em; }
  #related_project .title span { -webkit-line-clamp:3; }
}
@media screen and (max-width:550px) {
	#related_project .post_list { margin:0; }
	#related_project .image_wrap { height:85px; }
}



/* ----------------------------------------------------------------------
 サービスアーカイブページ
---------------------------------------------------------------------- */
#service_archive { padding:0 0 100px; width:auto; border:none; }
#service_list { margin:0; }
#service_list .content_inner { padding:50px 50px 50px; }
@media screen and (max-width:950px) {
  #service_list .item { height:500px; }
	#service_list .content { height:100%; width:100%; }
}
@media screen and (max-width:750px) {
	#service_archive { padding:0; margin-bottom:-1px; }
  #service_list { margin:0; }
	#service_archive .square_headline.inview { top:-20px; }
  #service_archive .square_headline.inview.animate { top:-60px; }
	#service_list .content { position:relative; }
	#service_list .content_inner { padding:35px 50px 50px; position:relative; top:auto; -ms-transform: translateY(0%); -webkit-transform: translateY(0%); transform: translateY(0%); }
	#service_list .item { height:auto; }
	#service_list .catch { margin-top:20px; }
  #service_list .desc { line-height:2; margin-top:18px; max-height:6em; }
  #service_list .design_button { margin:23px 0 0 0; }
}
@media screen and (max-width:550px) {
	#service_list .design_button a { width:100%; }
}




/* ----------------------------------------------------------------------
 サービス詳細ページ
---------------------------------------------------------------------- */
#post_title2 { padding-right:0px; margin:-40px 0 60px 0; }
#service_banner .design_headline2 { margin:0 0 60px 0 !important; }
#service_banner { margin:50px 0 0px 0; }
@media screen and (max-width:950px) {
  #service_banner .content_inner { padding:0 40px; }
}
@media screen and (max-width:750px) {
  #post_title2 { padding-right:20px; margin:-20px -20px 40px 0; height:auto; }
	#post_title2 .title { height:auto; padding:12px 0; }
	#post_image2_wrap { width:calc(100% + 40px); position:relative; margin:0 -20px 33px; padding-top:64%; }
  #post_image2 { position:absolute; top:0; left:0; width:100%; height:100%; margin:0; }
	#service_banner { margin:33px 0 0 0; }
  #service_banner .design_headline2 { font-size:16px !important; margin:0 -20px 40px !important; }
	#service_banner .item a { height:auto; display:block; }
  #service_banner .image_wrap { width:100%; height:170px; }
	#service_banner .content { width:100%; }
  #service_banner .content_inner { padding:20px 30px; position:relative; top:auto; -ms-transform: translateY(0%); -webkit-transform: translateY(0%); transform: translateY(0%); }
	#service_banner .desc { line-height:2; max-height:6em; margin:3px 0 0 0; }
}




/* ----------------------------------------------------------------------
 固定ページ
---------------------------------------------------------------------- */
/* LPページ */
@media screen and (max-width:750px) {
	#tcd_lp_page_table { font-size:14px; margin:0 0 40px 0; }
  #tcd_lp_page_table th { width:90px !important; padding:0; }
}


/* FAQ */
@media screen and (max-width:750px) {
  .faq_list { margin:0 0 40px; }
  .faq_list .question { font-size:14px !important; padding:15px 45px 11px 20px !important; }
  .faq_list .question:before { right:17px; top:0; bottom:0; width:9px; height:1px; margin:auto; }
  .faq_list .question:after { right:21px; top:0; bottom:0; width:1px; height:9px; margin:auto;}
  .faq_list .answer { padding:15px 20px 15px; }
  .faq_list .answer p { line-height:2; }
}




/* ----------------------------------------------------------------------
 お知らせアーカイブページ
---------------------------------------------------------------------- */
#news_archive { padding:0 0 100px; width:auto; }
.news_category_list { margin:0 60px 100px; }
.news_list { margin:0 60px; }
@media screen and (max-width:950px) {
  .news_category_list { margin:0 40px 100px; }
  .news_list { margin:0 40px; }
}
@media screen and (max-width:750px) {
  #news_archive { padding:0 0 40px; }
	body.no_page_nav #news_archive { padding-bottom:0; }
	#news_archive .square_headline.inview { top:-20px; }
  #news_archive .square_headline.inview.animate { top:-60px; }
  .news_category_list, .news_category_sort_button { margin:0 20px 30px; }
  .news_category_list li, .news_category_sort_button li { font-size:14px; margin:0 10px 10px; }
	.news_category_list li a, .news_category_sort_button li a { padding-top:15px; }
  .news_list { margin:0; }
	.news_list .item { height:auto; border-left:none; border-right:none; margin:0 0 -1px 0; padding:20px 20px 15px; display:block; }
	.news_list .date { width:auto; margin:0 10px 0 0; height:25px; line-height:26px; font-size:12px; float:left; }
  .news_list .category { font-size:11px; margin-right:0px; min-width:80px; height:25px; line-height:27px; padding:0 15px; }
  .news_list .title { text-overflow:clip; white-space:normal; max-height:3.6em; margin-top:10px; clear:both; font-size:14px; }
  .news_list .title a { overflow:visible; text-overflow:clip; white-space:normal; display:-webkit-inline-box; -webkit-box-orient:vertical; -webkit-line-clamp:2; }
}




/* ----------------------------------------------------------------------
 お知らせ詳細ページ
---------------------------------------------------------------------- */
#single_news_inner { width:auto; margin:0 auto; border:none; padding:60px 0 100px; }
#single_news #article { width:770px; padding:40px; }
#news_next_prev_post { margin:40px auto 0; width:770px; }
#recent_news { width:770px; margin:70px auto 0; }
#recent_news .news_list { margin:0; }
#recent_news .headline { margin-bottom:40px; }
#recent_news .design_button { margin-top:40px; }
@media screen and (max-width:900px) {
  #single_news_inner { padding:40px 0; }
  #single_news #article { width:auto; margin:0 40px; }
  #news_next_prev_post { margin:40px 40px 0; width:auto; }
  #recent_news { width:auto; margin:70px 40px 0; }
	#recent_news .design_button { margin-bottom:40px; }
}
@media screen and (max-width:750px) {
  #single_news { background:#fff; }
  #single_news_inner { padding:0; }
  #single_news #article { margin:0; padding:20px 20px; }
  #news_next_prev_post { margin:20px 20px 0; }
	#news_next_prev_post .item { height:50px; }
  #news_next_prev_post .item:first-of-type { border:none; margin-right:-1px; }
  #news_next_prev_post a {
		border:1px solid #ddd; text-align:center; display:block; width:100%; height:50px; line-height:50px;
	  -webkit-box-sizing:border-box; box-sizing:border-box;
  }
	#news_next_prev_post .title_area { display:block; position:relative; left:auto; top:auto; -ms-transform: translateY(0%); -webkit-transform: translateY(0%); transform: translateY(0%); }
  #news_next_prev_post .prev_post .title_area { padding:0; }
  #news_next_prev_post .next_post .title_area { padding:0; }
  #news_next_prev_post .title { display:none; }
  #news_next_prev_post .nav { display:block; font-size:14px;}
  #news_next_prev_post a:before {
    content:'\e90f'; font-family:'design_plus'; font-size:11px; top:1px; left:15px; position:absolute; background:none; width:auto; height:auto;
    -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;
  }
  #news_next_prev_post .next_post a:before { content:'\e910'; left:auto; right:15px; }
  #recent_news { width:auto; margin:40px 0 0; }
	#recent_news .headline { margin-bottom:38px; }
}




/* ----------------------------------------------------------------------
 ブログアーカイブページ
---------------------------------------------------------------------- */
#blog_archive { padding:0 0 100px; width:auto; border:none; }
#blog_list .image_link { width:50%; padding-right:30px; -webkit-box-sizing:border-box; box-sizing:border-box; }
#blog_list .content { width:50%; padding-left:30px; }
@media screen and (max-width:950px) {
	#blog_list .item { height:300px; padding:40px; }
  #blog_list .image_link { padding-right:20px; height:220px; }
  #blog_list .content { padding-left:20px; height:220px; }
}
@media screen and (max-width:750px) {
  #blog_archive { padding:0 0 40px; }
	body.no_page_nav #blog_archive { padding-bottom:0; margin-bottom:-1px; }
	#blog_archive .square_headline.inview { top:-20px; }
  #blog_archive .square_headline.inview.animate { top:-60px; }
	#blog_list { display:block; }
	#blog_list .item { height:auto; padding:20px 20px 12px; }
  #blog_list .image_link { width:100%; padding:0px; margin:0 0 20px 0; }
  #blog_list .content { width:100%; padding:0px; height:auto; }
	#blog_list .content_inner { position:relative; top:auto; -ms-transform: translateY(0%); -webkit-transform: translateY(0%); transform: translateY(0%); }
  #blog_list .meta { margin-bottom:12px; }
	#blog_list .meta li:first-of-type { margin-right:10px; }
  #blog_list .category a, #blog_list .pr_label { font-size:11px; min-width:80px; height:25px; line-height:26px; padding:0 15px; }
	#blog_list .date { font-size:12px; height:25px; line-height:26px; }
	#blog_list .desc { display:none; margin:7px 0 0 0; }
}
@media screen and (max-width:550px) {
  #blog_list .image_link { height:180px; }
}


/* 投稿者ページ */
body.author .author_profile { width:auto; margin:0px 0 60px; padding:60px 60px 0; }
@media screen and (max-width:950px) {
  body.author .author_profile { margin:0 0 40px; padding:40px 40px 0; }
}
@media screen and (max-width:750px) {
  body.author .author_profile { padding:40px 20px 0; }
  body.author .author_profile .avatar_area { width:90px; height:90px; }
  body.author .author_profile .info { -webkit-width:calc(100% - 90px); width:calc(100% - 90px); }
}


/* ページナビ */
@media screen and (max-width:750px) {
  .page_navi { margin:40px 20px 1px; }
	.page_navi li { margin-bottom:-1px; }
  .page_navi .next, .page_navi .prev { display: none; }
  .page_navi a, .page_navi a:hover, .page_navi span{ width: 45px; height: 45px; line-height: 45px;}
  }


/* ----------------------------------------------------------------------
 ページヘッダー
---------------------------------------------------------------------- */
#page_header { height:auto; }
#page_header_inner { width:100% !important; padding:0 60px; webkit-box-sizing:border-box; box-sizing:border-box; }
@media screen and (max-width:750px) {
  #page_header { height:auto; }
  #page_header_inner { padding:0 30px; }
  #page_header .desc { font-size:15px; margin:10px 0 -5px; }
	#page_header .bg_image.pc { display:none; }
	#page_header .bg_image.mobile { display:block; }
}
@media screen and (max-width:550px) {
  #page_header { height:auto; padding-top: 66.67%; }
  .page-id-132 #page_header { padding-top: 59.2%;}
}


/* 四角形の見出し */
@media screen and (max-width:750px) {
  #archive_square_headline { width:120px; height:120px; top:-60px; margin-bottom:-20px; }
}


/* 説明文 */
@media screen and (max-width:750px) {
  .archive_desc { line-height:2; margin:-25px 0 34px 0; text-align:center; padding:0 20px; }
}


/* パンくずリンク */
#bread_crumb ul { width:auto; padding:0 20px; }
#bread_crumb li { margin:0 5px 0 0; padding:0 15px 0 0; }
#bread_crumb li:after { line-height:46px; height:45px; bottom:-16px; }
#bread_crumb li a { height:45px; line-height:46px; }




/* ----------------------------------------------------------------------
 ヘッダー
---------------------------------------------------------------------- */
#header {
	height:60px; webkit-box-sizing:border-box; box-sizing:border-box;
  -webkit-transition: opacity 0.35s ease; transition: opacity 0.35s ease;
}
.use_mobile_header_fix #header:after {
  content:''; display:block; width:100%; height:60px; background:#000; top:-60px; left:0px; position:absolute; z-index:1;
  -webkit-transition: all 0.6s cubic-bezier(0.22, 1, 0.36, 1) 0s; transition: all 0.6s cubic-bezier(0.22, 1, 0.36, 1) 0s;
}
#header.active:after { top:0px; }
.open_menu #header { opacity:0; }
.mobile body.header_fix_mobile #header {
	position:fixed; top:0px; left:0px;
  -webkit-animation: shadow_animation 0.7s esase forwards 0.2s;
  animation: shadow_animation 0.7s ease forwards 0.2s;
}
.mobile body.header_fix_mobile #header:after { top:0px !important; }
.mobile body.hide_global_menu.header_fix_mobile #header { position:absolute; }
.mobile body.hide_global_menu.header_fix_mobile #header:after { display:none; }
.mobile body.single.header_fix_mobile { padding-top:60px; }
.mobile body.single.header_fix_mobile #header:before { display:none; }
.mobile body.single.header_fix_mobile #header.active:after { display:block; }
.mobile body.hide_header_image.header_fix_mobile { padding-top:60px; }
.mobile body.hide_header_image.header_fix_mobile #header.active:after { display:block; }
.mobile body.hide_header_logo.hide_global_menu.hide_header_image.header_fix_mobile { padding-top:0px; }


/* ロゴ */
#header_logo a { height:60px; line-height:60px; padding:0 20px !important; }
#header_logo .logo_image.pc { display:none; }
#header_logo .logo_image.mobile {
    display: block;
    width: 200px;
}
#index_header_logo { left:20px; top:20px; }
@media screen and (max-width:750px) {
  #index_header_logo .logo_image.mobile { display:block; }
  #index_header_logo .logo_image.pc { display:none; }
}


/* メニューボタン */
#global_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;
}
#global_menu_button span {
  width:22px; height:2px; background:#fff; display:block; position:absolute;
  -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;
}
#global_menu_button span:nth-child(1) { top:24px; left:20px; }
#global_menu_button span:nth-child(2) { top:30px; left:20px; }
#global_menu_button span:nth-child(3) { top:36px; left:20px; }
#global_menu_button:hover span { opacity:0.5; }
body.home #global_menu_button { opacity:0; }
body.home #global_menu_button.animate {
  -webkit-animation: opacityAnimation 1.0s ease forwards 0s;
  animation: opacityAnimation 1.0s ease forwards 0s;
}
body.stop_index_slider_animation #global_menu_button { opacity:1; }
body.hide_global_menu #global_menu_button { display:none !important; }
#header.active #global_menu_button span { background:#000 !important; }
body.single #global_menu_button span { background:#000 !important; }
body.hide_header_image #global_menu_button span, body.no_index_header_content #global_menu_button span { background:#000; }


/* メガメニュー */
.megamenu { display:none; }


/* グローバルメニュー */
#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 #ddd;
  -webkit-box-sizing:border-box; box-sizing:border-box;
  overflow:hidden; white-space:nowrap; text-overflow:ellipsis; visibility:visible;
}
#mobile_menu a:hover { color:#fff; }
#mobile_menu ul ul a { padding-left:32px; }
#mobile_menu ul ul ul a { padding-left:47px; }
#mobile_menu ul ul ul ul a { padding-left:60px; }


/* グローバルメニュー（子メニュー） */
#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 .icon:before {
  font-family:'design_plus'; content:'\e90e'; color:#fff; text-align:center;
  display:block; font-size:12px;
  position:absolute; right:24px; top:29px;
}
#mobile_menu .child_menu_button.active .icon:before, #mobile_menu .child_menu_button:hover .icon:before { color:#fff; border-color:#fff; }
#mobile_menu li.open > .child_menu_button .icon:before { content:'\e911'; }
#mobile_menu li.open > ul {  }
#mobile_menu .child_menu_button:hover { background:rgba(0,0,0,0.2); }

#global_menu_button span {
    background: #000;
}

/* ドロワーメニュー　閉じるボタン */
#drawer_menu .close_button { display:block; width:100%; height:60px; position:relative; cursor:pointer; border-bottom:1px solid rgba(255,255,255,0.2); }
#drawer_menu .close_button:before {
  font-family:'design_plus'; color:#fff; font-size:18px; display:block; 
  content:'\e91a'; position:absolute; top:24px; right:17px;
  -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;
}


/* 検索フォーム */
#header_search { display:none; }
#footer_search { max-width:300px; height:45px; position:relative; overflow:hidden; background:rgba(255,255,255,0.2); margin:30px auto; }
#footer_search .input_area input {
  width:calc(100% - 45px); color:#fff; height:45px; padding:0 10px; border:none; background:none; z-index:1;
  position:absolute; left:0px; top:0px;
  -webkit-box-sizing:border-box; box-sizing:border-box;
}
#footer_search:hover .input_area input, #footer_search.active .input_area input { left:0px; }
#footer_search .button input { background:none; width:45px; height:45px; border:none; position:absolute; right:0px; pointer-events:none; z-index:2; }
#footer_search .button label { background:none; display:block; width:45px; height:45px; position:absolute; top:0px; right:0px; cursor:pointer; z-index:2; }
#footer_search .button label:before {
  font-family:'design_plus'; color:#fff; font-size:18px; content:'\e915'; display:block; position:relative; top:16px; left:16px;
  -webkit-transition: all 0.2s ease; transition: all 0.2s ease;
}
#footer_search .button label:hover:before { color:#0b8a97; }
@media screen and (max-width:450px) {
  #footer_search { margin:30px 20px; }
}


/* バナー */
#mobile_banner { }
#mobile_banner img { display:block; margin:0 auto; max-width:100%; height:auto; }
#mobile_banner .banner { margin:20px; }


/* メッセージ */
#header_message { padding:12px 20px; min-height:40px; }
html.open_menu #header_message { display:block; }
#close_header_message { width:60px; }
#header_message.show_close_button { padding-right:55px; }
@media screen and (max-width:750px) {
  #header_message { font-size:12px; }
}




/* ----------------------------------------------------------------------
 ブログ詳細ページ
---------------------------------------------------------------------- */
/* タイトルエリア */
@media screen and (max-width:950px) {
  #post_image { height:350px; }
}
@media screen and (max-width:750px) {
  #post_title { margin-bottom:20px; }
  #post_title .category { font-size:11px; margin:0 0 10px 0;  min-width:80px; height:25px; line-height:25px; padding:0 15px; }
  #post_title .date { font-size:12px; }
  #post_title .update { font-size:12px; position:relative; padding:0 0 0 29px; color:#999; margin:0 0 0 10px; }
  #post_title .update:before { font-size:14px; top:0px; left:10px; }
  #post_title .meta_top { margin:10px 0 0 0; }
  #post_image { width:calc(100% + 40px); height:300px; margin:0 -20px 40px; }
	#post_image_wrap { width:calc(100% + 40px); position:relative; margin:0 -20px 33px; padding-top:64%; }
  #post_image { position:absolute; top:0; left:0; width:100%; height:100%; margin:0; }
}


/* SNSボタン */
@media screen and (max-width:750px) {
  #single_share_top { margin:0 0 40px 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 30px; }
  #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; }
}
@media screen and (max-width:550px) {
}


/* メタ情報 */
#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) {
  .author_profile { padding:20px 20px 15px; }
  body.single .author_profile { margin:40px 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 7px 0; }
	.author_profile .author_link { margin-top:5px; }
  .author_profile .desc { font-size:12px !important; }
	body.single .author_profile .desc { line-height:2; }
}


/* 広告 */
@media screen and (max-width:750px) {
  #single_banner_top { width:auto; }
  #single_banner_bottom { width:auto; margin:40px 0 -5px; }
  #single_banner_shortcode { padding:0 0 20px; }
}


/* ナビゲーション */
#next_prev_post { margin:40px 0 0 0 ; padding-right:0px; }
@media screen and (max-width:750px) {
  #next_prev_post { border:none; margin:40px 0 0; }
  #next_prev_post .item { height:52px; margin:0; padding:0 !important; }
  #next_prev_post .item:first-of-type { border-right:none; }
  #next_prev_post .item:last-of-type { margin-left:-1px; }
  #next_prev_post a {
    height:50px; line-height:50px; border:1px solid #ddd; position:relative; background:#fff;
    -webkit-box-sizing:border-box; box-sizing:border-box;
  }
  #next_prev_post .image_wrap { display:none; }
  #next_prev_post .title_area { position:relative; bottom:auto; left:auto; color:#000; padding:0px; }
  #next_prev_post .title { display:none; }
  #next_prev_post .nav { display:block; text-align:center; }
  #next_prev_post a:before {
    content:'\e90f'; font-family:'design_plus'; font-size:11px; top:1px; left:15px; position:absolute; background:none; width:auto; height:auto;
    -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;
  }
  #next_prev_post .next_post a:before { content:'\e910'; left:auto; right:15px; }
}


/* 関連記事 */
#related_post { margin:70px 0 -20px 0; padding:0 0 0 0; }
#related_post .design_headline2 { margin:0 0 70px 0 !important; }
@media screen and (max-width:750px) {
  #related_post { margin:40px 0 -20px 0; }
	#related_post .design_headline2 { font-size:18px; margin:0 -20px 40px !important; }
  #related_post .item { width:calc(50% - 4px); margin:0 8px 17px 0; }
  #related_post .item:nth-of-type(3n) { margin-right:8px; }
  #related_post .item:nth-of-type(2n) { margin-right:0px; }
	#related_post .image_wrap { margin:0 0 13px 0; height:120px; }
	#related_post .title { max-height:4.8em; font-size:14px; }
  #related_post .title span { -webkit-line-clamp:3; }
}
@media screen and (max-width:550px) {
	#related_post .image_wrap { height:90px; }
}



/* ----------------------------------------------------------------------
 その他のページ
---------------------------------------------------------------------- */
/* 404ページ*/
#page_404_header .content { padding:0 30px; }




/* ----------------------------------------------------------------------
 フッター
---------------------------------------------------------------------- */
/* ロゴエリア */
@media screen and (max-width:750px) {
#footer_top {
    padding: 0;
}
	#footer_logo .logo_image.pc { display:none; }
  #footer_logo .logo_image.mobile { display:block; }
}


/* SNSボタン */
#footer_sns { margin:30px 0 0 0; position:relative; right:auto; top:auto; }
@media screen and (max-width:750px) {
	#footer_sns { margin:30px 0 0 0; }
}


/* フッターメニュー */
#footer_menu {
    width: 100%;
}
#footer_menu .footer_menu { padding:0 60px 40px; -ms-flex: 1 0 auto; -webkit-flex: 1 0 auto; flex: 1 0 auto; width:50%; border:none; border-right:1px solid #ddd; }
#footer_menu .footer_menu:nth-child(2n) { border-right:none; }
@media screen and (max-width:950px) {
  #footer_menu .footer_menu { padding:0 40px 23px; }
}
@media screen and (max-width:750px) {
  #footer_menu .footer_menu { padding:0 20px 20px; border:none; }
	#footer_menu .footer_menu li:first-of-type { font-size:14px; margin:0 0 13px 0; }
}


/* フッターメニュー（下部）*/
#footer_menu_bottom { height:auto; line-height:inherit; }
#footer_menu_bottom ul { padding:14px 0; }
#footer_menu_bottom li { line-height:1; font-size:14px; display:inline-block; margin:0 20px; }
#footer_menu_bottom li a { display:block; padding:10px 0; }
@media screen and (max-width:950px) {
  #footer_menu_bottom li { font-size:12px; margin:0 10px; }
}


/* フッターバナー */
#footer_banner .item { height:140px; }
#footer_banner .title_area { padding:0 30px; }
@media screen and (max-width:950px) {
  #footer_banner .item { height:140px; width:50%; -ms-flex: 1 0 auto; -webkit-flex: 1 0 auto; flex: 1 0 auto; }
  #footer_banner .title_area { padding:0 40px; }
}
@media screen and (max-width:750px) {
	#footer_banner .item { height:100px; }
  #footer_banner .title_area { padding:0 20px; }
	#footer_banner .sub_title { margin-top:10px; }
}


/* コピーライト */
@media screen and (max-width:750px) {
  #copyright { line-height:50px; height:50px; }
}


/* ページ上部へ戻E%3��ボタン */
#return_top2 { display:none; }
#return_top { display:block !important; }
@media screen and (max-width:750px) {
  #return_top a { height:50px; width:50px; line-height:50px; }
}


/* 固定フッターが有効時、モバイルデバイス調整用 */
body.show_footer_bar { padding-bottom:0px; }
body.show_footer_bar #return_top.active { -webkit-transform: translate3d(0,-50px,0); transform: translate3d(0,-50px,0); }
body.home.show_footer_bar #container { padding-bottom:0px; }
@media screen and (max-width:950px) {
  body.show_footer_bar #footer_button.active { -webkit-transform: translate3d(0,-50px,0); transform: translate3d(0,-50px,0); }
}




/* ----------------------------------------------------------------------
 ウィジェット
---------------------------------------------------------------------- */
/* 基本設定 */
.widget_content { width:calc(50% - 20px); margin:0 40px 40px 0; padding:0; border:none; }
.widget_content:nth-child(2n) { margin-right:0; }
.widget_headline, .widget_block .wp-block-heading { background:#00729f; color:#fff; height:60px; line-height:60px; padding:0 20px; }
@media screen and (max-width:900px) {
  .widget_content, .widget_content:nth-child(2n) { width:auto; margin:0 0 40px 0; }
  .widget_content:last-of-type { margin:0; }
}
@media screen and (max-width:550px) {
  .widget_content { border-top:1px solid #ddd; padding:40px 20px 0; margin:0 -20px 40px !important; }
  .widget_headline, .widget_block .wp-block-heading { background:none; color:#00729f; height:inherit; line-height:1; padding:0; }
}


/* カテゴリー一覧 */
.category_list_widget { margin-top:0px; }
.category_list_widget .square_headline { height:auto; line-height:1; padding:0 20px; position:relative; z-index:2; }
.category_list_widget .square_headline h3 {
  height:60px; line-height:60px; position:relative; top:auto; -ms-transform: translateY(0%); -webkit-transform: translateY(0%); transform: translateY(0%);
  display:-webkit-box; display:-ms-flexbox; display:-webkit-flex; display:flex;
  -ms-flex-wrap:wrap; -webkit-flex-wrap:wrap; flex-wrap:wrap;
  -ms-justify-content:space-between; -webkit-justify-content:space-between; justify-content:space-between;
}
.category_list_widget .square_headline .headline { font-size:18px; }
.category_list_widget .square_headline .sub_headline { font-size:12px; }
.category_list_widget ul { z-index:1; position:relative; }
.category_list_widget li a { border:1px solid #ddd; padding:0 20px; height:50px; line-height:50px; font-size:14px; margin-top:-1px; }
.category_list_widget li li a { padding-left:34px; }
.category_list_widget li li li a { padding-left:48px; }
.category_list_widget li a:hover { padding-left:30px; }
.category_list_widget li li a:hover { padding-left:44px; }
.category_list_widget li li li a:hover { padding-left:58px; }
@media screen and (max-width:550px) {
  .category_list_widget .square_headline h3 { height:50px; line-height:50px; }
}


/* タブ記事 */
.widget_tab_post_list_button div { height:50px; line-height:50px; font-size:14px; }
.widget_tab_post_list { top:50px; left:0px; width:100%; }
.widget_tab_post_list .image_wrap { width:100px; height:100px; }
.widget_tab_post_list .title_area { width:calc(100% - 100px); }
@media screen and (max-width:550px) {
  .widget_tab_post_list { top:90px; left:20px; width:calc(100% - 40px); }
}


/* デザインされた記事一覧 */
.styled_post_list1_widget { padding:0; }
.styled_post_list1_widget .widget_headline { height:60px; line-height:60px; font-size:18px; background:#00729f; color:#fff; padding:0 20px; border:none; margin:0; }
.styled_post_list1 li { margin:0; border:1px solid #ddd; border-bottom:none; }
.styled_post_list1 li:last-child { border-bottom:1px solid #ddd; }
.styled_post_list1 a { padding:20px 20px 20px; }
.styled_post_list1 .image_wrap { width:100px; height:100px; }
.styled_post_list1 .title_area { width:calc(100% - 100px); height:100px; }
@media screen and (max-width:550px) {
  .styled_post_list1_widget { margin:0 -20px -1px !important; }	
  .styled_post_list1 li { border:none; border-bottom:1px solid #ddd; }
}


/* 記事スライダー */
.post_slider_widget {
  border:1px solid #ddd; padding:20px; height:235px; 
  -webkit-box-sizing:border-box; box-sizing:border-box;
}
.post_slider_nav { margin-left:0; }
@media screen and (max-width:550px) {
  .post_slider_widget { height:inherit; border:none; border-top:1px solid #ddd; padding:40px 20px; margin:0 -20px 0 !important; }
}


/* バナー一覧 */
.tcd_banner_widget .banner_inner {
  border:1px solid #ddd; padding:20px;
  -webkit-box-sizing:border-box; box-sizing:border-box;
}
.tcd_banner_widget .headline { font-size:20px; }
.tcd_banner_widget .sub_headline { font-size:12px; }
@media screen and (max-width:550px) {
	.tcd_banner_widget { padding:20px 20px; margin:0 -20px !important; }
  .tcd_banner_widget .banner_inner { border:none; padding:0; }
}


/* アーカイブ　ドロップダウン */
@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; }
}




/* ----------------------------------------------------------------------
 コメント
---------------------------------------------------------------------- */
#comments { margin:70px 0 0 0; padding:0 0 0 0; }
#comments .design_headline2 { margin:0 0 70px 0 !important; }
@media screen and (max-width:750px) {
  #comments { margin:40px 0 0 0; }
	#comments .design_headline2 { font-size:18px; margin:0 -20px 35px !important; }
}


/* コメント・トラックバックのタブ */
#comment_tab li a, #comment_tab li p { padding:14px 15px; font-size:12px; }
@media screen and (max-width:750px) {
  #comment_tab li a, #comment_tab li p { background:#eee; }
}




/* ----------------------------------------------------------------------
 その他
---------------------------------------------------------------------- */
/*  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 { margin:0 0 5px 0; }
  .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; }
}


/* パスワード保護 */
.c-pw__box { padding:20px; margin:0 0 20px 0; }
.c-pw__box-label { display:block; margin:0 0 15px 0; text-align:center; }
.c-pw__box-input { width:calc(100% - 160px); margin:0 10px 0 0; -webkit-box-sizing:border-box; box-sizing:border-box; }
.c-pw__btn--submit { width:150px; min-width:inherit; -webkit-box-sizing:border-box; box-sizing:border-box; }
@media screen and (max-width:750px) {
  .c-pw__box { padding:15px; }
  .c-pw__box-input { width:calc(100% - 105px); margin-right:5px; }
  .c-pw__btn--submit { width:100px; }
}


/* Cardlink style - カードリンクのスタイル */
.cardlink { margin:30px 0 35px !important; padding:15px;  }


/* service */
.wp-image-152 {
    right: 0;
}
.wp-image-153 {
    left: 0;
}
.mainflx_pic {
    width: 54%;
    right: 0;
}
.wp-image-155 {
    left: 0;
    top: 15%;
    width: 10%;
}
.wp-image-156 {
    right: 0;
    width: 12%;
}
.s3 .mainflx_pic {
    left: 0;
}
.wp-image-164 {
    left: 0;
}
.wp-image-144 {
    right: 0;
}
.s5 .mainflx_pic {
    right: 0;
}
.s5 .mainflx_txt {
    width: 44%;
}
/* recruit */
.ip_br {
	display: block;
}
.c2_txt {
    width: 47%;
}
.wp-image-187 {
    bottom: -16%;
    left: 0;
    width: 22%;
}
.r2 {
    background: url(https://rise-coltd946.com/wp-content/uploads/2025/07/r3_bg.jpg) 100% no-repeat;
}
.wp-image-195 {
    right: 0;
}
.wp-image-175 {
    top: -6%;
    left: 0;
    width: 16%;
}
.post_content .r3 th {
    width: 102px;
}
.r4 .biggrimg {
    width: 70%;
    margin: 0 0 0 -200px;
    top: -212px;
    right: -8%;
}
.r4 .flex_row:before {
    height: 414px;
}
.ovrtxt {
    width: 70%;
    left: 32px;
}
.ttlp {
    width: 10%;
}
/* company */
.cm1 .overimg {
    left: 2%;
    width: 570px;
    margin: -164px 0 0 -146px;
}
.post_content .cm1 h3 {
    font-size: 40px;
}
.wp-image-224 {
    bottom: -14%;
    left: 0;
    width: 20%;
}
.cm1 {
    padding: 100px 20px;
}
.cm2 .overimg {
    width: 480px;
    margin: -100px 0 0 -84px;
    left: 1%;
}
.wp-image-226 {
    bottom: -10%;
}
.cm2 {
    padding: 104px 20px 100px;
}
.cm3 h2 span {
    top: -58%;
    left: 0%;
    width: 20%;
}
.wp-image-228 {
    left: 0;
    width: 42%;
}
.bn_section {
    box-sizing: border-box;
    padding: 120px 20px;
    position: relative;
}
.about_section .wp-image-80 {
    width: 200px;
    right: 10%;
    bottom: -70px;
}
.reason_section {
    padding: 60px 20px 80px;
}
.service_section .se_unit {
    padding: 0 20px;
    box-sizing: border-box;
}
.about_section {
    padding: 60px 20px;
}
.service_section .max1000{
	max-width: 100%;
}
.movie_section {
    padding: 0 20px 80px;
}
.recruit_inner {
    padding: 0 0 0 20px;
}
.abso_btn {
    left: 20px;
}
.abso_item33 {
    width: 250px;
    right: 0;
}
.col_contact .jp_sub {
    z-index: 999;
    position: relative;
}
.col_contact:before {
    width: 280px;
}
#strengths .max1000 {
    padding: 0 20px;
}
	.abso_item1 {
    right: -30px;
}
	.abso_item2 {
    left: -27px;
}
	#footer_logo {
    text-align: center;
    width: 100%;
}
	#footer_logo p {
    line-height: 1.8;
    text-align: center;
}
	#footer_logo .btn_tel {
  display: inline-block; 
}
	#footer_menu .footer_menu {
    padding: 40px 0 0;
    width: 100%;
}
	.work_list {
    width: 100%;
    text-align: center;
	padding: 20px 0 0;
}
	#footer_menu:after {
display: none;
}
		#footer_menu:before {
display: none;
}
	.work_list p{
		text-align: center;
	}
.abso_item333 {
    left: 0;
}


@media screen and (max-width:950px) {
/* service */
	.mainflx_pic {
    top: 26px;
}
.s2 .mw1000 .flex_row, .s4 .mw1000 .flex_row {
    padding: 80px 0 0;
    margin: 0;
    align-items: center;
}
.mw1000 .bgb, .mw1000 .bgg {
    margin: 0;
}
	.mw1000 .bgb1, .mw1000 .bgb2, .mw1000 .bgb3,
	.mw1000 .bgg1 {
    height: auto;
}
	.post_content .mw1000 p {
    padding: 0 26px 20px 28px;
}
	.wp-image-155 {
    top: 17%;
    width: 6%;
}
	.s2:before {
    height: 2320px;
}
.s3_in:before {
    content: "";
    height: 910px;
    width: 100%;
    background: linear-gradient(90deg, #083090 0%, #009de6 26%);
    display: block;
    z-index: -1;
    position: absolute;
    left: -6%;
    top: -12%;
}
	.s4 .flex_top:before {
    content: "";
    display: block;
    position: absolute;
    z-index: 1;
    background: #666;
    height: 439px;
    width: 105%;
    right: 0;
    top: -6%;
}
	.s2 .flex_top:before {
    height: 439px;
    width: 100%;
    right: 0;
    top: -6%;
}
	.wp-image-164 {
    left: 50%;
}
	.s3 .mainflx_txt {
    width: 43%;
}
	.post_content .s3 h2 {
    margin: 0 0 32px;
}
	.wp-image-164 {
    width: 24%;
    bottom: -10%;
}
	.s4 {
    padding: 80px 20px 76px;
}
	.s4 .flex_row {
    padding: 32px 0 40px;
}
	.s4:before {
    height: 1180px;
}
	.wp-image-144 {
    width: 30%;
    top: -70%;
}
.s5 {
    padding: 120px 20px 80px;
}
.s5_in:before {
    top: -4%;
}
/* recruit */
	.c2_txt {
    width: 100%;
}
	.r1 .flex_row {
    gap: 24px;
}
	.r2_lists {
    width: 100%;
    margin: 0;
    position: relative;
    left: 0;
}
	.ip_br {
	display: none;
}
	.wp-image-187 {
    bottom: -9%;
}
	.wp-image-195 {
    width: 22%;
    top: -14%;
}
	.r2 .flex_row {
    justify-content: center;
    gap: 20px 48px;
}
	.r3 .col_2 {
    width: calc(50% - 10px);
}
	.post_content .r3 td {
    padding: 16px 15px;
}
	.post_content .re_ta2 td {
    padding: 26.8px 27px;
}
.r4 .flex_row:before {
    height: 414px;
    width: 100vw;
    top: -29%;
    right: -20px;
}
.r4 .biggrimg {
    top: -80px;
}
.r5 {
    margin: 0;
}
	.wp-image-181 {
    top: -1.2%;
    right: -3%;
    width: 46%;
}
	.wp-image-184 {
    width: 54%;
}
	.wp-image-183 {
    width: 68%;
}
	.r5 .frbg:before {
    width: 550px;
    height: 118px;
}
	.post_content .r5 .bcntr {
    font-size: 19px;
}
	.ovrrimg {
    width: 100%;
    left: 0;
    text-align: center;
}
	.ovrtxt {
    width: 100%;
    left: 0;
    margin: 0;
    top: 0;
}
	.r5 .flex_row1 {
    gap: 40px;
}
	.post_content .wklist ul {
    font-size: 24px;
}
.wp-image-176 {
    top: -6%;
    right: -34%;
    width: 70%;
}
	.wp-image-175 {
    top: -2%;
}
/* company */
.cm1 {
    padding: 100px 20px 80px;
}
	.cm1 .col_2 {
    width: 100%;
}
.cm1 .overimg {
    left: 5%;
    margin: 0;
}
	.wp-image-224, .cm3 h2 span {
	display: none;
}
	.cm2 .col_2 {
    width: 100%;
}
	.cm2 .overimg {
    margin: 0;
    left: auto;
    text-align: center;
}
.cm2 .flex_row:before {
    height: 1000px;
    width: 100vw;
    right: -20px;
    top: -6%;
}
	.cm2 .flex_row {
    gap: 40px;
}
	.wp-image-234 {
    right: -6%;
    top: -12%;
    width: 50%;
}
	.post_content .cm4 .wp-image-235 {
    bottom: -12.2%;
    left: -6%;
    width: 80%;
}
	.cm4 {
    padding: 160px 20px 120px;
    overflow: hidden;
}
	#strengths .max1000 {
    padding: 0;
}
	.col_eng {
    width: 100%;
}
	#strengths .col_jp {
    width: 100%;
    margin: 40px 0 0;
}
	.page-id-105 #main_contents {
    width: auto;
    padding: 0;
}
	.flex_row-st {
    box-sizing: border-box;
    padding: 0 20px;
}
	.wp-image-246 {
    width: auto;
    margin: 0;
}
	.flex_row-st:before {
    content: "";
    position: absolute;
    width: 100%;
    height: 75%;
    bottom: 175px;
    transform: translate(-50%);
    left: 50%;
}
.flex_st {
    margin: 0 0 80px 0;
    padding: 0 20px;
}
	#strengths .flex_st-a .col_text {
    padding: 0;
}
	#strengths .col_text {
    width: 100%;
    background: #000;
}
	#strengths .col_img {
    width: 100%;
}
.st_bg {
    display: none;
}
	.abso_item1 {
		top: -300px;
}
.abso_nb {
    width: 50px;
    top: -75px;
}
	.abso_nb2 {
    width: 50px;
    left: 20px;
    top: -65px;
}
	.flex_st-b {
    flex-direction: column-reverse;
}
	#strengths .flex_st-b .col_text, #strengths .flex_st-a .col_text {
    box-sizing: border-box;
    padding: 20px;
}
	p:empty {
  margin: 0;
  padding: 0;
}
	.abso_item1 {
    top: -390px;
}
	.border1 {
    width: 90%;
    top: 113px;
}
	.abso_item2 {
    display: none;
}
	.flex_st-4 .border1 {
    top: 70px;
}
	.abso_btn11 {
    position: absolute;
    width: 280px;
    bottom: -30px;
    right: 50%;
    transform: translateX(50%);
}
	.contact_section .bn_flex {
    box-sizing: border-box;
    padding: 0 20px;
    justify-content: center;
}
.bn_section {
    padding: 60px 20px;
}	
	.bn_area .col_2 {
    width: 100%;
    margin: 0 0 40px 0;
}
	.bn_section:after {
    bottom: -86%;
}
.wp-image-209 {
    position: static;
}
	.about_bg {
    width: 100vw;
}
	.about_section .wp-image-80 {
    right: 0%;
    top: -40px;
}
	.video-grid {
    padding: 40px 0 0;
}
	.se_unit-a {
    margin: 40px 0 0;
}
	.video-item {
    flex: 100%;
    max-width: 600px;
}
	.col_2 {
    width: 100%;
}
	.col_r {
    text-align: center;
}
.wp-image-65 {
    position: static;
    margin: 60px 0 -70px;
}
	.recruit_section:before {
    height: 45%;
    top: 145px;
}
	.wp-image-66 {
    width: auto;
    position: static;
}
	.recruit_section {
    height: auto;
}
	.recruit_inner {
    height: 100%;
}
	.movie_section {
    padding: 0 20px 40px;
}
.abso_btn {
    position: static;
    text-align: center;
    margin: 30px 0 0;
}
	.cb_news_list {
    padding: 40px;
}
	.cb_news_list {
    margin: 0;
}
	.abso_item33 {
    width: 200px;
    right: -5px;
}
	.news_section:before {
    top: -25px;
    width: 95vw;
		
}
	.col_32 {
    width: 100%;
    margin: 40px 0;
}
.col_company {
    width: 100%;
    padding: 50px 40px 110px;
	height: 800px;
}
	.col_contact {
    width: 100%;
    padding: 50px 40px 110px;
    height: 800px;
}
	.col_contact:before {
    width: 75%;
}
	 .bn_flex .col_2 {
    width: 400px;
    margin: 0 0 40px 0;
}
#strengths .contact_section .bn_flex {
    justify-content: center;
}
	.cm0_in {
    text-align: center;
}
}

@media screen and (max-width:750px) {
	.pc_br {
	display: none;
}
	.sp_br {
	display: block;
}
	.col_2 {
    width: 100%;
}

/* service */
	.post_content .s0 h2, .post_content .r0 h2, .post_content .cm0 h2 {
    font-size: 24px;
}
	.post_content .s1 h2 {
    margin: 0 0 40px;
}
	.cm1 h2:before, .s1 h2:before, .r1 h2:before, .r2 h2:before, .r3 h2:before {
    width: 49px;
    bottom: -6px;
}
	.s1 {
    padding: 20px 20px 40px;
}
.wp-image-152 {
    width: 10%;
    top: -12%;
}
	.col_4 {
    width: calc(50% - 10px);
}
	.bottom2 {
    margin: 24px 0 0;
}
	.wp-image-153 {
    bottom: 24%;
    width: 92%;
}
	.s2 {
    padding: 0 20px 40px;
    background: #666;
}
.s2 .flex_top:before {
    height: 290px;
    width: 100vw;
    right: -20px;
    top: 0;
}
	.post_content .s2 h2, .post_content .s3 h2,
	.post_content .s4 h2, .post_content .s5 h2 {
    margin: 0 0 24px;
}
	.s2 h2 .smll, .s3 h2 .smll, .s5 h2 .smll {
    font-size: 18px;
}
	.mainflx_pic {
    top: 0;
    margin: 0;
}
	.flex_top {
    gap: 48px;
}
	.wp-image-155, .s2:before, .wp-image-164,
	.s4:before, .wp-image-156, .wp-image-144,
	.wp-image-165, .wp-image-153 {
	display: none;
}
	.mw1000 .col_2, .s3 .mainflx_txt, .s5 .mainflx_txt {
    width: 100%;
}
	.post_content .s2 h3, .post_content .s4 h3 {
    font-size: 20px;
    margin: 0 0 20px;
}
	.s2 .mw1000 .flex_row, .s4 .mw1000 .flex_row {
    padding: 40px 0 0;
    gap: 20px;
}
	.s3, .s5 {
    padding: 40px 20px;
}
	.s3 .mainflx_pic {
    margin: 0;
}
.s3_in:before {
    height: 698px;
    width: 100vw;
    left: -20px;
    top: -40px;
}
	.s3 .flex_row, .s5 .flex_row {
    gap: 24px;
}
	.s4 {
    padding: 0 20px 40px;
	background: #000;
}
.s4 .flex_top:before {
    height: 280px;
    width: 100vw;
    right: -20px;
    top: 0;
}
	.s4 .flex_row {
    padding: 40px 0 0;
}
	.post_content .s4 h3 {
    padding: 12px 14px 10px;
}
.s5_in:before {
    height: 650px;
    width: 100vw;
    right: -20px;
    top: -40px;
}
	.s5 .mainflx_pic {
    margin: 0;
}
/* recruit */
	.wp-image-187, .wp-image-188,
	.wp-image-195, .wp-image-175,
	.wp-image-176 {
	display: none;
}
	.r1 {
    padding: 20px 20px 40px;
}
	.post_content .r1 h3 {
    font-size: 26px;
    margin: 0 0 24px;
}
	.post_content .r1 h2 {
    margin: 0 0 32px;
}
.post_content .r1 h4 {
    padding: 14px 0 10px 16px;
    font-size: 20px;
}
	.wp-image-189 {
    width: 50%;
}
	.r1 h4 span {
    top: 10px;
    right: -174px;
}
	.wp-image-213 {
    top: 4.6%;
}
	.lists_mddl {
    height: 227px;
}
	.post_content .r2_lists li {
    font-size: 16px;
}
.r2_lists .llist li:before, .r2_lists .rlist li:before {
    left: -14%;
    width: 20px;
    height: 20px;
    background: url(https://rise-coltd946.com/wp-content/uploads/2025/07/r1_chck.png) center center / 100% no-repeat;
}
.r2_lists .flex_row {
    padding: 20px 0 20px 32px;
    display: block;
}
.post_content .r2_lists .llist, .post_content .r2_lists .rlist {
    max-width: 160px;
    margin: 0 auto;
    display: block;
	width: 100%;
}
	.r2 {
    padding: 20px 20px 40px;
}
	.r2 .main_col {
    height: 300px;
    width: 92px;
}
.col_arw {
    width: 3%;
    height: auto;
}
.r2 .flex_row {
    gap: 20px 9px;
}
	.post_content .r2 h2 {
    margin: 0 0 40px;
}
	.post_content .main_col h3 {
    font-size: 18px;
}
	.wp-image-196 {
    width: 12px;
    vertical-align: 2px;
}
	.r2 .main_col p {
    font-size: 20px;
    margin: 2px 0 0;
}
	.r2 .main_col .fl_words {
    margin: 38px 0 0;
}
	.btm_abs {
    width: 65%;
    bottom: 8%;
}
	.wp-image-171 {
    width: 26%;
    bottom: 6%;
}
	.wp-image-173 {
    width: 42%;
    bottom: 6%;
}
	.r3 {
    padding: 20px 20px 40px;
}
	.post_content .r3 h2 {
    margin: 0 0 32px;
}
	.r3 .col_2 {
    width: 100%;
}
.post_content .r3 td, .post_content .r3 th {
    max-width: 100%;
    line-height: 1.8;
    padding: 10px 26px 8px;
    font-size: 14px;
    display: block;
    width: auto;
}
	.post_content .r3 th {
    min-height: auto;
}
	.post_content table {
    margin: 0;
}
.r4 {
    padding: 20px 20px 0;
}
.r4 .flex_row:before {
    height: 571px;
    top: -17%;
    background: linear-gradient(180deg, #666 18%, #e6e6e6 18%);
}
.post_content .r4 p {
    font-size: 16px;
    padding: 0 0 0 12px;
}
.r4 .biggrimg {
    width: 100%;
    margin: 0;
    top: 0;
    right: 14px;
}
	.r4 .col_2 {
    width: 100%;
	text-align: center;
}
	.wp-image-180 {
    width: 80%;
}
	.wp-image-179 {
    width: 80%;
}
	.post_content .r5 h2 {
    padding: 0;
    margin: 0 0 32px;
}
	.wp-image-181 {
    top: -1.22%;
    right: -6%;
    width: 40%;
}
	.wp-image-184 {
    width: 58%;
}
	.wp-image-183 {
    width: 100%;
}
.r5 .frbg:before {
    width: 374px;
    height: 88px;
}
.post_content .r5 .bcntr {
    font-size: 17px;
    line-height: 1.45;
    margin: 0 0 24px;
}
	.r5 .flex_row1 {
    gap: 20px;
}
.post_content .ovrtxt p {
    font-size: 20px;
}
	.post_content .wklist ul {
    font-size: 18px;
}
	.ttlp {
    width: 16%;
}
.wklist1, .wklist2 {
    width: 38%;
}
	.post_content .prtnrl ul {
    font-size: 16px;
}
.prtnrl {
    width: 80%;
}
	.r_uppr {
    margin: 0 0 18px;
}
	.post_content .r_bttm p {
    padding: 24px 0 0;
}
/* company */
	.cm1 {
    padding: 0 20px 40px;
}
	.cm1 .flex_row {
    padding: 40px 0 0;
}
	.post_content .cm1 h3 {
    font-size: 26px;
}
	.post_content .cm1 h2 {
    margin: 0 0 24px 4px;
}
	.cm1 .overimg {
    left: auto;
    margin: -32px 0 0;
}
	.cm1 .flex_row:before {
    height: 296px;
    width: 100vw;
    left: -6%;
}
	.cm2 {
    padding: 40px 20px;
}
	.cm2 .flex_row {
    padding: 0;
}
	.post_content .cm2 h2 {
    margin: 0 0 24px;
}
	.cm2 .flex_row:before {
    height: 882px;
    top: -5%;
}
	.wp-image-226 {
    bottom: -7%;
    width: 80%;
    right: -24%;
}
	.cm3 {
    padding: 0 20px 40px;
    margin: 56px 0 0;
}
	.post_content .cm3 h2 {
    top: -10px;
    margin: 0 auto;
    width: 85%;
}
	.cm3 .flex_row {
    gap: 20px;
}
	.wp-image-232 {
    margin: 20px 0 0;
}
	.wp-image-228 {
	display: none;
}
	.cm4 {
    padding: 40px 20px;
}
.wp-image-234 {
    right: -8%;
    top: -2%;
    width: 40%;
    opacity: 1;
}
.post_content .cm4 td, .post_content .cm4 th {
    max-width: 100%;
    line-height: 1.8;
    padding: 10px 24px 8px;
    font-size: 16px;
    display: block;
    width: auto;
}
	.post_content .cm4 th {
    min-height: auto;
}
	.post_content .cm4 td {
    text-align: center;
}
	.post_content .cm1 p {
    text-align: justify;
}
	#strengths {
    padding: 30px 0 0;
}
	#strengths h2 {
    font-size: 24px;
    margin-bottom: 14px;
}
	.flex_row-st:before {
    bottom: 250px;
}
	.flex_row-st {
    margin: 0 0 100px;
}
	.abso_item1 {
    right: -20px;
    width: 140px!important;
    top: -477px;
}
	.border1 {
    top: 95px;
}
.contact_section {
    padding: 40px 20px;
}
	.page-id-105 .contact_section p {
    font-size: 16px;
    margin: 10px 0 0;
    text-align: justify;
    justify-content: inter-ideograph;
}
	.contact_section p {
    font-size: 16px;
    margin: 10px 0 0;
    text-align: justify;
    justify-content: inter-ideograph;
}
	.sub_jp {
    text-align: center;
    display: block;
}
	.contact_section .bn_flex {
    margin: 40px 0 0;
}
	.footer_flex {
    margin: 0;
    box-sizing: border-box;
    padding: 40px 0 0;
}
	.btn_tel img {
    margin: 10px 0!important;
}
	#footer_menu .footer_menu {
    padding: 20px 0 0;
}
	.work_list {
    padding: 0;
}
	.work_unit {
    padding: 10px 0;
}
	.bn_section:after {
    width: 230px;
    height: 40%;
    top: 320px;
    background-size: cover;
}
	.bn_section:before {
    height: 35%;
    background-size: cover;
}
	.bn_section {
    padding: 60px 20px 20px;
}
	.about_section .wp-image-80 {
    top: -20px;
    width: 120px;
}
	.about_inner .ttl2 {
    margin: 0 0 24px 0;
}
	.col_4b {
    margin: 0;
}
	.reason_unit .flex_row {
    margin: 20px 0;
}
.reason_section:before {
    top: 35px;
    background-size: contain;
}
	.reason_section .col_4 {
    width: calc(50% - 10px);
}
	.reason_section {
    padding: 60px 20px;
}
	.reason_unit .flex_row {
    margin: 20px 0 60px;
}
	.service_section .col_text {
    width: 100%;
}
	.service_section .col_img {
    width: 100%;
}
	.service_section .se_unit {
    margin-bottom: 50px;
}
.service_section {
    padding: 40px 0 50px;
}
	.video-item {
    margin-bottom: 50px;
}
.movie_section {
    padding: 0 20px 60px;
}
	.recruit_section {
    padding: 0;
}
.recruit_inner {
    padding: 0 20px;
}
	.wp-image-65 {
    margin: 30px 0 0;
    box-sizing: border-box;
    padding: 0 20px;
}
	.recruit_section:before {
    height: 45%;
    top: -15px;
}
	.news_section {
    margin: 40px 0 10px;
}
	.cb_news_list .no_category_list {
    margin-top: 20px;
}
	.cb_news_list {
    padding: 0 40px;
}
	.abso_item33 {
    width: 150px;
    right: 0px;
    top: -30px;
}
	.page-id-55 .wp-image-67 {
    width: 200px;
}
	.reason_unit .flex_row {
    margin: 20px 0 30px;
}
	.reason_section {
    padding: 60px 20px 30px;
}
	.item_btn33 img {
    width: 180px!important;
    display: inline-block;
}
	.sec_btn {
    margin: 40px auto 10px;
}
	.ig_section {
    padding: 40px 0;
}
	.col_company {
    padding: 30px 20px 110px;
    height: auto;
}
	.col_company .wp-image-87 {
    width: 180px;
}
	.col_company {
    padding: 30px 20px 83px;
}
.col_contact {
    padding: 24px 20px;
    height: 460px;
}
	.col_company .ttl2 {
    font-size: 32px;
}
	.jp_sub {
    font-size: 20px;
}
	.col_contact .ttl2 {
    font-size: 30px;
}
	.col_contact .jp_sub {
    font-size: 20px;
}
	.col_contact:before {
    width: 65%;
}
.col_contact a.opacity img {
    max-width: 300px;
}
.col_contact .wp-image-73 {
    bottom: 60px;
}
	.col_contact .wp-image-72 {
    bottom: 135px;
}
	#footer_top {
    border-top: none;
}
	.footer_flex {
    padding: 0;
}
	.cb_content:last-of-type {
    padding-bottom: 24px;
}
	#header_logo .logo_image.mobile {
    width: 150px;
}
	.page-id-55 .post_content p {
    line-height: 1.8;
    margin: 0;
}
	.footer_flex {
    padding: 0 20px;
}
	.wp-image-209 {
    position: static;
    margin: 20px 0 0;
}
	#signature {
    margin: 20px 0 0;
}
	#main_col {
    margin-bottom: 0;
}
	.wpcf7 {
    margin: 20px 0!important;
}
	.post_content p {
    font-size: 16px!important;
}
.se_unit h3 {
    font-size: 24px!important;
}
.video-item {
    margin-bottom: 24px;
}
.recruit_inner {
    padding: 0;
}
	.abso_item333 {
    width: 150px;
    left: 0;
    top: -120px;
}
	.recruit_inner .ttl2 {
    box-sizing: border-box;
    padding: 0 20px;
}
	#footer_menu .footer_menu li:first-of-type a{
    color: #009de6;
    font-size: 16px!important;
}
	.work_unit {
    padding: 10px 0;
    font-size: 16px;
}
	.work_list h3 {
    font-size: 16px;
}
	.work_list p {
    text-align: center;
    font-size: 16px;
}
	 #main_contents{
		 padding: 0 0 30px 0!important;
}
	.flex_row-st:before {
    bottom: 300px;
}
.bn_flex .col_2 {
    margin: 0 0 20px 0;
}
.contact_section {
    padding: 40px 20px 20px;
}
	.page-id-129 .contact_section p {
    font-size: 16px!important;
    margin: 0 0 2em 0;
}
	.page-id-129 .contact_section h3 {
    font-size: 18px!important;
    line-height: 1.2;
    margin: 20px 0;
}
  body.header_fix_mobile #header,
  .mobile body.header_fix_mobile #header {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    z-index: 9999 !important;
    opacity: 1 !important;
    transform: none !important;
    animation: none !important;
    transition: none !important;
  }

  body.header_fix_mobile #header:after,
  .mobile body.header_fix_mobile #header:after {
    top: 0 !important;
    display: block !important;
    transition: none !important;
  }

  body.hide_global_menu.header_fix_mobile #header {
    position: fixed !important;
  }
  body.hide_global_menu.header_fix_mobile #header:after {
    display: block !important;
    top: 0 !important;
  }

  /* コンテンツが隠れないようpadding上部追加 */
  body.header_fix_mobile,
  .mobile body.header_fix_mobile {
    padding-top: 60px !important;
  }
	 #global_menu_button {
    display: block !important;
    opacity: 1 !important;
    visibility: visible !important;
    position: fixed !important;
    top: 0;
    right: 0;
    z-index: 99999 !important;
}

  /* 念のためメニュー開閉時も表示 */
  .open_menu #global_menu_button {
    display: block !important;
    opacity: 1 !important;
  }

  /* ボタン内の線を明示的に表示 */
  #global_menu_button span {
    background: #000 !important;
    display: block;
    height: 2px;
    width: 25px;
  }
		#footer_logo {
    padding: 0;
}
}

@media screen and (max-width:400px) {
/* recruit */
	.r4 .flex_row:before {
    height: 529px;
    top: -17%;
    background: linear-gradient(180deg, #666 18%, #e6e6e6 18%);
}
	.r5 .frbg:before {
    width: 336px;
    height: 88px;
}
	.bn_section {
    padding: 40px 20px 0;
}
	.about_section {
    padding: 30px 20px;
}
	.reason_section {
    padding: 20px 20px 30px;
}
	.col_contact:before {
    width: 60%;
}
	#copyright {
    margin: 30px 0;
}

}