@charset "utf-8";


/* ----------------------------------------------------------------------
 基本設定
---------------------------------------------------------------------- */
html { scroll-padding-top:90px; }
html:not(:has(#header)) { scroll-padding-top:100px; }
body { touch-action:manipulation; }
@media screen and (max-width:800px) {
  html:not(:has(#header)) { scroll-padding-top:40px; }
  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:1300px) {
	#container { width:auto; margin-left:0; }
	body.author:not(:has(#header_image)) #container { border-top:1px solid #ddd; }
}
@media screen and (max-width:1200px) {
  #main_col { width:calc(100% - 290px); }
  #side_col { width:250px; }
}
@media screen and (max-width:1000px) {
  #main_content { width:730px; display:block; margin:0 auto;  }
  #main_col { width:auto !important; }
  body:not(:has(#side_col)) #main_col { width:auto; }
  #side_col { width:650px; margin:100px auto -40px; display:flex; flex-wrap:wrap; justify-content:space-between; }
}
@media screen and (max-width:900px) {
  #main_content { width:auto; margin:0 50px; }
}
@media screen and (max-width:800px) {
	#main_content { margin:0 20px; padding:0 0 40px 0; }
	#side_col { margin-top:40px; }
}
@media screen and (max-width:700px) {
	#side_col { width:auto; }
}
@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 { min-width:240px; height:60px; }
}
@media screen and (max-width:800px) {
  .design_button { height:50px; font-size:14px; }
}


/* デザイン見出し */
@media screen and (max-width:800px) {
  .design_headline { font-size:18px !important; margin:0 auto 40px !important; }
}


/* swiperのドットナビ */
@media screen and (max-width:800px) {
  .swiper-pagination span { width:12px; height:12px; margin:0 5px !important; }
}




/* ----------------------------------------------------------------------
 トップページ ヘッダースライダー
---------------------------------------------------------------------- */
#header_slider_container.height_type2 { height:650px; }
#header_slider_fixed_content .header_slider_content.direction_type1 { padding:0 80px; }
@media screen and (max-width:1000px) {
  #header_slider_container.height_type2 { height:600px; }
  #header_slider_fixed_content .header_slider_content.direction_type1 { padding:0 50px; }
}
@media screen and (max-width:800px) {
  #header_slider_container { height:calc(100vh - 140px) !important; height:calc(100svh - 140px) !important; }
	#header_slider_container:not(.has_header_news) { height:calc(100vh - 60px) !important; height:calc(100svh - 60px) !important; }
	#header_slider_fixed_content .header_slider_content.direction_type1 { width:auto; }
	.header_slider_content .desc { line-height:2; font-size:16px; }
	.header_slider_content.direction_type2 .desc { line-height:2.4; }
  .header_slider_content .catch + .desc { margin:15px 0 0 0; }
  .header_slider_content.direction_type2 .catch + .desc { margin:0 15px 0 0; }
}


/* ニュースティッカー */
@media screen and (max-width:1200px) {
	#news_ticker:has(#header_search) #news_ticker_inner { right:0px; }
}
@media screen and (max-width:800px) {
  #news_ticker_inner { width:100%; height:80px; }
  #news_ticker_carousel { width:100%; height:80px; }
  #news_ticker .item { height:80px; line-height:1; padding:0 20px; display:flex; flex-wrap:wrap; align-items:center; }
	#news_ticker .item .content { display:block; width:100%; }
	#news_ticker .category { float:left; display:table; font-size:12px; height:30px; line-height:30px; margin:0 0 12px 0; }
	#news_ticker .date { float:left; margin:10px 15px 12px 0; }
  body.mobile_device #news_ticker .date:before { margin-top:1px; }
	#news_ticker .title { font-size:14px; display:block; clear:both; width:100%; }
}


/* 検索フォーム */
@media screen and (max-width:1200px) {
  #header_search { display:none; }
}




/* ----------------------------------------------------------------------
 コンテンツビルダー
---------------------------------------------------------------------- */
@media screen and (max-width:1000px) {
	.cb_header .catch { font-size:calc((var(--headline_font_size) + var(--headline_font_size_sp)) / 2); }
}
@media screen and (max-width:800px) {
	.cb_header { margin:0 0 40px 0; }
	.cb_header.direction_type1 { margin-bottom:30px; }
	.cb_header .catch { font-size:var(--headline_font_size_sp); }
	.cb_header .desc { line-height:2; }
	.cb_header.direction_type1 .desc { width:auto; }
  .cb_header.direction_type2 .desc { line-height:2.4; }
  .cb_header .desc .mobile { display:block; }
  .cb_header .desc .pc { display:none; }
  .cb_header .catch + .desc { margin:15px 0 -10px 0; }
  .cb_header.direction_type2 .catch + .desc { margin:0 15px 0 0; }
	.cb_white_bg + .cb_white_bg { margin-top:-40px; }
  .link_button { margin-top:30px; }
  .cb_bg_image.left_top { transform:scale(0.5); transform-origin:top left; }
  .cb_bg_image.center_top { transform: scale(0.5) translateX(-50%); transform-origin:top left; }
  .cb_bg_image.right_top { transform:scale(0.5); transform-origin:top right; }
  .cb_bg_image.left_middle { top:200px; transform: scale(0.5) translateY(0%); transform-origin:top left; }
  .cb_bg_image.center_middle { top:200px; transform: scale(0.5) translate(-50%, 0%); transform-origin:top left; }
  .cb_bg_image.right_middle { top:200px; transform: scale(0.5) translateY(0%); transform-origin:top right; }
  .cb_bg_image.left_bottom { transform:scale(0.5); transform-origin:bottom left; }
  .cb_bg_image.center_bottom { transform: scale(0.5) translateX(-50%); transform-origin:bottom left; }
  .cb_bg_image.right_bottom { transform:scale(0.5); transform-origin:bottom right; }
}


/* デザインコンテンツ */
.design_content { scroll-margin-top:-60px; }
@media screen and (max-width:1200px) {
	.design_content .catch { font-size:calc((var(--catch_font_size) + var(--catch_font_size_sp)) / 2); }
}
@media screen and (max-width:1000px) {
	.design_content .content_wrap { padding:120px 50px; flex-direction:column; flex-direction:column-reverse; }
	.design_content .content { width:100%; }
	.design_content .image { max-width:100%; width:auto; margin:100px auto 0; }
	.design_content.layout_type2 .content { margin-top:100px; }
	.design_content.layout_type2 .image { margin-top:0px; }
	.design_content .image { transition-delay:0.3s; }
  .design_content .content { transition-delay:0s; }
	.design_content.layout_type2 .image { transition-delay:0s; }
  .design_content.layout_type2 .content { transition-delay:0.3s; }
	.design_content .content_inner { padding-left:0 !important; padding-right:0 !important; }
}
@media screen and (max-width:800px) {
	.design_content .content_wrap { padding:40px 20px; }
	.design_content .image { margin:40px auto 0; }
	.design_content.layout_type2 .image { margin-top:0; }
	.design_content.layout_type2 .content { margin-top:40px; }
	.design_content.layout_type2:not(:has(.image)) .content { margin-top:0px; }
	.design_content .catch { font-size:var(--catch_font_size_sp); }
	.design_content .desc { line-height:2; }
	.design_content .desc .pc { display:none; }
	.design_content .desc .mobile { display:block; }
  .design_content .content.direction_type2 .desc { line-height:2.4; }
	.design_content .catch + .desc { margin:15px 0 0 0; }
  .design_content .content.direction_type2 .catch + .desc { margin:0 15px 0 0; }
}


/* スライドコンテンツ */
.cb_slide_content { scroll-margin-top:-60px; }
@media screen and (max-width:1200px) {
  .slide_content_list .catch { font-size:24px; }
}
@media screen and (max-width:1000px) {
	.cb_slide_content { padding:120px 50px; }
}
@media screen and (max-width:800px) {
	.cb_slide_content { padding:40px 20px; }
	.slide_content_list .item { display:block; }
	.slide_content_list .image { width:auto; }
	.slide_content_list .image img { max-width:475px; margin:0 auto; }
	.slide_content_list .content { width:100%; max-width:475px; margin:25px auto 0; }
  .slide_content_list .catch { font-size:20px; }
  .slide_content_list .desc { line-height:2; }
  .slide_content_list .desc .mobile { display:block; }
	.slide_content_list .desc .pc { display:none; }
  .slide_content_list .catch + .desc { margin:15px 0 0 0; }
	.slide_content_list .link_button { margin-top:32px; text-align:center; }
  .cb_slide_content .swiper-pagination { margin:30px 0 0 0; }
}


/* サービス一覧 */
.cb_service { scroll-margin-top:-60px; }
@media screen and (max-width:1200px) {
  .service_list_carousel_wrap { }
  .service_list_carousel { overflow:visible; }
	.cb_service .swiper-pagination { /*display:none;*/ }
  .cb_service_list .item { margin:0; width:350px !important; }
	.cb_service_list .item:last-of-type { margin-right:0 !important; }
}
@media screen and (max-width:1000px) {
  .cb_service { padding:120px 50px; }
  .cb_service .cb_header.direction_type1 { width:auto; }
  .cb_service .cb_header.direction_type2 { width:100%; }
}
@media screen and (max-width:800px) {
  .cb_service { padding:40px 20px; }
	.cb_service .cb_header { margin:0px auto 40px !important; }
  .cb_service_list .item { width:270px !important; }
	.cb_service_list .title { font-size:16px; padding:16px 30px 12px; }
	.cb_service_list .desc { line-height:2; }
  .cb_service .swiper-pagination { margin:30px 0 0 0; }
}


/* 声一覧 */
.cb_voice { scroll-margin-top:-60px; }
@media screen and (max-width:1200px) {
	.cb_voice_list .item { margin:1px 0 ; }
	.cb_voice_list .image_wrap { width:300px; }
	.cb_voice_list .content { width:calc(100% - 300px); }
}
@media screen and (max-width:1000px) {
  .cb_voice { padding:120px 50px; }
  .cb_voice .cb_header.direction_type1 { width:auto; }
  .cb_voice .cb_header.direction_type2 { width:100%; }
}
@media screen and (max-width:800px) {
  .cb_voice { padding:40px 20px; }
  .cb_voice .cb_header { margin:0 auto 40px !important; }
	.cb_voice_list .image_wrap { width:50%; }
	.cb_voice_list .content { width:50%; }
	.cb_voice_list .content .title { font-size:14px; padding:15px 20px; left:-30px; top:30px; }
	.cb_voice_list .item:nth-child(2n) .content .title { bottom:30px; }
	.cb_voice_list .content .info { font-size:14px; padding:20px 20px; }
	.cb_voice .swiper-pagination { margin:30px 0 0 0; }
	.cb_voice	.voice_list .item:last-of-type { border-bottom:1px solid #ddd; }
	.cb_voice .voice_list + .link_button { margin-top:40px; }
	.cb_voice	.voice_list { margin:0; }
	.cb_voice .voice_list .item { border:1px solid #ddd; border-radius:7px;  }

}


/* スタッフ一覧 */
.cb_author { scroll-margin-top:-60px; }
@media screen and (max-width:1200px) {
	.cb_author_list .item { margin:1px 0; }
	.cb_author_list .image_wrap { width:300px; }
	.cb_author_list .content { width:calc(100% - 300px); }
}
@media screen and (max-width:1000px) {
  .cb_author { padding:120px 50px; }
  .cb_author .cb_header.direction_type1 { width:auto; }
  .cb_author .cb_header.direction_type2 { width:100%; }
}
@media screen and (max-width:800px) {
  .cb_author { padding:40px 20px; }
  .cb_author .cb_header { margin:0px auto 40px !important; }
	.cb_author_list .image_wrap { width:50%; }
	.cb_author_list .content { width:50%; padding:30px; }
	.cb_author .swiper-pagination { margin:30px 0 0 0; }
}


/* ブログ一覧 */
.cb_blog_list { scroll-margin-top:-60px; }
@media screen and (max-width:1200px) {
  .cb_blog_carousel { overflow:visible; }
	.cb_blog_list .swiper-pagination { /*display:none;*/ }
	.cb_blog_carousel_wrap .blog_list { width:auto; margin:0; }
  .cb_blog_carousel_wrap .blog_list .item { margin:0; width:350px !important; }
	.cb_blog_carousel_wrap .blog_list .item:last-of-type { margin-right:0 !important; }
}
@media screen and (max-width:1000px) {
  .cb_blog_list { padding:120px 50px; }
}
@media screen and (max-width:800px) {
  .cb_blog_list { padding:40px 20px; }
  .cb_blog_carousel_wrap .blog_list .item { width:270px !important; }
	.cb_blog_list .swiper-pagination { margin:30px 0 -2px 0; }
}


/* お知らせ */
.cb_news_list { scroll-margin-top:-60px; }
@media screen and (max-width:1000px) {
	.cb_news_list { padding:120px 50px; }
  .cb_news_content .header_desc { width:auto; }
  .cb_news_list.layout_type2 .news_list .item { margin:0 0 21px !important; }
}
@media screen and (max-width:800px) {
  .cb_news_content { padding:30px; }
  .cb_news_content:has(.headline) { padding-top:55px; }
	.cb_white_bg + .cb_news_list:has(.headline) { margin-top:-10px; }
	.cb_news_content .headline { top:-30px; min-width:200px; height:60px; line-height:60px; font-size:14px; }
	.cb_news_content .header_desc { line-height:2; margin:0 auto 20px; }
	.cb_news_content .header_desc .pc { display:none; }
	.cb_news_content .header_desc .mobile { display:block; }
	.cb_news_list { padding:40px 20px; }
	.cb_news_list.layout_type1 .news_list { display:block; margin-bottom:20px; }
	.cb_news_list.layout_type1 .news_list .item { width:100%; }
	.cb_news_list .swiper-pagination { margin:30px 0 -2px 0; }
}


/* フリースペース */
.cb_free_space { scroll-margin-top:-60px; }
.cb_free_space.wide_content { padding-left:100px; padding-right:100px; }
@media screen and (max-width:1000px) {
  .cb_free_space { width:auto; padding-left:50px; padding-right:50px; }
  .cb_free_space.wide_content { padding-left:50px; padding-right:50px; }
}
@media screen and (max-width:800px) {
  .cb_free_space { padding:40px 20px; }
  .cb_free_space.wide_content { padding:40px 20px; }
	.cb_free_space .cb_header.direction_type2 { margin-bottom:35px; }
}


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




/* ----------------------------------------------------------------------
 固定ページ
---------------------------------------------------------------------- */
@media screen and (max-width:1000px) {
  #page_contents { margin:0 50px; }
}
@media screen and (max-width:900px) {
  body.page #page_contents .post_content { width:auto; }
}
@media screen and (max-width:800px) {
  #page_contents { margin:0 20px; padding-bottom:40px; }
  body.page #page_contents .post_content { }
}


/* 横幅100%画像 */
@media screen and (max-width:1300px) {
  .wide_image { width:calc(100vw - 160px); }
}
@media screen and (max-width:900px) {
  .wide_image { width:calc(100% + 100px); left:-50px; transform:none; }
}
@media screen and (max-width:800px) {
  .wide_image { width:calc(100% + 40px); left:-20px; margin:30px 0 40px !important; }
}


/* ボタン */
@media screen and (max-width:800px) {
  .q_button_wrap { margin-top:40px; }
  p + .q_button_wrap { margin-top:35px; }
}


/* デザイン見出し1 */
@media screen and (max-width:1000px) {
  .post_content .design_headline1 { font-size:26px !important; }
}
@media screen and (max-width:800px) {
  .post_content .design_headline1 { font-size:20px !important; margin-top:35px; margin-bottom:20px !important; }
  .post_content .design_headline1 + p:not(:has(img)) { margin-top:-2px; }
  .post_content .design_headline1:first-child { margin-top:0px !important; }
  .post_content *:not(:has(img)) + .design_headline1 { margin-top:30px; }
}


/* デザイン見出し2 */
@media screen and (max-width:800px) {
  .post_content .design_headline2 { font-size:18px !important; margin-top:40px; margin-bottom:30px !important; padding-top:20px; }
  .post_content .design_headline2 + p:not(:has(img)) { margin-top:0px; }
  .post_content p + .design_headline2 { margin-top:40px; }
}


/* チェック付きリスト */
@media screen and (max-width:800px) {
  :is(.checkbox_list, .tcdce-body .checkbox_list) li { font-size:14px;  }
}


/* アクセスマップ */
@media screen and (max-width:1260px) {
  body.page-template-page-tcd-lp.large_page_width.hide_page_header_bar .sc_access_map { width:auto; }
}
@media screen and (max-width:1000px) {
	body.page-template-page-tcd-lp.normal_page_width.hide_page_header_bar .sc_access_map { width:auto; }
  .sc_access_map .button_list { display:block; margin-bottom:0 !important; }
	.sc_access_map .button_list a:first-of-type { margin-bottom:20px; }
  .sc_access_map .button_list a { width:100%; max-width:300px; margin:0 auto; }
}
@media screen and (max-width:800px) {
  body.page .post_content h2 + .sc_access_map { margin-top:35px; }
	.sc_access_map p { line-height:2; }
	.sc_access_map:last-child { margin-bottom:-30px; }
  .sc_access_map .map_area { border:none; padding:0; }
  .sc_access_map .address_area { margin:30px 0 !important; }
  .sc_access_map .address_area h4 { font-size:16px; }
  .sc_access_map .time_area { margin:0 -20px; padding:30px 20px; border:none; border-top:1px solid #ddd; }
  .sc_access_map .button_area { padding:30px 20px; margin:0 -20px; border:none; border-top:1px solid #ddd; }
  .sc_access_map .button_area .desc + .button_list { margin-top:30px; }
  .sc_access_map .button_list a { font-size:14px; padding:3px 20px 0; font-weight:600; height:50px; }
  .sc_access_map .button_list a[href^="tel:"] .large-font { font-size:18px; }
  .sc_access_map .icon { font-size:25px; }
  .sc_access_map .icon.icon_type_sns { font-size:19px; }
  .sc_access_map .icon.Twitter { font-size:15px; }
}


/* デザインコンテンツリスト */
@media screen and (max-width:1260px) {
  body.page-template-page-tcd-lp.large_page_width.hide_page_header_bar .design_content_list { width:auto; }
}
@media screen and (max-width:1000px) {
	body.page-template-page-tcd-lp.normal_page_width.hide_page_header_bar .design_content_list { width:auto; }
	.design_content_list .headline { font-size:16px; margin:0 0 25px 0; }
  .design_content_list .catch { font-size:20px; margin:0 0 15px 0; }
}
@media screen and (max-width:800px) {
	.design_content_list { margin:30px 0 40px; }
  .design_content_list .item { display:block; margin:0 -20px 40px; padding:0 20px 40px; }
  .design_content_list .image { width:auto; max-width:475px; margin:0 auto 40px; }
  .design_content_list .content { width:auto; max-width:475px; margin:0 auto; }
	.design_content_list .headline { font-size:16px; margin:0 0 25px 0; }
  .design_content_list .catch { font-size:20px; margin:0 0 15px 0; }
	.design_content_list .desc { line-height:2; margin-bottom:-10px; }
}


/* フロー */
@media screen and (max-width:1260px) {
  body.page-template-page-tcd-lp.large_page_width.hide_page_header_bar .flow_list { width:auto; }
}
@media screen and (max-width:1000px) {
  body.page-template-page-tcd-lp.normal_page_width.hide_page_header_bar .flow_list { width:auto; }
  .flow_list .item { padding:30px; }
	.flow_list .content { padding:0 0 0 30px; }
}
@media screen and (max-width:800px) {
	.flow_list { margin:30px 0 40px; }
	.flow_list .item { display:block; margin:0 0 20px 0; }
	.flow_list .image { width:100%; max-width:280px; margin:0 auto 30px; }
	.flow_list .content { width:100%; padding:0; margin-bottom:-5px; }
	.flow_list .headline { font-size:18px; margin-bottom:20px; text-align:center; }
	.flow_list .headline span { width:30px; height:30px; line-height:30px; font-size:14px; margin:0 10px; }
	.flow_list .desc { line-height:2; }
}
@media screen and (max-width:600px) {
	.flow_list .headline { text-align:left; }
}


/* メニュー一覧 */
@media screen and (max-width:1000px) {
  .menu_list .item { padding:60px 30px; }
	.menu_list .headline { font-size:22px; margin:0 0 60px 0; }
}
@media screen and (max-width:800px) {
  .menu_list { margin:30px 0 40px; }
	.menu_list .item { padding:20px; margin-bottom:20px; }
	.menu_list .headline { font-size:18px; margin:11px 0 28px 0; }
	.menu_list .item_inner { display:block; }
	.menu_list .image { width:100%; max-width:420px; margin:0 auto 25px; }
	.menu_list .content { width:100%; }
	.menu_list .desc { line-height:2; margin-top:-5px; font-size:14px; }
	.menu_list .desc + .item_list { margin-top:24px !important; }
	.menu_list .item_list th { padding:10px 15px; font-size:14px; }
  .menu_list .item_list td { padding:10px 15px; font-size:14px; }
}


/* 料金一覧 */
@media screen and (max-width:1000px) {
  .price_list { padding:60px 30px; }
}
@media screen and (max-width:800px) {
  .price_list { margin:30px 0 40px; padding:30px 20px; }
	.price_list .title_area { padding:15px 15px 11px; font-size:14px; }
	.price_list .title { font-size:14px; }
	.price_list .desc { line-height:2; font-size:14px; }
}
@media screen and (max-width:500px) {
	.price_list .title_area { display:block; }
	.price_list .title { width:100%; }
	.price_list .price { width:100%; text-align:left; margin-top:5px; }
}


/* LP */
@media screen and (max-width:1260px) {
	body.page-template-page-tcd-lp.large_page_width #page_contents .post_content { width:auto; }
}
@media screen and (max-width:1200px) {
	#page_header .logo { left:20px; top:20px; }
	#page_header .logo img { max-width:200px; height:auto; }
}
@media screen and (max-width:1000px) {
	body.page-template-page-tcd-lp.normal_page_width #page_contents .post_content { width:auto; }
	#page_header .logo img { max-width:150px;  }
}
@media screen and (max-width:800px) {
	#page_header .logo img { max-width:60px; }
	#page_header .logo img.mobile { display:block; }
	#page_header .logo img.pc { display:none; }
  body.page-template-page-tcd-lp.normal_page_width #page_contents { margin:0 20px; }
	body.page-template-page-tcd-lp.hide_page_header #page_contents { padding-top:40px; }
	.post_content.use_theme_style *:not(:has(img)) + h2 { margin-top:30px; }
	body.page-template-page-tcd-lp .sub_heading { text-align:center; margin-top:-10px; font-size:14px; }
	body.page .post_content h2 + .faq_list { margin-top:25px; }
	body.page .post_content h2 + table { margin-top:25px !important; }
	#lp_page_table th { width:110px; }
	body.page .post_content table + .q_button_wrap { margin-top:40px; }
}




/* ----------------------------------------------------------------------
 スタッフ
---------------------------------------------------------------------- */
@media screen and (max-width:900px) {
  #author_header .desc { width:auto; margin:40px 50px 0; }
}
@media screen and (max-width:800px) {
  #author_header { margin:40px 0 30px; }
  #author_header:has(.author_image) { margin-top:-65px; }
	#author_header.no_image, body:not(:has(#page_header)) #author_header { margin-top:40px !important; }
  #author_header .author_image { width:130px; height:130px; border:4px solid #fff; margin:0 auto 25px; }
  #author_header .name { font-size:18px; }
  #author_header .sns_button_list { margin-top:18px; }
  #author_header .desc { margin:30px 20px 0; line-height:2; }
}


/* スタッフ一覧 */
@media screen and (max-width:1200px) {
  #author_list .desc { padding:0; }
}
@media screen and (max-width:1000px) {
	#author_list .item { display:block; }
	#author_list .image_wrap { margin:auto; }
	#author_list .content { width:auto; padding-left:0px; margin-top:60px; }
	#author_list .name { text-align:center; margin-bottom:25px; }
  #author_list .blog_link { position:relative; right:auto; top:auto; left:50%; transform: translateX(-50%); margin:0 0 50px; display:inline-block; }
  #author_list .sns_button_list { margin:0 auto 20px; justify-content:center; }
  #author_list .data dt { margin:0 0 10px 0; line-height:1; }
  #author_list .data dd { margin:0 0 42px 0; }
	#author_list .catch { text-align:center; font-size:24px; }
}
@media screen and (max-width:800px) {
  .post_content + #author_list { margin-top:30px; }
	#author_list .item { padding:30px; margin-bottom:20px; }
	#author_list .content { margin-top:30px;  }
	#author_list .name { font-size:18px; }
	#author_list .blog_link { margin-bottom:30px; }
  #author_list .sns_button_list { margin:-5px auto 15px; }
	#author_list .data dd { line-height:2; margin-bottom:20px; }
	#author_list .bottom_content { margin:20px 0 0 0; padding:30px 0 0 0; }
	#author_list .catch { font-size:18px; margin-bottom:20px; }
	#author_list .desc { line-height:2; }
}




/* ----------------------------------------------------------------------
 ページヘッダー
---------------------------------------------------------------------- */
@media screen and (max-width:1300px) {
  body.page-template-page-tcd-lp.large_header_height:has(#header) #page_header { height:calc(100vh - 60px) !important; height:calc(100dvh - 60px) !important; }
}
@media screen and (max-width:1200px) {
  #page_header:not(:has(.image)) { border-top:1px solid #ddd; }
	body.page-template-page-tcd-lp #page_header { height:500px !important; }
}
@media screen and (max-width:1000px) {
	#page_header { height:300px !important; }
	body.page-template-page-tcd-lp #page_header { height:400px !important; }
	#page_header .catch { font-size:calc((var(--catch_font_size) + var(--catch_font_size_sp)) / 2); }
	#page_header .catch.direction_type2 { padding:30px 0; }
	#page_header .sub_catch  { max-width:inherit; font-size:16px; }
	.archive_catch { font-size:calc((var(--headline_font_size) + var(--headline_font_size_sp)) / 2); margin-top:0; }
}
@media screen and (max-width:900px) {
	.archive_catch { margin:-10px 50px 0; width:auto; }
	.archive_desc { margin:0 50px 110px; width:auto; }
}
@media screen and (max-width:800px) {
	#page_header { height:200px !important; }
	body.single #page_header { height:160px !important; }
	body.single-service #page_header { display:none; }
	body.page-template-page-tcd-lp #page_header { height:300px !important; }
	body.page:not(:has(#bread_crumb)) #page_header { margin-bottom:40px; }
	#page_header .catch { font-size:var(--catch_font_size_sp); padding:0 20px; }
	#page_header .catch.direction_type2 { padding:20px 0; }
	
	#page_header .sub_catch { line-height:2; font-size:14px; margin-top: 10px;}
	#page_header .catch.direction_type2 .sub_catch { line-height:2; }
  #page_header .main_catch + .sub_catch { margin:15px 0 0 0; }
  #page_header .catch.direction_type2 .main_catch + .sub_catch { margin:0 15px 0 0; }
  #page_header .catch.direction_type2 .main_catch + .sub_catch + .sub_catch { margin:0 15px 0 0; }
  #page_header .sub_catch.mobile { display:block; }
  #page_header .sub_catch.pc { display:none; }

	.archive_catch { margin:0px 20px 0; font-size:var(--headline_font_size_sp); }
	.archive_desc { margin:0 20px 30px; line-height:2; }
  .archive_desc.pc { display:none; }
	.archive_desc.mobile { display:flex; }
  .archive_catch + .archive_desc { margin-top:20px; }
  .archive_catch + .archive_desc + .archive_desc{ margin-top:20px; }
}




/* ----------------------------------------------------------------------
 ブログアーカイブページ
---------------------------------------------------------------------- */
@media screen and (max-width:1100px) {
  body:not(.home) .blog_list .item { width:calc(100% / 2 - 20px); }
  body:not(.home) .blog_list .item:nth-child(3n) { margin-right:30px; }
  body:not(.home) .blog_list .item:nth-child(2n) { margin-right:0; }
}
@media screen and (max-width:1000px) {
	#archive_blog { margin:110px 50px 0; }
  #category_sort_button_wrap { padding:0; }
	#category_sort_button_wrap .swiper-nav-button { display:none; }
	#category_sort_button .item { height:50px; line-height:50px; font-size:14px; }
}
@media screen and (max-width:800px) {
	#archive_blog { margin:30px 20px 0; padding-bottom:40px; }
	#category_sort_button_wrap { margin-bottom:30px; }
	.blog_list { margin:0 auto -20px; }
  body:not(.home) .blog_list .item { width:calc(100% / 2 - 10px); margin:0 20px 20px 0; }
  body:not(.home) .blog_list .item:nth-child(3n) { margin-right:20px; }
  body:not(.home) .blog_list .item:nth-child(2n) { margin-right:0; }
	.blog_list .content { padding:20px 20px 5px; }
	.blog_list .category { margin:0 0 13px 0; height:30px; line-height:30px; font-size:12px; }
	.blog_list .title { font-size:16px; }
	.blog_list .date_list { margin:13px 0 5px; }
	.page_navi { margin-top:40px; }
	.page_navi li { margin:0 5px 0 0; }
	.page_navi a, .page_navi .current, .page_navi .dots { font-size:12px; width:40px; height:40px; line-height:40px; }
}
@media screen and (max-width:600px) {
	body:not(.home) .blog_list { display:block; margin-bottom:0; }
  body:not(.home) .blog_list .item { width:auto; margin:0 0 20px 0; }
  body:not(.home) .blog_list .item:last-of-type { margin-bottom:0; }
  body:not(.home) .blog_list .item:nth-child(3n) { margin-right:0; }
	.page_navi a.next, .page_navi a.prev { display:none; }
}




/* ----------------------------------------------------------------------
 サービスアーカイブページ
---------------------------------------------------------------------- */
@media screen and (max-width:1100px) {
	.service_list .item { padding:30px; }
	.service_list .image_wrap { margin-bottom:30px; }
	.service_list .title { font-size:18px; margin-top:-2px; }
	.service_list .desc { line-height:2; max-height:4em; padding:0 30px; }
  .service_list .title + .desc { margin-top:15px; }
}
@media screen and (max-width:1000px) {
  #archive_service { margin:110px 50px 0; }
}
@media screen and (max-width:800px) {
  #archive_service { margin:30px 20px 0; padding-bottom:40px; }
	.service_list .item { padding:30px 20px; }
	.service_list .desc { padding:0; }
}
@media screen and (max-width:600px) {
  #archive_service { margin:30px 0 0; padding-bottom:0px; }
	#archive_service .page_navi { margin-top:0; padding-top:40px; margin-bottom:40px; border-top:1px solid #ddd; }
  .service_list { display:block; }
  .service_list .item { width:100%; margin:0; border:none; border-top:1px solid #ddd; }
}




/* ----------------------------------------------------------------------
 サービス詳細ページ
---------------------------------------------------------------------- */
@media screen and (max-width:1000px) {
  #single_service { margin:0 50px; }
	#service_header .content .title { font-size:calc((var(--single_title_font_size) + var(--single_title_font_size_sp)) / 2); }
	#service_header .content { padding:50px 50px; }
}
@media screen and (max-width:900px) {
  #single_service .post_content { width:auto; margin:0 auto; }
}
@media screen and (max-width:800px) {
  #single_service { margin:0 20px; padding-bottom:40px; }
	#service_header { flex-direction:column; flex-direction:column-reverse; margin:-30px -20px 40px; }
	#service_header .content { width:100%; border-radius:0; border:none; border-bottom:1px solid #ddd; padding:35px 20px 30px; }
	#service_header:not(:has(.image)) .content { border-radius:0px; }
	#service_header .content .title { font-size:var(--single_title_font_size_sp); text-align:center; }
	#service_header .content .desc { line-height:2; margin:20px 0 0 0; }
	#service_header .image { border-radius:0; width:100%; }
}


/* チェックリスト */
@media screen and (max-width:1000px) {
  .sc_check_list { padding:60px 50px; }
	.sc_check_list h2 { max-width:calc(100% - 100px); }
}
@media screen and (max-width:800px) {
	.sc_check_list { padding:20px 30px; margin:40px 0; }
	.sc_check_list:has(h2) { padding-top:50px; }
	.post_content + .sc_check_list { margin-top:30px; }
	.post_content + .sc_check_list:has(h2) { margin-top:60px; }
	.sc_check_list h2 { max-width:calc(100% - 60px); top:-30px; min-width:200px; height:60px; line-height:60px !important; font-size:14px !important; }
	.sc_check_list li { font-size:14px; }
}


/* コンテンツ一覧 */
@media screen and (max-width:800px) {
	.sc_content_list { margin:40px 0; }
  .post_content + .sc_content_list { margin-top:30px; }
	.post_content + .sc_content_list.border_display:has(h2) { margin-top:80px; }
	.sc_content_list.border_display { padding:30px; }
	.sc_content_list.border_display:has(h2) { padding-top:45px; margin-top:73px; }
	.sc_content_list h2 { max-width:calc(100% - 60px); min-width:200px; height:60px; line-height:60px !important; font-size:14px !important; margin:0 0 40px 0 !important; }
	.sc_content_list .content_list { display:block; margin-bottom:0px !important; }
  .sc_content_list .content_list .item { width:100%; margin:0 0 30px 0; }
	.sc_content_list .content_list .item:last-of-type { margin:0; }
	.sc_content_list .content_list .item img + .desc { margin-top:10px; }
	.sc_content_list .content_list .item .desc { line-height:2; margin-bottom:0px; }
	.sc_content_list .content_list .item:last-of-type .desc { margin-bottom:-10px; }
}


/* 新着記事 */
#recent_service_list .post_list { margin:0 -20px -20px 0; }
#recent_service_list .post_list .item { width:calc(50% - 20px) !important; margin:0 20px 20px 0 !important; }
#recent_service_list .post_list .item:nth-child(2n) { margin-right:0 !important; }
#recent_service_list .post_list .item:nth-child(3n) { margin-right:20px !important; }
#recent_service_list .post_list .image_wrap { width:130px; }
#recent_service_list .post_list .title { width:calc(100% - 130px); font-size:16px; }
@media screen and (max-width:1000px) {
  #recent_service_list { padding:120px 50px; }
}
@media screen and (max-width:800px) {
  #recent_service_list { padding:40px 20px; }
	#recent_service_list .post_list { display:block; margin:0; }
	#recent_service_list .post_list .item { width:100% !important; margin:0 0 20px 0 !important; }
	#recent_service_list .post_list .item:last-of-type { margin-bottom:0 !important; }
}




/* ----------------------------------------------------------------------
 声アーカイブページ
---------------------------------------------------------------------- */
@media screen and (max-width:1000px) {
  #archive_voice { margin:110px 50px 0; }
	.voice_list .item { padding:30px; }
	.voice_list .image_wrap { }
	.voice_list .content { padding:0 0 0 30px; flex-direction:column; justify-content:space-between; }
	.voice_list .title { margin:0; width:auto; }
	.voice_list .item:not(:has(img)) .title { margin-bottom:25px; }
  .voice_list .meta { display:block; font-size:16px; margin:0 0 -5px 0; width:auto; }
	.voice_list .meta li { margin:0 0 5px 0; line-height:1.6; }
	.voice_list .desc { display:none; padding:25px 30px; line-height:2; }
	.voice_list .desc.mobile { display:block; margin-top:30px; }
  #voice_sort_button_wrap { padding:0; }
	#voice_sort_button_slider { padding:0 50px; }
	#voice_sort_button_wrap .voice_sort_button_next { display:none }
  #voice_sort_button_wrap .voice_sort_button_prev { display:none; }
}
@media screen and (max-width:800px) {
  #archive_voice { margin:30px 20px 0; padding-bottom:0; }
	.voice_list { margin:0; }
	.voice_list .item { padding:30px 0; border:none; border-top:1px solid #ddd; border-radius:0; margin:0; justify-content:space-between; }
	.voice_list .image_wrap { width:160px; height:235px; }
	.voice_list .content { width:calc(100% - 160px); padding-left:20px; }
	.voice_list .title { font-size:16px; }
	.voice_list .meta { font-size:14px; }
	.voice_list .link a::after { font-size:14px; right:auto; top:1px; position:relative; display:inline; margin-left:5px; }
	.voice_list .desc { font-size:14px; }
	#archive_voice .page_navi { padding:40px 0 0; margin:0 0px 40px; border-top:1px solid #ddd; }
	#voice_sort_button_wrap { padding:0; margin:30px 0 40px; }
	#voice_sort_button_slider { padding:0 20px; }
	#voice_sort_button .item { height:40px; }
	.ajax_post_list_wrap .entry-more { padding:30px 0; margin:0; border-top:1px solid #ddd; }
	.ajax_post_list_wrap .entry-loading { height:auto; line-height:1; padding:48px 0 48px; margin:0; border-top:1px solid #ddd; }
}
@media screen and (max-width:350px) {
	.voice_list .item { display:block; }
	.voice_list .image_wrap { margin:0 auto 20px; width:200px; height:auto; aspect-ratio:160 / 235; }
	.voice_list .content { width:100%; padding-left:0px; }
	.voice_list .title { margin-bottom:15px;  }
	.voice_list .link a { display:inline-block; }
	.voice_list .desc { margin-top:20px; }
	.voice_list .desc.mobile { display:block; margin-top:20px; }
}



/* ----------------------------------------------------------------------
 お知らせアーカイブページ
---------------------------------------------------------------------- */
@media screen and (max-width:1000px) {
  #archive_news { margin:110px 50px 0; }
	.news_list { display:flex; flex-wrap:wrap; margin:0 0 -20px 0; }
  .news_list .item { display:flex !important; flex-direction:column; width:calc(50% - 10px); margin:0 20px 20px 0; height:auto; }
  .news_list .item:nth-child(2n) { margin-right:0; }
	.news_list .animate_background { width:100%; aspect-ratio:320 / 210; border-radius:7px 7px 0 0; margin-bottom:-1px; }
	.news_list .content { width:100%; padding:20px 20px 15px; border:1px solid #ddd; border-radius:0 0 7px 7px; position:relative; flex-grow:1; display:flex; flex-direction:column; justify-content:flex-start; }
	.news_list .meta { margin-bottom:0px; }
	.news_list .category { margin:0 15px 15px 0; height:30px; line-height:30px; font-size:12px; }
	.news_list .title { font-size:16px; }
	.news_list .desc { display:none; }
	.news_list .date_list { margin-bottom:5px;  }
}
@media screen and (max-width:800px) {
  #archive_news { margin:30px 20px 0; padding-bottom:40px; }
}
@media screen and (max-width:600px) {
	body:not(.home) .news_list { display:block; margin:0; }
  body:not(.home) .news_list .item { display:block !important; width:100%; margin:0 0 20px 0; }
	body:not(.home) .news_list .item:last-of-type { margin-bottom:0; }
}




/* ----------------------------------------------------------------------
 ページ上部　ヘッダー
---------------------------------------------------------------------- */
@media screen and (max-width:1300px) {
  #header { height:60px !important; width:100%; position:sticky; display:block; background:#fff !important; }
	body.start_scroll #header { box-shadow:0 0 10px 1px rgba(0,0,0,0.2); }
}


/* ロゴ */
@media screen and (max-width:1300px) {
	#header_logo { position:relative; top:auto; left:auto; width:auto; text-align:left; height:100%; margin:0; padding:0 0 0 20px; }
	#header_logo img { max-height:calc(100% - 20px); width:auto; margin:0; }
  #header_logo img.pc { display:none; }
  #header_logo img.mobile { display:block; }
	#header_logo a .logo_text { text-align:left; padding:0 80px 0 0; }
}


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


/* グローバルメニュー */
@media screen and (max-width:1300px) {
  #global_menu { display:none; }
}


/* サイドボタン */
@media screen and (max-width:1300px) {
  #side_icon_button { display:none; }
}


/* メッセージ */
@media screen and (max-width:1300px) {
  #header_message { width:100%; margin:0; }
}
@media screen and (max-width:1200px) {
  #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:1300px) {
  #bread_crumb { width:auto !important; padding:0 80px; }
	body:not(:has(#page_header)) #bread_crumb { border-top:1px solid #ddd; }
}
@media screen and (max-width:1000px) {
  #bread_crumb { padding:0 50px; height:60px; }
	#bread_crumb ul { height:60px; line-height:60px; }
}
@media screen and (max-width:800px) {
  #bread_crumb { height:50px; padding:0 20px; margin:0 0 35px 0; overflow:auto; overflow-y:hidden; scrollbar-width: thin; }
	body.single #bread_crumb { margin-bottom:30px; }
	body.single-service #bread_crumb { border-top:1px solid #ddd; }
	body.post-type-archive-service:not(:has(.archive_catch)):not(:has(.archive_desc)) #bread_crumb { margin-bottom:-1px; }
	body.post-type-archive-voice:not(:has(.archive_catch)):not(:has(.archive_desc)) #bread_crumb { margin-bottom:-1px; }
	#bread_crumb ul { overflow:visible; height:50px; line-height:50px; }
	#bread_crumb li.category { flex:0 0 auto; overflow:visible; text-overflow:clip; white-space:normal; }
	#bread_crumb li:last-of-type { flex: 0 0 auto; padding-right:20px; overflow:visible; text-overflow:clip; white-space:normal; }
}




/* ----------------------------------------------------------------------
 モバイル用ドロワーメニュー
---------------------------------------------------------------------- */
/* ドロワーメニュー開閉ボタン */
@media screen and (max-width:1300px) {
  #drawer_menu_button { width:60px; height:60px; display:block; position:absolute; right:0; top:0; cursor:pointer; opacity:0; transition: opacity 1.5s ease 0.2s; }
  body.start_first_animation #drawer_menu_button { opacity:1; }
  #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:1300px) {
  #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; }
#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; background:#fff; }
#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;
  background:var(--main_color); color:#fff !important; font-size:14px; transition:none;
  overflow:hidden; white-space:nowrap; text-overflow:ellipsis; visibility:visible;
}
#mobile_menu li li a { font-size:14px; 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 { font-family:'normal_icon'; content:'\e940'; font-size:30px; display:block; color:#fff; position:absolute; top:12px; left:8px; }
#mobile_menu li.open > .child_menu_button:after { transform:rotate(180deg); top:9px;}
#mobile_menu li.open > a { border-bottom:none; }
#mobile_menu li li a { background:rgba(var(--main_color_hex),0.9); 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 { }
#mobile_menu li ul { }


/* SNS */
#mobile_sns { margin:12px 20px -10px; }
#mobile_sns.color_type1 li a:before { color:#fff; }


/* 検索フォーム */
#drawer_menu_search { margin:35px 20px 0; position:relative; width:auto; }
#drawer_menu_search .input_area { background:#dddddd; width:100%; height:50px; border-radius:4px; position:relative; }
#drawer_menu_search .input_area input { font-size:14px; border:none; background:none; height:50px; width:calc(100% - 50px); position:absolute; left:0px; top:2px; padding:0 10px 0 15px; color:#000; }
#drawer_menu_search .button_area { width:50px; height:50px; position:absolute; right:0px; top:0px; }
#drawer_menu_search .button_area input { width:50px; height:50px; border:none; background:none; cursor:pointer; }
#drawer_menu_search .button_area:before {
  display:block; text-align:center; cursor:pointer; z-index:1; pointer-events:none;
  position:absolute; font-family:'normal_icon'; color:#000; font-size:16px; content:'\e94c'; left:14px; top:19px;
  -webkit-transition: color 0.25s ease; transition: color 0.25s ease;
}


/* ボタン */
#drawer_icon_button { margin:30px 20px 20px; }
#drawer_icon_button a { margin:20px 0 0 0; font-size:14px; font-weight:600; padding:3px 20px 0; display:flex; flex-wrap:wrap; align-items:center; justify-content:center; width:100%; height:50px; line-height:1.4; text-align:center; border:1px solid rgba(255,255,255,0.2);  color:#fff !important; text-decoration:none !important; border-radius:5px; }
#drawer_icon_button a[href^="tel:"] .large-font { font-size:18px; }
#drawer_icon_button .icon { font-family: 'normal_icon'; font-size:24px; margin:0 10px 0 0; font-weight:100; }
#drawer_icon_button .icon.icon_type_sns { font-family:"sns_icon"; font-size:20px; font-weight:400; }
#drawer_icon_button .icon.User { font-size:26px; }
#drawer_icon_button .icon.Twitter { font-size:18px; }
#drawer_icon_button .icon.Facebook { font-size:23px; }
#drawer_icon_button .icon.LINE { font-size:22px; }
#drawer_icon_button .icon.no_icon { display:none; }




/* ----------------------------------------------------------------------
 ブログ詳細ページ
---------------------------------------------------------------------- */
/* タイトルエリア */
@media screen and (max-width:800px) {
	#single_post_header { margin:0 0 35px; }
	#single_post_header .meta { margin-right:-15px; margin-bottom:0px; }
	body.single-news #single_post_header .meta { margin-bottom:10px; }
	#single_post_header .category { height:30px; line-height:30px; font-size:12px; margin-right:15px; }
	#single_post_header .news_category { height:30px; line-height:30px; font-size:12px; }
  #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; border-radius:0; }
}
@media screen and (max-width:500px) {
	#single_post_header .news_category { display:inline-block; }
}


/* 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; margin-bottom:35px; }
	#post_pagination a, #post_pagination p { margin:0 5px 0 0; font-size:12px; width:40px; height:40px; line-height:40px; }
}


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


/* ナビゲーション */
@media screen and (max-width: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:800px) {
  #single_related_post { margin:40px -20px 0; }
	body.single-news #single_related_post { margin-bottom:0; }
  #single_related_post .headline { font-size:18px; padding:20px 0 0 0; margin:0 auto 40px; }
	#single_related_post .related_post_carousel { padding:0 20px; }
	#single_related_post .item { width:270px; margin:0 0 1px 0; display:flex; flex-direction:column; height:auto; }
	#single_related_post .animate_background { width:100%; }
	#single_related_post .image_wrap { border-radius:7px 7px 0 0; }
  #single_related_post .content { width:100%; border:1px solid #ddd; border-top:none; padding:20px 20px 10px; border-radius:0 0 7px 7px; flex-grow:1; display:flex; flex-direction:column; justify-content:flex-start; }
	#single_related_post .category { margin:0 0 13px 0; display:inline-block; height:30px; line-height:30px; min-width:100px; text-align:center; padding:0 15px; border:1px solid var(--main_color); color:var(--main_color); background:#fff; font-size:12px; border-radius:5px; }
	#single_related_post .title { font-size:16px; }
}




/* ----------------------------------------------------------------------
 その他のページ
---------------------------------------------------------------------- */
/* 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:1000px) {
	.footer_widget_content { padding:50px; }
}
@media screen and (max-width:800px) {
	.footer_widget_content { padding:50px 20px; font-size:14px; }
	#footer_info { font-size:14px; padding:15px 20px; }
	#footer .bg_image.mobile { display:block; }
	#footer .bg_image.pc { display:none; }
}
@media screen and (max-width:700px) {
	#footer_widget_area { display:block; }
	.footer_widget_content { width:auto; border-right:none; padding:40px 20px; }
	.footer_widget_content.widget_text { padding:35px 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.2); padding:16px 20px 11px; margin-bottom:0; }
  #footer_sns li { margin:0 7px 4px; }
  #footer_sns.color_type1 li a:before { color:#fff; }
}


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


/* ページ上部へ戻るボタン */
@media screen and (max-width:1000px) {
	#return_top { height:50px; line-height:50px; }
	#return_top:before { font-size:16px; top:2px; }
}




/* ----------------------------------------------------------------------
 ウィジェット
---------------------------------------------------------------------- */
/* 基本設定 */
@media screen and (max-width:1000px) {
  #side_col .widget_content { width:calc(50% - 25px); max-width:300px; }
  #side_col .widget_content:last-of-type { margin-bottom:40px; }
}
@media screen and (max-width:800px) {
	.widget_headline { font-weight:600; font-size:16px; height:50px; line-height:50px; padding:0 20px; }
	#side_col .widget_content { width:calc(50% - 10px); margin-bottom:40px; }
	.widget_content { font-size:14px; }
}
@media screen and (max-width:600px) {
	#side_col .widget_content { width:auto; margin-left:auto; margin-right:auto; max-width:100%; }
}


/* インフォメーション */
@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) {
	.news_slider_widget .item { padding:20px; }
	.news_slider_widget .animate_background { width:calc(100% + 40px); margin:-20px -20px 20px; }
  .news_slider_widget .category { height:30px; line-height:30px; font-size:12px; }
}


/* 予約情報 */
@media screen and (max-width:800px) {
  .reserve_widget .desc { line-height:2; margin-top:-5px; }
  .reserve_widget .reserve_button { font-size:14px;height:50px; }
  .reserve_widget .reserve_button[href^="tel:"] .large-font { font-size:18px; }
}


/* タブ記事 */
@media screen and (max-width:800px) {
  .widget_tab_post_list_button div { height:50px; line-height:50px; }
	.no_tab + .widget_tab_post_list .title_area { padding:0 20px; }
}


/* アーカイブ　ドロップダウン */
@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 a { height:50px; line-height:50px; padding:0 20px; }
	.widget_categories li li a { padding-left:calc(20px + 1em); }
  .widget_categories li li li a { padding-left:calc(20px + 2em); }
	.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 a { height:50px; line-height:50px; padding:0 20px; }
	.widget_archive li li a { padding-left:calc(20px + 1em); }
  .widget_archive li li li a { padding-left:calc(20px + 2em); }
  .widget_archive li .post-count { top:9px; width:35px; height:35px; line-height:35px; font-size:11px; }
}


/* デフォルトの固定ページ */
@media screen and (max-width:800px) {
  .widget_pages li a { padding:0 20px; height:50px; line-height:50px; }
  .widget_pages li li a { padding-left:calc(20px + 1em); }
  .widget_pages li li li a { padding-left:calc(20px + 2em); }
}


/* デフォルトのナビ　*/
@media screen and (max-width:800px) {
  .widget_nav_menu li a { height:50px; line-height:50px; padding:0 20px; }
	.widget_nav_menu li li a { padding-left:calc(20px + 1em); }
  .widget_nav_menu li li li a { padding-left:calc(20px + 2em); }
}


/* デフォルトのメタウィジェット */
@media screen and (max-width:800px) {
  .widget_meta li a { padding:0 20px; height:50px; line-height:50px; }
  .widget_meta li li a { padding-left:calc(20px + 1em); }
  .widget_meta li li li a { padding-left:calc(20px + 2em); }
}


/* 検索 */
@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:1px; }
}


/* デフォルトの最近の記事 */
@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:18px; }
}


/* 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:not(.has_image) { border-top:1px solid #ddd; }
	#no_search_result .desc { padding:0 50px; width:auto; }
}
@media screen and (max-width:1000px) {
	#no_search_result .tag_list { width:auto; padding:0 50px; }
}
@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; }
	#no_search_result .tag_list { padding:0 20px; margin-top:40px;}
	#no_search_result .desc + .tag_list { margin-top:30px; }
  #no_search_result .wp-tag-cloud a { font-size:12px !important; }
}
@media screen and (max-width:600px) {
	#no_search_result .search_form { padding:0 20px; }
  #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; }
}




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





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