@charset "utf-8";


/* ----------------------------------------------------------------------
 基本設定
---------------------------------------------------------------------- */
body { touch-action:manipulation; }
@media screen and (max-width:1200px) {
  html { scroll-padding:100px; }
	html:has(body.hide_global_menu) { scroll-padding-top:100px; }
}
@media screen and (max-width:800px) {
	html { scroll-padding-top:80px; }
	html:has(body.hide_global_menu) { scroll-padding-top:80px; }
	body.admin-bar { padding-top:46px; }
	body.show_footer_bar { padding-bottom:48px; }
  * { -webkit-tap-highlight-color:transparent; }
  br.mobile_break { display:block; }
}


/* レイアウト */
@media screen and (max-width:1200px) {
  #main_content { width:800px; margin:0 auto; display:block; }
  #main_col { width:auto; }
  #side_col { width:auto; margin-top:100px; display:flex; flex-wrap:wrap; justify-content:space-between; }
}
@media screen and (max-width:1000px) {
}
@media screen and (max-width:900px) {
  #main_content { width:auto; margin:0 50px; }
  body.hide_sidebar #main_content { width:auto; margin:0 50px; }
}
@media screen and (max-width:800px) {
	#main_content { padding-bottom:40px; margin:0 20px; }
  body.hide_sidebar #main_content { margin:0 20px; }
	#side_col { margin-top:40px; margin-bottom:-40px; }
}
@media screen and (max-width:600px) {
	#side_col { display:block; }
}


/* admin bar利用時 */
body.home.admin-bar { padding-top:30px; }
body.admin-bar.header_fix #header { margin-top:32px; }
body.admin-bar #drawer_menu { padding-top:32px; }
@media screen and (max-width:780px) {
  body.home.admin-bar { padding-top:45px; }
}
@media screen and (max-width:600px) {
	body.admin-bar.open_header #header { top:0px !important; }
  body.admin-bar.close_header #header { top:0px !important; }
}




/* ----------------------------------------------------------------------
 共通パーツ
---------------------------------------------------------------------- */
/* デザインボタン */
@media screen and (max-width:1200px) {
  .design_button { width:240px; height:60px; }
}
@media screen and (max-width:800px) {
  .design_button { height:50px; font-size:14px; }
}




/* ----------------------------------------------------------------------
 トップページ ヘッダースライダー
---------------------------------------------------------------------- */
#header_slider_container { height:650px; aspect-ratio:unset; }
@media screen and (max-width:1000px) {
  #header_slider_container { height:600px; }
}
@media screen and (max-width:800px) {
  #header_slider_container { height:calc(100vh - 134px); height:calc(100svh - 134px); }
	#header_slider_container:not(.has_header_news) { height:calc(100vh - 60px); height:calc(100svh - 60px); }
}


/* コンテンツ */
.header_slider_content { padding:0 100px; }
@media screen and (max-width:1200px) {
	#header_slider { touch-action: pan-y !important; }
	#header_slider .item { pointer-events:none; }
	.header_slider_content .button { width:240px; }
}
@media screen and (max-width:1000px) {
  .header_slider_content { padding:0 50px; }
  .header_slider_content:has(.logo) { padding:0; }
	#header_slider_pagination { display:none !important; }
	.header_slider_content .logo img.pc { display:none; }
	.header_slider_content .logo img.mobile { display:block; }
}
@media screen and (max-width:800px) {
	#header_slider .bg_image .mobile { display:block; }
	#header_slider .bg_image .pc { display:none; }
	.header_slider_content .desc { line-height:2; font-size:14px; }
	.header_slider_content .catch + .desc { margin:20px 0 0 0; }
	.header_slider_content .button { height:50px; line-height:50px; font-size:14px; margin:30px auto 0; }
}


/* ニュースティッカー */
@media screen and (max-width:1200px) {
  #news_ticker_inner { width:100%; height:60px; border-left:none; border-right:none; }
	#news_ticker .headline { font-size:16px; height:60px; line-height:60px; width:150px; }
	#news_ticker_carousel { width:calc(100% - 270px); height:60px; }
  #news_ticker .item { height:60px; line-height:60px; }
	#news_ticker .swiper-nav-button { height:60px; width:60px; }
	#news_ticker .news_ticker_prev { right:60px; }
}
@media screen and (max-width:1000px) {
	#news_ticker_carousel { width:calc(100% - 120px);  }
	#news_ticker .headline { font-size:16px; width:120px; }
	#news_ticker .swiper-nav-button { display:none; }
}	
@media screen and (max-width:800px) {
	#news_ticker_inner { display:block; height:75px; }
	#news_ticker .headline { display:none; }
	#news_ticker_carousel { width:100%; height:75px; }
	#news_ticker .item { flex-direction:column; justify-content:center; height:75px; line-height:1.6; padding:0 20px; }
	#news_ticker .date { margin-bottom:5px; }
	#news_ticker .title { width:100%; font-size:14px; }
}


/* サイドボタン */
@media screen and (max-width:1250px) {
  .side_menu_button { display:none; }
  #drawer_menu .side_menu_button { margin-bottom:-1px; opacity:1; position:relative; right:0; top:0; transform: translateY(0%); display:flex; flex-direction:row; align-items:start; }
  #drawer_menu .side_menu_button .item { display:block; transform:none; flex: 1 1 0%; height:60px; line-height:60px;animation:none; right:0; border-bottom:1px solid rgba(255,255,255,0.2); background:none !important; color:#fff !important; }
  html.open_menu #drawer_menu .side_menu_button .item { pointer-events:auto; }
  #drawer_menu .side_menu_button .title { border:none; writing-mode:horizontal-tb; width:auto; padding:0 30px; display:block; text-align:center; font-size:14px; font-weight:500; }
  #drawer_menu .side_menu_button .content { display:none; }
}



/* ----------------------------------------------------------------------
 コンテンツビルダー
---------------------------------------------------------------------- */
.cb_desc { padding:0 100px; }
@media screen and (max-width:1200px) {
  .cb_catch { font-size:35px; }
}
@media screen and (max-width:1000px) {
	.cb_color_bg + .cb_white_bg:after { height:80px; }
	.cb_color_bg:after { top:80px; }
	.cb_headline { font-size:calc((var(--headline_font_size) + var(--headline_font_size_sp)) / 2); width:160px; height:160px; }
  .cb_catch { font-size:30px; }
  .cb_desc { padding:0 50px; }
}
@media screen and (max-width:800px) {
	#content_builder > section:last-child { padding-bottom:40px; }
  .cb_white_bg { padding:40px 0; }
	.cb_color_bg + .cb_color_bg { padding-top:40px; }
	.cb_color_bg + .cb_white_bg:after { height:60px; }
	.cb_color_bg:after { top:60px; }
	.design_content2 + .cb_white_bg:not(.design_content1) { margin-top:0px; }
	.cb_style_list + .cb_white_bg:not(.design_content1) { margin-top:0; }
	.cb_style_list + .cb_white_bg { margin-top:0px; }
	.cb_headline { font-size:var(--headline_font_size_sp); width:120px; height:120px; padding:0 20px; }
  .cb_catch { font-size:20px; margin-bottom:20px; }
  .cb_desc { padding:0 20px; line-height:2; }
  .cb_desc .mobile { display:block; }
  .cb_desc .pc { display:none; }
	.cb_headline + .cb_desc { margin-top:35px; font-size:16px; }
}


