@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 .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; }



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


/* タイトルエリア */
@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; }
}




/* ----------------------------------------------------------------------
 その他
---------------------------------------------------------------------- */
/*  WordPress プリセットスタイル */
@media screen and (max-width:800px) {
  .post_content h1, .post_content h2, .post_content h3, .post_content h4, .post_content h5, .post_content h6 { }
  .post_content p { line-height:2; }
	body.page .post_content > p:first-child { margin-top:-5px; }
  .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 15px; }
	.post_content .wp-caption-text { font-size:12px; }
}


@media screen and (max-width: 800px) {
  .s_table { margin-right:-20px; margin-left:-20px; padding:0 0 0 20px; }
	.s_table table { overflow:visible; position:relative; }
	.s_table table:after { content:''; position:absolute; top:0; left:100%; height:1px; width:20px; }
}




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