/* デザインコンテンツ1 */
.design_content1 .content { padding-left:80px; padding-right:0; }
.design_content1.layout_type2 .content { padding-left:0; padding-right:80px; }
@media screen and (max-width:1200px) {
	.design_content1 .content_wrap { display:block; }
	.design_content1 .image { margin:0 auto; width:500px; }
	.design_content1 .content { width:100%; text-align:center; padding:45px 100px 0 !important; }
}
@media screen and (max-width:1000px) {
	.design_content1 .content_wrap { padding:0 50px; }
	.design_content1 .cb_headline { margin-bottom:-80px; }
	.design_content1 .image { width:450px; }
	.design_content1 .catch { font-size:24px; }
	.design_content1 .content { padding:45px 0 0 !important; }
}
@media screen and (max-width:800px) {
	.cb_color_bg + .design_content1:not(.no_headline) { padding-top:40px; }
	.cb_free_space + .design_content1 { margin-top:-5px; }
	.design_content1 .content_wrap { padding:0 20px; }
	.design_content1 .cb_headline { margin-bottom:-60px; }
	.design_content1 .image { width:100%; max-width:350px; }
	.design_content1 .catch { font-size:20px; }
	.design_content1 .desc { text-align:left; line-height:2; }
	.design_content1 .desc .mobile { display:block; }
  .design_content1 .desc .pc { display:none; }
	.design_content1 .content { padding:35px 0 0 !important; }
	.design_content1 .catch + .desc { margin-top:18px; }
  .design_content1 .design_button { margin-top:32px; }
}
@media screen and (max-width:500px) {
	.design_content1 .catch { font-size:20px; text-align:left; }
}


/* デザインコンテンツ2 */
@media screen and (max-width:1200px) {
  .design_content2 .content { padding:90px 50px; }
}
@media screen and (max-width:1000px) {
	.design_content2 .catch { font-size:24px; }
}
@media screen and (max-width:800px) {
  .design_content2 .content_wrap { display:block; }
	.design_content2 .image { width:100%; }
	.design_content2 .content { width:100%; padding:35px 40px 40px; }
	.design_content2.no_bg_color .content { padding-bottom:0; }
	.design_content2.no_bg_color + .design_content2 { margin-top:40px; }
	.design_content2.no_bg_color + .cb_color_bg { margin-top:40px; }
	.design_content2.no_bg_color + .cb_color_bg:after { top:60px; }
	.design_content2 .catch { font-size:20px; }
	.design_content2 .desc { line-height:2; }
	.design_content2 .desc .mobile { display:block; }
  .design_content2 .desc .pc { display:none; }
	.design_content2 .catch + .desc { margin-top:18px; }
  .design_content2 .design_button { margin:35px auto 0; }
	.design_content2 + .cb_color_bg { padding-top:0px; }
}
@media screen and (max-width:500px) {
	.design_content2 .catch { font-size:20px; text-align:left; }
}



/* スタイル一覧 */
@media screen and (max-width:1130px) {
  .style_list_carousel_wrap { width:auto; margin:0 100px; }
  .style_list_carousel { overflow:visible; }
	.style_list_carousel_wrap .swiper-nav-button:before { display:none; }
	.style_list_carousel_wrap .style_list { width:auto; margin:0; }
	.style_list_carousel_wrap .style_list .item { margin:0; width:290px !important; }
	.style_list_carousel_wrap .style_list .item:last-of-type { margin-right:0 !important; }
	.style_list.no_carousel { width:auto; margin:0 100px; }
	.style_list .item { overflow:visible; }
	.style_list .content { position:relative; transform: translate3d(0,0,0); }
	.style_list .title { border-top:none; margin-top:20px; color:#000; padding:0; }
	.cb_style_list .style_list .title { color:#fff; }
	.style_list .image_wrap:before { display:none; }
}
@media screen and (max-width:1000px) {
  .style_list_carousel_wrap { margin:0 50px; }
	.style_list.no_carousel { margin:0 50px; }
	.cb_style_list:after { top:80px; }
	.cb_color_bg + .cb_style_list:before { height:80px; }
}
@media screen and (max-width:800px) {
	.cb_style_list { padding-bottom:40px; }
	.cb_style_list:first-child { padding-top:40px; }
	.cb_color_bg + .cb_style_list { margin-top:0px; }
	.cb_color_bg + .cb_style_list:before { height:60px; }
	.design_content2 + .cb_style_list { padding-top:40px; }
	.design_content2.no_bg_color + .cb_style_list { margin-top:40px; }
	.cb_style_list.no_headline { padding-top:35px; }
  .style_list_carousel_wrap { margin:0 20px; }
	.style_list.no_carousel { margin:0 20px; }
	.cb_desc + .style_list_carousel_wrap { margin-top:35px; }
	.cb_desc + .style_list.no_carousel { margin-top:35px; }
  .cb_headline + .style_list_carousel_wrap { margin-top:40px; }
	.cb_headline + .style_list.no_carousel { margin-top:40px; }
	.style_list_carousel_wrap .style_list .item { width:220px !important; }
	.style_list.no_carousel { margin:0 20px -20px; }
	.style_list.no_carousel .item { width:calc(100% / 3 - 15px); margin:0 20px 20px 0; }
  .style_list.no_carousel .item:nth-child(3n) { margin-right:0; }
	.cb_style_list .link_button { margin-top:40px; }
	.cb_style_list:after { top:60px; }
}
@media screen and (max-width:600px) {
	.style_list.no_carousel .item { width:calc(50% - 10px); }
  .style_list.no_carousel .item:nth-child(3n) { margin-right:20px; }
  .style_list.no_carousel .item:nth-child(2n) { margin-right:0px; }
}
@media screen and (max-width:500px) {
	.style_list.one_item { justify-content:start; }
}


/* スタッフ一覧 */
@media screen and (max-width:1130px) {
  .cb_author_carousel_wrap { width:auto; margin:0 85px; }
  .cb_author_carousel { overflow:visible; }
  .cb_author_carousel_wrap .cb_author_carousel { padding:0; }
	.cb_author_carousel_wrap .swiper-nav-button:before { display:none; }
	.cb_author_carousel_wrap .design_author_list { width:auto; margin:0; }
	.cb_author_carousel_wrap .design_author_list .item { margin:0; width:440px !important; }
	.cb_author_carousel_wrap .design_author_list .item:nth-child(2n) { margin-right:0px; }
	.cb_author_carousel_wrap .design_author_list .item:last-of-type { margin-right:0 !important; }
	.design_author_list .job { transform: translate3d(0,0,0); }
}
@media screen and (max-width:1000px) {
  .cb_author_carousel_wrap { margin:0 35px; }
}
@media screen and (max-width:800px) {
	.cb_staff_list { padding-bottom:40px; }
	.cb_staff_list.no_headline { padding-top:35px; }
	.cb_staff_list.no_headline .cb_author_carousel_wrap:first-child { margin-top:10px; }
	.cb_staff_list .cb_headline { margin-bottom:35px; }
  .cb_author_carousel_wrap { margin:0 10px; }
	.cb_desc + .cb_author_carousel_wrap { margin-top:30px; }
  .cb_headline + .cb_author_carousel_wrap { margin-top:40px; }
	.cb_author_carousel_wrap .design_author_list .item { margin:0; width:320px !important; }
	.design_author_list .image_wrap { margin-bottom:25px; }
	.design_author_list .item { padding:30px 30px 25px; }
  .design_author_list .name { font-size:14px; }
  .design_author_list .job { font-size:14px; padding:15px 20px; }
	.cb_staff_list .link_button { margin-top:25px; }
	#no_author_post { margin-top:40px; }
}


/* ブログ一覧 */
@media screen and (max-width:1130px) {
  .cb_blog_carousel_wrap { width:auto; margin:0 100px; }
  .cb_blog_carousel { overflow:visible; }
	.cb_blog_carousel_wrap .swiper-nav-button:before { display:none; }
	.cb_blog_carousel_wrap .blog_list { width:auto; margin:0; }
  .cb_blog_carousel_wrap .blog_list .item { margin:0; width:440px !important; }
	.cb_blog_carousel_wrap .blog_list .item:last-of-type { margin-right:0 !important; }
}
@media screen and (max-width:1000px) {
  .cb_blog_carousel_wrap { margin:0 50px; }
  .cb_blog_carousel_wrap .blog_list .item { width:350px !important; }
	.blog_list .date_area { margin:0 0 -45px 30px; }
  .blog_list .title { font-size:18px; }
}
@media screen and (max-width:800px) {
	.cb_blog_list { padding-bottom:40px; }
	.cb_blog_list.no_headline { padding-top:30px; }
	.cb_blog_list .cb_desc:first-child { margin-top:5px; }
  .cb_blog_carousel_wrap { margin:0 20px; }
	.cb_desc + .cb_blog_carousel_wrap { margin-top:35px; }
  .cb_headline + .cb_blog_carousel_wrap { margin-top:40px; }
  .cb_blog_carousel_wrap .blog_list .item { width:290px !important; }
	.cb_blog_list .link_button { margin-top:30px; }
	.blog_list .image_wrap { margin-bottom:20px; }
  .blog_list .title { font-size:16px; }
	.blog_list .category { margin-bottom:15px; }
}


/* お知らせ一覧 */
@media screen and (max-width:1130px) {
  .cb_news .news_list { width:auto; margin:0 100px; }
}
@media screen and (max-width:1000px) {
  .cb_news .news_list { margin:0 50px; }
}
@media screen and (max-width:800px) {
	.cb_news { padding-bottom:40px; }
	.cb_news .cb_headline { margin:0 auto 35px; }
  .cb_news .news_list { margin:0 20px; }
  .cb_desc + .news_list { margin-top:30px; }
  .cb_headline + .news_list { margin-top:40px; }
  .cb_news .link_button { margin-top:40px; }
}


/* フリースペース */
.cb_free_space { padding-left:100px; padding-right:100px; }
.cb_free_space .post_content { width:auto; }
@media screen and (max-width:1000px) {
  .cb_free_space { padding-left:50px; padding-right:50px; }
}
@media screen and (max-width:800px) {
  .cb_free_space { padding-left:20px; padding-right:20px; }
	.cb_free_space .cb_headline { margin:0 auto 35px; }
}


/* 固定ページを表示する場合 */
#front_page_contents { margin:0 auto; }
@media screen and (max-width:1200px) {
  #front_page_contents { padding:100px 0; margin:0 100px; }
}
@media screen and (max-width:1000px) {
  #front_page_contents { margin:0 50px; }
}
@media screen and (max-width:800px) {
  #front_page_contents { padding:35px 0; margin:0 20px; }
}




/* ----------------------------------------------------------------------
 ページヘッダー
---------------------------------------------------------------------- */
#archive_headline .desc { padding:0 100px; }
body.page #archive_headline .desc { padding:0; }
@media screen and (max-width:1200px) {
	#page_header.no_image { border-top:1px solid #ddd; height:60px; }
	#page_header:not(.blog_page_header) + #archive_headline { border-top:none; margin-top:-90px; padding-top:0; }
	body.page #archive_headline.type2 { margin-top:0px; }
	body.page.no_header_image #archive_headline { border-top:none; }
	body.archive .no_image #bread_crumb, body.page.no_header_image #bread_crumb, body.search #container { border-top:1px solid #ddd; }
}
@media screen and (max-width:1150px) {
  body.page #archive_headline .desc { margin-left:100px; margin-right:100px; width:auto; }
}
@media screen and (max-width:1000px) {
	#page_header { height:300px; }
	#archive_headline .headline { font-size:calc((var(--headline_font_size) + var(--headline_font_size_sp)) / 2); width:160px; height:160px; }
	#page_header:not(.blog_page_header) + #archive_headline { margin-top:-80px; }
	#archive_headline .desc { width:auto; padding:0 50px; }
  body.page #archive_headline .desc { margin-left:50px; margin-right:50px; }
}
@media screen and (max-width:800px) {
	#page_header { height:200px; }
	#page_header.type2 { height:60px; margin-bottom:0; }
	body.single #page_header.type2 { margin-bottom:30px; }
  #archive_headline { padding-top:40px; }
	#page_header:not(.blog_page_header) + #archive_headline { margin-top:-60px; }
	#page_header.type2 + #archive_headline.type2 { margin-top:30px; }
	body.page.no_header_image #archive_headline { margin-top:0; }
	body.page #archive_headline.type2 { padding-top:35px; padding-bottom:5px; }	
	#archive_headline .headline { font-size:var(--headline_font_size_sp); width:120px; height:120px; line-height:1.2; padding:0 15px; }
  #archive_headline.type2 { margin:0; }
	#archive_headline.type2 .headline { font-size:20px; }
  #archive_headline .desc { padding:0 20px; line-height:2; margin:40px auto -5px; }
  #archive_headline .desc.pc { display:none; }
	#archive_headline .desc.mobile { display:block; }
  #archive_headline.type2 .desc { margin:25px auto -5px; }
  body.page #archive_headline .desc { margin-left:20px; margin-right:20px; }
}




/* ----------------------------------------------------------------------
 固定ページ
---------------------------------------------------------------------- */
@media screen and (max-width:1256px) {
  body.large_page_width #page_contents .post_content { width:auto; margin:0 100px; }
}
@media screen and (max-width:1130px) {
	#page_contents .post_content { width:auto; margin:0 100px !important; }
}
@media screen and (max-width:1000px) {
	#page_contents .post_content { margin:0 50px !important; }
}
@media screen and (max-width:800px) {
	#page_contents { padding:40px 0; }
	body.page-template-page-tcd-lp #page_contents { padding-top:40px; }
	#page_contents .post_content { margin:0 20px !important; }
}



/* 共通パーツ */
@media screen and (max-width:1100px) {
	.short { padding:0; }
}
@media screen and (max-width:800px) {
	.short h1:first-child, .short h2:first-child, .short h3:first-child, .short h4:first-child, .short h5:first-child, .short h6:first-child { margin-top:50px !important; margin-bottom:20px !important; }
	.short p:last-child { margin-bottom:30px; }
	p:has(img) + .short h1:first-child, p:has(img) + .short h2:first-child, p:has(img) + .short h3:first-child, p:has(img) + .short h4:first-child, p:has(img) + .short h5:first-child, p:has(img) + .short h5:first-child { margin-top:35px !important; }
	body.page .post_content p.spacer { margin:-35px 0 20px 0; }
  body.page .post_content .short + p.spacer { margin-top:-35px !important; }
	body.page .post_content .page_headline { font-size:16px !important; padding:18px 20px 16px !important; }
	body.page .post_content .page_headline + p:not(.image_wrap) { margin-top:35px; }
  body.page .post_content p:has(img) + .page_headline { margin-top:40px !important; }
  body.page .post_content p:has(img) + p.spacer { margin-top:-35px !important; }
	body.page .post_content p:has(img) + .q_button_wrap { margin-top:40px; }
	body.page .post_content hr + .q_button_wrap { margin-top:40px; }
}


/* ABOUT */
@media screen and (max-width:800px) {
	.page_headline_number { margin:40px 0 30px 0 !important; }
	p:has(img) + .page_headline_number { margin-top:35px !important; }
  .page_headline_number .num { font-size:50px; }
  .page_headline_number .title { font-size:18px; }
}


/* 料金一覧 */
@media screen and (max-width:800px) {
	.price_list { margin-bottom:35px; }
  .price_list.type1 .item { margin:0 0 20px 0; padding:30px 30px 25px; }
	.price_list.type1 .title_area { display:block; margin-bottom:20px; }
	.price_list.type1 .title { font-size:16px !important; width:auto; }
	.price_list.type1 .price { font-size:16px !important; text-align:left; margin:7px 0 0 0; width:auto; }
	.price_list.type2 .item { padding:20px 0 10px; }
	.price_list.type2 .title_area { margin-bottom:7px; }
  .price_list.type2 .title { font-size:16px !important; }
  .price_list.type2 .price { font-size:16px !important; }
	p:has(img) + .price_list { margin-top:-15px; }
}


/* 声一覧 */
@media screen and (max-width:800px) {
	.voice_list { margin-bottom:35px; }
  .voice_list .item { margin:0 0 20px 0; padding:30px 30px 25px; }
  .voice_list .name { margin:0 0 10px 0 !important; }
  .voice_list .catch { font-size:16px !important; line-height:1.4 !important; margin:0 0 10px !important; }
}
	
	
/* ACCESS */
@media screen and (max-width:800px) {
  .post_content .colored_table { margin-bottom:40px !important; }
	.post_content .colored_table th { width:100px; padding:0 10px; }
  .post_content .colored_table td { width:calc(100% - 100px); padding-left:20px; padding-right:20px; }
}

/* LP */
@media screen and (max-width:1200px) {
  #lp_page_header { height:450px; }
  #lp_page_header .logo img.pc { display:none; }
	#lp_page_header .logo img.mobile { display:block; }
	#lp_page_header.no_image { border-top:1px solid #ddd; }
}
@media screen and (max-width:1000px) {
	#lp_page_title { padding:0 50px; }
}
@media screen and (max-width:800px) {
  #lp_page_header { height:400px; }
	#lp_page_title { padding:0 20px; }
	#lp_page_title .sub_title { margin-top:10px; font-size:14px; }
	#lp_page_header.no_image { padding-top:35px; }
	.lp_content { padding:40px 0; }
  .lp_content > h3:first-child { font-size:20px !important; }
	.lp_content > h3:first-child + p { margin-bottom:35px !important; margin-top:20px !important; }
  .lp_content > p:first-child { margin-bottom:35px !important; }
  body.page-template-page-tcd-lp .post_content h1 { margin-bottom:20px; margin-top:35px; font-size:20px; }
  body.page-template-page-tcd-lp .post_content h2 { margin-bottom:20px; margin-top:35px; font-size:20px; }
  body.page-template-page-tcd-lp .post_content h3 { margin-bottom:20px; margin-top:35px; font-size:20px; }
	body.page .post_content p.spacer + h1 { margin-top:20px; }
	body.page .post_content p.spacer + h2 { margin-top:20px; }
	body.page .post_content p.spacer + h3 { margin-top:20px; }
}
@media screen and (max-width:600px) {
  #lp_page_header { height:300px; }
}

@media screen and (max-width:1130px) {
  #archive_blog { width:auto; margin:0 0 150px; overflow:hidden; }
  #blog_category_sort_wrap { width:auto; margin:100px 100px 0; }
  #blog_category_sort { overflow:visible; }
  #blog_category_sort:after, #blog_category_sort:before { display:none !important; }
  #blog_category_sort_wrap .swiper-nav-button { display:none; }
  #blog_category_sort .item { width:233px ; }
  #blog_category_sort.small_size .item { flex: 0 0 auto; width:auto; }
  #blog_category_sort .item a { border-right:1px solid #ddd; }
  #blog_category_sort .item:first-of-type a { border-left:1px solid #ddd; }
  #blog_category_sort .item a:after { display:none; }
  body:not(.home):not(.single-post) .style_list { width:auto; margin:0 100px -30px; }
}
@media screen and (max-width:1000px) {
  #blog_category_sort_wrap { width:auto; margin:100px 50px 0; }
}
@media screen and (max-width:800px) {
  #blog_category_sort_wrap { width:auto; margin:40px 20px 0; }
  #archive_headline + #archive_style #blog_category_sort_wrap { margin-top:35px; }
	#blog_category_sort .mobile_item_width { width: calc( 100% / 2) !important;}
  #blog_category_sort .item { width:200px; }
  #blog_category_sort .item a { height:50px; line-height:50px; font-size:14px; }
}
@media screen and (max-width:600px) {
	#blog_category_sort .mobile_item_width { width: calc( 100% / 2) !important;}
  #blog_category_sort .item { width:160px; }
}




/* ----------------------------------------------------------------------
 ブログアーカイブページ
---------------------------------------------------------------------- */
@media screen and (max-width:1130px) {
  body:not(.home) .blog_list { width:auto; margin:0 100px -96px; }
}
@media screen and (max-width:1000px) {
  body:not(.home) .blog_list { margin:0 50px -47px; }
	body:not(.home) .blog_list .item { width:calc(50% - 15px); margin:0 30px 40px 0; }
	body:not(.home) .blog_list .item:nth-child(2n) { margin-right:0; }
}
@media screen and (max-width:800px) {
  #archive_blog { padding:40px 0; }
  body:not(.home) .blog_list { margin:0 20px -47px; }
	.page_navi { margin-top:40px; }
}
@media screen and (max-width:600px) {
  body:not(.home) .blog_list { display:block; margin:0 20px -3px; }
	body:not(.home) .blog_list .item { width:auto; margin:0 0 30px 0; }
}






/* ----------------------------------------------------------------------
 スタイルアーカイブページ
---------------------------------------------------------------------- */
@media screen and (max-width:1130px) {
  #archive_style { width:auto; margin:0 0 150px; overflow:hidden; }
	#style_category_sort_wrap { width:auto; margin:10px 100px 100px; }
	#style_category_sort { overflow:visible; }
	#style_category_sort:after, #style_category_sort:before { display:none !important; }
	#style_category_sort_wrap .swiper-nav-button { display:none; }
	#style_category_sort .item { width:233px !important; }
	#style_category_sort.small_size .item { flex: 0 0 auto; width:auto; }
	#style_category_sort .item a { border-right:1px solid #ddd; }
	#style_category_sort .item:first-of-type a { border-left:1px solid #ddd; }
	#style_category_sort .item a:after { display:none; }
	body:not(.home):not(.single-post) .style_list { width:auto; margin:0 100px -30px; }
}
@media screen and (max-width:1000px) {
  #archive_style { margin:0 0 150px; }
	#style_category_sort_wrap { width:auto; margin:10px 50px 100px; }
	body:not(.home):not(.single-post) .style_list { width:auto; margin:0 50px -30px; }
}
@media screen and (max-width:800px) {
  #archive_style { margin:0 0 40px; }
	#style_category_sort_wrap { width:auto; margin:40px 20px 40px; }
  #archive_headline + #archive_style #style_category_sort_wrap { margin-top:35px; }
  #style_list_wrap{ margin-top:65px; }
	#style_category_sort .item { width:200px !important; }
	#style_category_sort .item a { height:50px; line-height:50px; font-size:14px; }
	body:not(.home):not(.single-post) .style_list { width:auto; margin:0 20px -20px; }
	body:not(.home):not(.single-post) .style_list .item { width:calc(100% / 3 - 15px); margin:0 20px 20px 0; }
  body:not(.home):not(.single-post) .style_list .item:nth-child(3n) { margin-right:0; }
	.ajax_post_list_wrap .entry-more { padding-top:35px; }
}
@media screen and (max-width:600px) {
	#style_category_sort .item { width:160px !important; }
	body:not(.home):not(.single-post) .style_list .item { width:calc(50% - 10px); }
  body:not(.home):not(.single-post) .style_list .item:nth-child(3n) { margin-right:20px; }
  body:not(.home):not(.single-post) .style_list .item:nth-child(2n) { margin-right:0px; }
}




/* ----------------------------------------------------------------------
 スタイル詳細ページ
---------------------------------------------------------------------- */
@media screen and (max-width:1130px) {
  #style_header { width:auto; margin:0 100px 90px; }
  #style_image_carousel_container { margin:0 100px -150px; width:auto; height:auto; aspect-ratio:930 / 620; }
	#style_content .post_content { width:auto; padding:0 100px; }
	#style_staff_comment { width:auto; margin:0 100px; }
}
@media screen and (max-width:1000px) {
  #style_header { margin:0 50px 90px; }
  #style_image_carousel_container { margin:0 50px -150px; }
	#style_image_carousel_container .swiper-nav-button { display:none; }
	#style_content .post_content { padding:0 50px; }
	#style_staff_comment { margin:0 50px; padding:40px 0; }
	#style_staff_comment > .headline { height:60px; line-height:60px; font-size:18px; margin-bottom:-1px; position:relative; }
	#style_staff_comment .content { display:block; padding:30px; border:1px solid #ddd; }
	#style_staff_comment .animate_background { display:block; margin:0 auto; max-width:365px; width:100%; height:auto; aspect-ratio:360 /420; }
	#style_staff_comment .info { width:auto; border:none; display:block; padding:0; }
	#style_staff_comment .name { text-align:center; margin:30px -30px 0; padding:0 30px 0; font-size:16px; }
	#style_staff_comment .name { 
	padding-bottom: 0;
	}
	#style_staff_comment .info > .headline { font-size:16px; }
	#style_staff_comment .desc { line-height:2; margin-bottom:-10px; }
	#style_staff_comment .info > .name + .headline ,#style_staff_comment .name+ .desc{
		border-top:1px solid #ddd;
		margin-top: 30px;
		padding-top: 28px;
	}
	#style_staff_comment .info > .headline +  .desc {
		margin-top: 10px;
	}
}
@media screen and (max-width:800px) {
  #style_header { margin:30px 20px 25px; }
	#style_header .title { font-size:var(--single_title_font_size_sp); }
	#style_header .category { font-size:14px; margin:0 0 15px 0; display:inline-block; }
  #style_image_carousel_container { margin:0; }
	#style_slider_pagination span { width:10px; height:10px; margin:0 5px; }
	#style_featured_image img { margin:0 auto 40px; max-width:100%; height:auto; }
	#style_content { padding:35px 0; }
	#style_content .post_content { padding:0 20px; font-size:16px; }
	#style_staff_comment { margin:0 20px; }
	#style_nav { margin-bottom:40px; }
	#style_content + #style_nav { padding-top:40px; }
	#related_style { padding:40px 0; }
	#related_style .headline { font-size:20px; margin-bottom:35px; }
	#style_nav a { display:block; padding:10px 25px; font-size:14px; }
}
@media screen and (max-width:600px) {
	#style_image_carousel_container { aspect-ratio:465 / 620; }
	#single_style .carousel_width{ aspect-ratio:930 / 620 !important; }
	#style_slider_pagination { display:block; }
	#style_featured_image img { margin:0; width:100%; height:auto; }
}




/* ----------------------------------------------------------------------
 スタッフ一覧ページ
---------------------------------------------------------------------- */
@media screen and (max-width:1130px) {
  #author_list { width:auto; margin:100px 100px -46px; }
}
@media screen and (max-width:1000px) {
  #author_list { margin:100px 50px -30px; }
	#author_list .item { width:calc(50% - 15px); margin:0 30px 30px 0; padding:30px 30px 25px; }
  #author_list .item:nth-child(2n) { margin-right:0; }
}
@media screen and (max-width:800px) {
	body.page.show_sidebar #archive_headline { margin-bottom:35px; }
  #author_list { margin:40px 20px -30px; }
}
@media screen and (max-width:600px) {
	#author_list { display:block; margin:40px 20px 0; }
	#author_list .item { width:auto; margin:0 0 20px 0; }
	#author_list .item:last-of-type { margin-bottom:0; }
  #author_list .item:nth-child(2n) { margin-right:0; }
}




/* ----------------------------------------------------------------------
 スタッフ詳細ページ
---------------------------------------------------------------------- */
@media screen and (max-width:1130px) {
  #author_data { width:auto; margin:0 100px; }
	#archive_blog .headline { width:auto; margin:0 100px 100px; }
}
@media screen and (max-width:1000px) {
	#author_header_type1 .author_info .swiper-nav-button { display:none; }
  #author_data { margin:0 50px; }
	#archive_blog .headline { margin:0 50px 100px; }
}
@media screen and (max-width:800px) {
	#author_header_type1 { padding:0; }
	#author_image_carousel_container { margin-bottom:27px; aspect-ratio:490 /570; width:100%; height:auto; max-width:490px; }
	#author_image_carousel_container .job { padding:13px 20px 12px; }
	#author_header_type1 .author_info { display:block; padding:20px 20px 30px; margin:0 auto; box-shadow:none; box-shadow:0 0 15px 0 rgba(0,0,0,0.1); }
	#author_header_type1 .name { font-size:18px; }
	#author_header_type1 .sns_button_list { margin-top:20px; }
  #author_header_type1 .desc { width:auto; margin:35px 20px 0; line-height:2; padding-bottom:30px; }
	#author_header_type1 .staff_page_link { margin:0 auto; padding-bottom:40px;}
	#author_header_type2 { padding:40px 0 0; }
	#author_header_type2 .author_image { width:140px; height:140px; margin:0 auto 20px; }
  #author_header_type2 .name { font-size:18px; }
  #author_header_type2 .sns_button_list { justify-content:center; margin-top:20px; }
	#author_header_type2 .desc { width:auto; margin:35px 20px 0; line-height:2; }
	#author_header_type2 .staff_page_link { margin:35px auto 10px; }
  #author_data { margin:0 20px; padding:40px 0; }
	#author_data .headline { font-size:18px; height:60px; line-height:60px; }
	#author_data .content { border:1px solid #ddd; margin:0 0 -1px 0; padding:25px 30px; }
	#author_data .sub_headline { font-size:18px; margin:5px 0 25px 0; }
	#author_data .desc { line-height:2; margin-bottom:-5px;}
  #author_data .link { margin-top:40px; }
	#author_style { padding:40px 0 35px; }
	#author_header_type2 + #author_style { margin-top:40px; }
	#author_style .headline { font-size:20px; margin-bottom:35px; }
	#archive_blog .headline { margin:0 20px 40px; height:60px; line-height:60px; font-size:20px; }
	#author_header_type1 .swiper-pagination { display:block; }
}




/* ----------------------------------------------------------------------
 お知らせアーカイブページ
---------------------------------------------------------------------- */
@media screen and (max-width:1130px) {
  #archive_news { width:auto; margin:0 100px; }
	.news_list .animate_background { width:calc(50% - 50px); height:auto; aspect-ratio:400 / 250; }
	.news_list .content { width:calc(50% + 50px); }
}
@media screen and (max-width:1000px) {
  #archive_news { margin:0 50px; }
}
@media screen and (max-width:800px) {
  #archive_news { margin:0 20px; padding:40px 0; }
	.news_list .item { padding:30px 0; }
	.news_list .content { padding-left:30px; }
	.news_list .title { font-size:16px; }
	body.hide_news_image .news_list .date { margin-top:10px; }
}
@media screen and (max-width:600px) {
	.news_list .item { display:block; }
	.news_list .animate_background { width:100%; margin:0 0 15px 0; }
	.news_list .content { width:auto; padding-left:0; }
	.news_list .category { margin:0 0 15px; }
	.news_list .date_area { margin-top:5px; }
}
@media screen and (max-width:420px) {
	.news_list .animate_background { aspect-ratio:580 / 350; }
}



/* ----------------------------------------------------------------------
 お知らせ詳細ページ
---------------------------------------------------------------------- */
@media screen and (max-width:1130px) {
  #recent_news_list .post_list { width:auto !important; margin:0 100px; }
}
@media screen and (max-width:1000px) {
  #recent_news_list .post_list { margin:0 50px; }
}
@media screen and (max-width:800px) {
	body.hide_sidebar #single_news_header { margin-top:0px; }
	#single_news_header .title_area { margin:0 0 30px 0; }
	#single_news_header .title_area:has(.date) { margin-bottom:30px; }
  #single_news_header .title { margin-top:35px; font-size:var(--single_title_font_size_sp); text-align:left; }
	#single_news_header .category + .title { margin-top:0; }
	#single_news_header .category { margin-bottom:25px; }
	#single_news_header .meta { margin-top:5px; justify-content:flex-start; }
  #single_news_header { margin-bottom:40px; }
	#single_news_header + .post_content { margin-top:-7px; }
  #single_news_header .image { width:calc(100% + 40px); margin:0 -20px; }
	#recent_news_list { padding:40px 0; }
	#recent_news_list .headline { font-size:18px; margin:0 0 37px 0; }
  #recent_news_list .post_list { margin:0 20px; }
	#recent_news_list .post_list + #single_free_space { margin-top:40px; }
	#recent_news_list .post_list .item { display:block; height:auto; line-height:1.4; padding:21px 25px; }
	#recent_news_list .date { margin:0 0 5px 0; }
	#recent_news_list .title { font-size:14px; width:100%; line-height:1.6; max-height:3.2em; text-overflow:clip; white-space:normal; overflow:hidden; visibility:visible; }
	#recent_news_list .title span { display:-webkit-inline-box; -webkit-box-orient:vertical; -webkit-line-clamp:2; }
}




/* ----------------------------------------------------------------------
 ページ上部　ヘッダー
---------------------------------------------------------------------- */
@media screen and (max-width:1200px) {
  #header { height:60px; }
	body.start_scroll #header { box-shadow:0 0 10px 1px rgba(0,0,0,0.2); }
	#header_top { height:100%; }
	#header_bottom { display:none; }
}

@media screen and (max-width: 1200px) {
	body.start_scroll .shadow {
		box-shadow: 0px 4px 5px rgba(0, 0, 0, 0.1);
	}
}


/* ロゴ */
@media screen and (max-width:1200px) {
  #header_logo img { /*! max-height:30px; */ /*! height:auto; */ }
  #header_logo img.pc { display:none; }
  #header_logo img.mobile { display:block; }
}

/* サイトのキャッチフレーズ */
@media screen and (max-width:1200px) {
	#site_catch { display:none; }
  #site_catch_mobile { display:block; position:absolute; top:0; left:0; color:#fff; border-bottom:1px solid rgba(255,255,255,0.2); width:100%; height:60px; line-height:1.4; display:flex; flex-wrap:wrap; align-items:center; justify-content:center; text-align:center; z-index:100; }
	#site_catch_mobile a { color:#fff; }
}
@media screen and (max-width:800px) {
  #site_catch_mobile { font-size:14px; height:auto; line-height:1.6; padding:13px 20px; }
}


/* SNS */
@media screen and (max-width:1200px) {
  #header_sns { display:none; }
}

/* 検索窓 */
@media screen and (max-width:1200px) {
	.l-header__icon { right: 40px;}
  }

@media screen and (max-width:600px) {
	.l-header__icon { right: 15px;}
}


/* グローバルメニュー */
#global_menu > ul > li { font-size:var(--global_menu_font_size_sp); }
#global_menu > ul > li > a { padding:0 20px; }
@media screen and (max-width:1200px) {
  #global_menu { display:none; }
}


/* ボタン */
#header_button a { min-width:inherit; font-size:var(--global_menu_font_size_sp); }
@media screen and (max-width:1200px) {
  #header_button { display:none; }
}


/* メッセージ */
#header_message { margin-bottom:0; }
@media screen and (max-width:1250px) {
  #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; }
}


/* パンくずリンク */
@media screen and (max-width:1200px) {
}
@media screen and (max-width:1130px) {
  #bread_crumb { width:auto !important; padding:0 100px; }
	body.archive #bread_crumb ul, body.page #bread_crumb ul { width:100%; }
}
@media screen and (max-width:1000px) {
  #bread_crumb { padding:0 50px; }
}
@media screen and (max-width:900px) {
  #bread_crumb { padding:0 50px; }
}
@media screen and (max-width:800px) {
  #bread_crumb { padding:0 20px; margin:0 auto; height:60px; overflow:auto; overflow-y:hidden; scrollbar-width: thin; }
	#bread_crumb ul { height:60px; line-height:60px; overflow:visible; }
}




/* ----------------------------------------------------------------------
 メガメニュー
---------------------------------------------------------------------- */
@media screen and (max-width:1200px) {
  .megamenu_a { display:none; }
  .megamenu_b { display:none; }
}




/* ----------------------------------------------------------------------
 モバイル用ドロワーメニュー
---------------------------------------------------------------------- */
/* ドロワーメニュー開閉ボタン */
@media screen and (max-width:1200px) {
  #drawer_menu_button { width:60px; height:60px; display:block; position:absolute; right:0; top:0; cursor:pointer; }
  #drawer_menu_button span { width:22px; height:2px; background:#000; display:block; position:absolute; left:50%; transform: translateX(-50%); transition: all 0.4s ease; }
  #drawer_menu_button span:nth-child(1) { top:23px; }
  #drawer_menu_button span:nth-child(2) { top:29px; }
  #drawer_menu_button span:nth-child(3) { top:35px; }
}


/* ドロワーメニュー */
@media screen and (max-width:1250px) {
  #drawer_menu { display:block; }
  .open_drawer_menu #drawer_menu { transform: translate3d(0,0,0); pointer-events:auto; }
  .open_drawer_menu #drawer_menu_overlay { opacity:1; pointer-events:auto; }
}
@media only screen and (max-width: 600px) {
	#drawer_menu { width:100%; }
	.open_menu #container { transform: translate3d(-100%,0,0); }
}


/* 閉じるボタン */
#drawer_menu .header { position:relative; width:100%; height:50px; border-bottom:1px solid rgba(255,255,255,0.2); }
#drawer_mneu_close_button { cursor:pointer; display:block; width:50px; height:50px; position:absolute; top:0px; right:0px; z-index:10; }
#drawer_mneu_close_button:before { color:#fff; font-family:'normal_icon'; content:'\e91a'; font-size:20px; display:block; top:17px; left:12px; position:absolute; }


/* グローバルメニュー */
#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 50px 0 20px; height:50px; line-height:50px; overflow:hidden; text-decoration:none;
  color:#fff !important; font-size:14px; border-bottom:1px solid rgba(255,255,255,0.2); transition:none;
  overflow:hidden; white-space:nowrap; text-overflow:ellipsis; visibility:visible;
}
#mobile_menu li li a { border:none; height:50px; line-height:50px; }


/* グローバルメニュー（子メニュー） */
#mobile_menu li { position:relative; }
#mobile_menu .child_menu_button { display:block; position:absolute; text-align:center; width:50px; height:50px; right:0px; top:0px; z-index:9; cursor:pointer; }
#mobile_menu .child_menu_button:after { content:''; display:block; width:12px; height:2px; background:#fff; position:absolute; top:24px; left:15px; }
#mobile_menu .child_menu_button:before { content:''; display:block; width:2px; height:12px; background:#fff; position:absolute; top:19px; left:20px; }
#mobile_menu li.open > .child_menu_button:before { display:none; }
#mobile_menu li.open > a { border-bottom:none; }
#mobile_menu li li a { background:var(--main_color); border-bottom:1px solid rgba(255,255,255,0.1); position:relative; }
#mobile_menu > ul > li.open > ul > li:last-child a { border:none; }
#mobile_menu li li.menu-item-has-children > a:after { display:none; }
#mobile_menu li li.open > a { border-bottom:1px solid rgba(255,255,255,0.1); }
#mobile_menu li ul { background:#000; }


/* ボタン */
#mobile_button { margin:20px; }
#mobile_button a { height:50px; line-height:50px; display:block; border:1px solid var(--main_color_light2); color:#fff; font-size:18px; text-align:center; }
#mobile_button a[href^="tel:"] { color:var(--main_color_light2); }
#mobile_button a + a { margin-top:20px; }
#mobile_button a.normal { background:var(--main_color_light2); font-size:16px; }


/* SNS */
#mobile_sns { margin:20px 20px -10px; }
#mobile_sns.color_type1 li a:before { color:#fff; }
#mobile_sns:not(.color_type2).sns_button_list li.note a:before {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 100 100'%3E%3Cpath d='M10 10.4968C25.408 10.4968 46.504 9.70479 61.648 10.1208C81.952 10.6408 89.624 19.5048 89.888 41.3448C90.152 53.7208 89.888 89.1048 89.888 89.1048H67.896C67.896 58.1368 68.008 53.0168 67.896 43.2568C67.632 34.6568 65.2 30.5768 58.584 29.7928C51.592 29.0088 31.992 29.6808 31.992 29.6808V89.1448H10V10.4968Z'/%3E%3C/svg%3E");
}
#footer_sns:not(.color_type2).sns_button_list li.note a:before {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 100 100'%3E%3Cpath d='M10 10.4968C25.408 10.4968 46.504 9.70479 61.648 10.1208C81.952 10.6408 89.624 19.5048 89.888 41.3448C90.152 53.7208 89.888 89.1048 89.888 89.1048H67.896C67.896 58.1368 68.008 53.0168 67.896 43.2568C67.632 34.6568 65.2 30.5768 58.584 29.7928C51.592 29.0088 31.992 29.6808 31.992 29.6808V89.1448H10V10.4968Z'/%3E%3C/svg%3E");
}



/* ----------------------------------------------------------------------
 ブログ詳細ページ
---------------------------------------------------------------------- */


/* タイトルエリア */
@media screen and (max-width:900px) {
  #single_post_header .title { font-size:calc((var(--single_title_font_size) + var(--single_title_font_size_sp)) / 2); }
}
@media screen and (max-width:800px) {
	#single_post_header { margin:0 0 35px; }
	#single_post_header .category { margin-bottom:15px; }
  #single_post_header .title { font-size:var(--single_title_font_size_sp); margin-bottom:25px; }
	#single_post_header .image { width:calc(100% + 40px); margin:0 -20px; }
	#single_post_header .date_area { margin:0 0 -45px 0; }
	#single_post_header .date_area .date { width:75px; height:75px; }
  #single_post_header .date_area .date .top { height:30px; line-height:30px; font-size:12px; }
	#single_post_header .date_area .date .bottom { font-size:20px; }
  #single_post_header .date_area .update { height:30px; line-height:30px; font-size:12px; }
	#single_post_header .date_area2 { margin-top:-23px; }
}


/* SNSボタン */
@media screen and (max-width:800px) {
  #single_share_top { margin:40px 0 40px 0; }
  #single_share_bottom { margin:40px 0 0; }
}


/* コピーボタン */
@media screen and (max-width:800px) {
  #single_copy_title_url_top { margin:0 0 35px; }
  #single_copy_title_url_btm { margin:40px 0 0; }
  .single_copy_title_url_btn { border-width:2px; line-height:46px; min-width:250px; }
}


/* ページ分割 */
@media screen and (max-width:800px) {
	#post_pagination { margin-top:35px; }
}


/* 広告 */
@media screen and (max-width:800px) {
  .single_banner,#single_free_space { line-height: 2; }
  #single_banner_top { width:auto; padding:0; margin:0 0 40px 0; }
  #single_banner_bottom { width:auto; margin:40px 0 -5px; }
	body.single-service #single_banner_top, body.single-case_study #single_banner_top { margin-top:40px; }
	body.single-service #single_banner_bottom, body.single-case_study #single_banner_bottom { margin-bottom:10px; }
  #single_banner_shortcode { padding:0 0 20px; }
}


/* ナビゲーション */
@media screen and (max-width:1100px) {
	#next_prev_post { }
	#next_prev_post .item { height:60px; }
  #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; }
	#next_prev_post .prev_post:before { content:'\e90f'; left:15px; font-size:14px; }
  #next_prev_post .next_post:before { content:'\e910'; right:15px; font-size:14px; }
}
@media screen and (max-width:800px) {
	#next_prev_post { margin-top:40px; }
}


/* メタ情報 */
@media screen and (max-width:800px) {
  #post_tag_list { margin:40px 0 -5px; }
  #post_tag_list a { font-size:12px; }
}


/* プロフィール */
@media screen and (max-width:800px) {
  .author_profile { margin:40px 0 0; padding:15px 20px; }
	.author_profile .avatar_area { width:90px; height:90px; }
  .author_profile .image_wrap { width:90px; height:90px; }
  .author_profile .info { width:calc(100% - 90px); }
	.author_profile .info_inner { padding:0 0 0 20px; }
	.author_profile .name { font-size:16px; margin:5px 0 10px 0; }
	.author_profile .desc { font-size:14px; max-height:3.4em; line-height:1.7; }
  .author_profile .desc span { -webkit-line-clamp:2; }
}


/* 関連記事 */
@media screen and (max-width:1130px) {
  #single_related_post { width:auto; margin:0 100px 65px; }
  #related_post_carousel { overflow:visible; }
	#single_related_post .swiper-nav-button:before { display:none; }
  #single_related_post .post_list .item { width:290px !important; }
	#single_related_post .post_list .item .item:last-of-type { margin-right:0 !important; }
	#single_related_post .date_area { margin:0 0 -40px 30px; }
	#single_related_post .date { width:70px; height:70px; }
}
@media screen and (max-width:1000px) {
  #single_related_post { width:auto; margin:0 50px 65px; }
}
@media screen and (max-width:800px) {
  #single_related_post { margin:0 20px 35px; }
	#single_related_post .post_list .image_wrap { margin-bottom:15px; }
}

/*スタイルカルーセル*/
@media screen and (max-width: 800px) {
	#single_style_carousel .headline {margin-bottom: 40px;font-size: 18px;}
	#single_style_carousel{ margin-bottom: 35px;}
  }


/* カテゴリー一覧 */
@media screen and (max-width:1130px) {
  #single_category_list { width:auto; margin:0 100px 70px; }
}
@media screen and (max-width:1000px) {
  #single_category_list { margin:0 50px 70px; }
}
@media screen and (max-width:800px) {
	#single_widget_area { padding:40px 0; }
	#single_related_post .headline { margin-bottom:40px; font-size:18px; }
  #single_category_list { width:auto; margin:0 20px 40px; }
	#single_category_list .headline { height:60px; line-height:60px; font-size:18px; }
	#single_category_list li { width:calc(100% / 3); }
  #single_category_list li a { height:60px; font-size:14px; }
}
@media screen and (max-width:600px) {
	#single_category_list li { width:50%; }
}


/* アーカイブ・検索 */
@media screen and (max-width:1130px) {
  #single_archive_search_area { width:auto; margin:0 100px 70px; padding:40px 40px; }
	#single_archive_area { width:calc(50% - 20px); }
	#sigle_search_area { width:calc(50% - 20px); }
}
@media screen and (max-width:1000px) {
  #single_archive_search_area { margin:0 50px 70px; }
}
@media screen and (max-width:800px) {
  #single_archive_search_area { margin:0 20px 40px; padding:20px 20px; }
	#single_archive_area { width:calc(50% - 10px); }
	#sigle_search_area { width:calc(50% - 10px); }
}
@media screen and (max-width:600px) {
  #single_archive_search_area { display:block; background:none; border:none; padding:0; }
	#single_archive_area { width:auto; }
	#sigle_search_area { width:auto; margin-top:40px; }
}


/* フリースペース */
@media screen and (max-width:1130px) {
  #single_free_space { width:auto; margin:0 100px; }
  body.single-news.hide_sidebar #single_free_space { width:auto; }
}
@media screen and (max-width:1000px) {
  #single_free_space { margin:0 50px; }
}
@media screen and (max-width:800px) {
  #single_free_space { margin:0 20px; }
}


/* 記事カルーセル */
@media screen and (max-width:1130px) {
  #single_post_carousel { width:auto; margin:0 0 140px; padding:0 100px; }
	#single_post_carousel .swiper { overflow:visible; }
	#single_post_carousel .swiper-nav-button:before { display:none; }
	.recommend_post_carousel .post_list .item { width:290px !important; }
	.recommend_post_carousel .post_list .item:last-of-type { margin-right:0 !important; }
}
@media screen and (max-width:1000px) {
  #single_post_carousel { width:auto; margin:0 0 140px; padding:0 50px; }
}
@media screen and (max-width:800px) {
	#single_post_carousel_header { margin:0 -20px 40px; }
  #single_post_carousel_header .item { height:60px; line-height:60px; font-size:14px; }
  #single_post_carousel { width:auto; margin:0 0 35px; padding:0 20px; }
	#single_post_carousel.one_carousel #single_post_carousel_header .item { margin-bottom:40px; font-size:18px; }
	#single_widget_area + #single_post_carousel.one_carousel { margin-top:40px; }
	.recommend_post_carousel .post_list .image_wrap { margin-bottom:15px; }
	.style_margin_top{ margin-top: 40px !important;}
	.margin_bottom_style{ margin-bottom: 40px !important;}
}
@media screen and (max-width:600px) {
	.recommend_post_carousel .post_list .item { width:220px !important; }
}




/* ----------------------------------------------------------------------
 その他のページ
---------------------------------------------------------------------- */
/* 404ページ*/
#page_404_header .content { padding:0 60px; }
@media screen and (max-width:1100px) {
  #page_404_header { height:calc(100vh - 60px); height:calc(100dvh - 60px); }
	#page_404_header .content { padding:0 40px; }
}
@media screen and (max-width:800px) {
	#page_404_header .headline { font-size:30px; }
  #page_404_header .content { padding:0 20px; }
  #page_404_header .desc { line-height:2; margin-top:30px; }
}




/* ----------------------------------------------------------------------
 フッター
---------------------------------------------------------------------- */
@media screen and (max-width:1200px) {
	#footer_logo { height:70px; }
	#footer_logo img { max-height:30px; width:auto; }
  #footer_logo img.pc { display:none; }
  #footer_logo img.mobile { display:block; }
	.footer_widget_content { width:50%; padding:75px 100px; }
	.footer_widget_content:nth-child(3n) { border-right:1px solid rgba(255,255,255,0.3); }
	.footer_widget_content:nth-child(2n) { border-right:none; }
}
@media screen and (max-width:1100px) {
	.footer_widget_content { padding:75px; }
}
@media screen and (max-width:900px) {
	.footer_widget_content { padding:50px; }
}
@media screen and (max-width:800px) {
	.footer_widget_content { padding:50px 20px; }
	#footer .bg_image.mobile { display:block; }
	#footer .bg_image.pc { display:none; }
}
@media screen and (max-width:600px) {
	#footer_widget_area { display:block; }
	.footer_widget_content { width:auto; border-right:none; padding:50px 20px; }
}


/* メニュー */
#footer_nav li a { padding:0 20px; }
@media screen and (max-width:1200px) {
	#footer_nav { display:none; }
}


/* SNS */
@media screen and (max-width:800px) {
  #footer_sns { display:flex; justify-content:center; position:relative; z-index:4; border-top:1px solid rgba(255,255,255,0.3); padding:21px 20px 16px; margin-bottom:0; }
  #footer_sns li { margin:0 7px 4px; }
  #footer_sns.color_type1 li a:before { color:#fff; }
}


/* コピーライト */
@media screen and (max-width:800px) {
	#copyright { padding:19px 20px;  }	
}


/* ページ上部へ戻るボタン */
@media screen and (max-width:1100px) {
	body.show_footer_bar #return_top.active { bottom:68px; }
  #return_top a { height:50px; width:50px; line-height:50px; }
  #return_top a:before { font-size:12px; width:12px; left:18.5px; }
  #return_top.active { transform: translate3d(0,0,0); bottom:25px; }
}
@media screen and (max-width:800px) {
	.p-footer-bar + #return_top { bottom:0px; }
	.p-footer-bar + #return_top.active { bottom:68px; }
}




/* ----------------------------------------------------------------------
 ウィジェット
---------------------------------------------------------------------- */
/* 基本設定 */
@media screen and (max-width:1200px) {
	#side_col .widget_content { width:calc(50% - 25px); }
	#side_col .widget_content:last-of-type { margin-bottom:40px; }
}
@media screen and (max-width:800px) {
	#side_col .widget_content { width:calc(50% - 10px); }
}
@media screen and (max-width:600px) {
	#side_col .widget_content { width:auto; }
}


/* インフォメーション */
@media screen and (max-width:800px) {
  .info_widget .info { line-height:2; }
	.info_widget .info + .sns_button_list { margin-top:25px; }
}


/* 予約情報 */
@media screen and (max-width:800px) {
  .reserve_widget .desc { line-height:2; }
}


/* タブ記事 */
@media screen and (max-width:800px) {
  .widget_tab_post_list_button div { height:50px; line-height:50px; }
}


/* アーカイブ　ドロップダウン */
@media screen and (max-width:800px) {
  .p-dropdown__title { height:60px; line-height:60px; }
	.widget_archive select, .widget_categories select { padding:0 20px; }
}


/* デフォルトのカテゴリー */
@media screen and (max-width:800px) {
	.widget_categories li { font-size:14px; }
  .widget_categories li a { height:50px; line-height:50px; }
	.widget_categories li .post-count { top:9px; width:35px; height:35px; line-height:35px; font-size:11px; }
}


/* デフォルトのアーカイブ */
@media screen and (max-width:800px) {
	.widget_archive li { font-size:14px; }
  .widget_archive li a { height:50px; line-height:50px; }
  .widget_archive li .post-count { top:9px; }
}


/* デフォルトのナビ　*/
@media screen and (max-width:800px) {
	.widget_nav_menu li { font-size:14px; }
  .widget_nav_menu li a { height:50px; line-height:50px; }
}


/* 検索 */
@media screen and (max-width:800px) {
	#searchform { height:60px; }
  #searchform #s { padding:0 20px; height:60px; width:calc(100% - 60px); }
  #searchform #searchsubmit { width:60px; height:60px; }
  #searchform .submit_button  { width:60px; height:60px; top:0px; }
  #searchform .submit_button:before { width:60px; height:60px; line-height:60px; font-size:14px; right:-2px; top:3px; }
}


/* デフォルトの最近の記事 */
@media screen and (max-width:800px) {
  .widget_recent_entries li { padding:20px 20px 15px; }
  .widget_recent_entries li a { font-size:14px; }
}


/* デフォルトのコメントウィジェット */
@media screen and (max-width:800px) {
  .widget_recent_comments li { font-size:14px; padding:20px 20px 15px; }
}


/* デフォルトの固定ページ */
@media screen and (max-width:800px) {
	.widget_pages li { font-size:14px; }
  .widget_pages li a { height:50px; line-height:50px; }
}


/* デフォルトのナビ */
@media screen and (max-width:800px) {
	.widget_nav_menu li { font-size:14px; }
  .widget_nav_menu li a { height:50px; line-height:50px; }
}


/* デフォルトのブロック */
@media screen and (max-width:800px) {
  .widget_block { font-size:14px; }	
}


/* デフォルトのテキストウィジェット */
@media screen and (max-width:800px) {
  .widget_text .textwidget { font-size:14px; }
	.widget_text .textwidget p { line-height:2; }
}


/* デフォルトのアーカイブとカテゴリー　ドロップダウンメニュー */
@media screen and (max-width:800px) {
  .widget_archive select, .widget_categories select { height:60px; font-size:14px; }
  .widget_archive .screen-reader-text, .widget_categories .screen-reader-text  { height:60px; }
  .widget_archive .screen-reader-text:before, .widget_categories .screen-reader-text:before { top:27px; right:23px; }
}


/* RSS */
@media screen and (max-width:800px) {
  .widget_rss li { padding:20px 20px 15px; font-size:14px; }
}




/* ----------------------------------------------------------------------
 404ページ
---------------------------------------------------------------------- */
@media screen and (max-width:1200px) {
  #no_search_result { height:calc(100vh - 60px); height:calc(100dvh - 60px); }
	#no_search_result .desc { padding:0 50px; width:auto; }
}
@media screen and (max-width:800px) {
  #no_search_result .headline { font-size:24px; margin-bottom:30px; }
	#no_search_result .desc { padding:0 20px; line-height:2; margin-bottom:35px; }
}
@media screen and (max-width:600px) {
	#no_search_result .search_form { padding:0 50px; }
  #no_search_result form { max-width:400px; width:100%; }
}




/* ----------------------------------------------------------------------
 コメント
---------------------------------------------------------------------- */
@media screen and (max-width:800px) {
	#comments { margin:40px 0 0 0; }
  #comments .headline { font-size:18px; margin-bottom:40px; }
}




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


/* HOMME モバイル用スタイルシート */