/*
  さとりカスタム CSS — 画面幅1201px以下

  素の SOLARIS 2.15.2 に存在しないルールを、現行テーマ solaris_custom から
  すべて抽出したもの。2026-07-29 作成。

  ※ 当初は「素の2.8.1との差分」で抽出したが、基準にした2.8.1のコピー自体に
     過去の改修（.cta-center / .oval-button など）が混入していたため取りこぼした。
     2.15.2 を基準にすることで、現行サイトが依存するルールが漏れない。
*/


/* ===== 元: css/responsive.css ===== */

@media screen and (max-width:750px) {
  .design_headline1 { font-size:20px !important; margin:0 0 30px 0 !important; padding:0 !important; }
  
  .design_headline2 { font-size:18px !important; margin:33px -20px 35px !important; }
  
  .design_headline2 span { padding-top:15px; }
  
  body.hide_sidebar .design_headline2 { margin-right:-20px !important; padding-right:-20px !important; }
  
  .two_column_image + .design_headline2 { margin-top:40px !important; }
}

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

#case_archive { padding:0 0 100px; width:auto; border:none; }

#case_list { margin:0; }

#case_list .content_inner { padding:50px 50px 50px; }

@media screen and (max-width:950px) {
  #case_list .item { height:500px; }
  
  #case_list .content { height:100%; width:100%; }
}

@media screen and (max-width:750px) {
  #case_archive { padding:0; margin-bottom:-1px; }
  
  #case_list { margin:0; }
  
  #case_archive .square_headline.inview { top:-20px; }
  
  #case_archive .square_headline.inview.animate { top:-60px; }
  
  #case_list .content { position:relative; }
  
  #case_list .content_inner { padding:35px 50px 50px; position:relative; top:auto; -ms-transform: translateY(0%); -webkit-transform: translateY(0%); transform: translateY(0%); }
  
  #case_list .item { height:auto; }
  
  #case_list .catch { margin-top:20px; }
  
  #case_list .desc { line-height:2; margin-top:18px; max-height:6em; }
  
  #case_list .design_button { margin:23px 0 0 0; }
}

@media screen and (max-width:550px) {
  #case_list .design_button a { width:100%; }
}

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

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

.mobile body.single.header_fix_mobile { padding-top:60px; }

#related_post .design_headline2 { margin:0 0 70px 0 !important; }

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

.category_list_widget .square_headline h3 {
  height:60px; line-height:60px; position:relative; top:auto; -ms-transform: translateY(0%); -webkit-transform: translateY(0%); transform: translateY(0%);
  display:-webkit-box; display:-ms-flexbox; display:-webkit-flex; display:flex;
  -ms-flex-wrap:wrap; -webkit-flex-wrap:wrap; flex-wrap:wrap;
  -ms-justify-content:space-between; -webkit-justify-content:space-between; justify-content:space-between;
}

@media screen and (max-width:550px) {
  .category_list_widget .square_headline h3 { height:50px; line-height:50px; }
}

@media screen and (max-width:750px) {
  #comments { margin:40px 0 0 0; }
  
  #comments .design_headline2 { font-size:18px; margin:0 -20px 35px !important; }
}

@media screen and (max-width:750px) {
  .post_content h1, .post_content h2, .post_content h3, .post_content h4, .post_content h5, .post_content h6 { margin:0 0 5px 0; }
  
  .post_content p { line-height:2; }
  
  .post_content li, .post_content dt, .post_content dd { line-height:1.8; }
  
  .post_content td, .post_content th { line-height:1.8; padding:14px 20px; }
}

#it_archive { padding:0 0 100px; width:auto; border:none; }

#case_archive { padding:0 0 100px; width:auto; border:none; }

#marketing_archive_top { padding:0 0 1px 0; width:auto; border:none; }

#marketing_archive_bottom_inner { padding:70px 0 100px 0; width:auto; border:none; }

#tools_archive { padding:0 0 100px; width:auto; }

@media screen and (max-width:750px) {
  #it_archive { padding-bottom:40px; }
  
  body.no_page_nav #it_archive { padding-bottom:0; }
  
  #it_archive .square_headline.inview { top:-20px; }
  
  #it_archive .square_headline.inview.animate { top:-60px; }
  
  #case_archive { padding:0; margin-bottom:-1px; }
  
  #case_archive .square_headline.inview { top:-20px; }
  
  #case_archive .square_headline.inview.animate { top:-60px; }
  
  #marketing_archive_top .square_headline.inview { top:-20px; }
  
  #marketing_archive_top .square_headline.inview.animate { top:-60px; }
  
  #marketing_archive_bottom_inner { padding:40px 0 40px 0; }
  
  #marketing_archive_bottom .top_catch { margin:-5px 0 33px; }
  
  #tools_archive { padding:0 0 40px; }
  
  body.no_page_nav #tools_archive { padding-bottom:0; }
  
  #tools_archive .square_headline.inview { top:-20px; }
  
  #tools_archive .square_headline.inview.animate { top:-60px; }
  
  #tools_archive .project_list .item { width:calc(50% - 12px); margin:0 24px 60px 0; }
  
  #tools_archive .project_list .item:nth-child(2n) { margin-right:0; }
  
  #tools_archive .project_list .item:nth-child(3n) { margin-right:24px; }
}

@media screen and (max-width:550px) {
  #tools_archive .project_list .item { width:100%; margin:0 0 33px 0; }
  
  #tools_archive .project_list .item:nth-child(2n),
    #tools_archive .project_list .item:nth-child(3n) { margin-right:0; }
}

@media screen and (max-width:950px) {
  .marketing_list { margin:0 20px; gap:12px; }
  
  .marketing_list .item { width:calc(50% - 6px); }
  
  .marketing_list .image_wrap { height:180px; }
  
  .marketing_group_heading { margin:0 20px 16px; }
}

@media screen and (max-width:750px) {
  .marketing_list { display:block; margin:0 20px; gap:0; }
  
  .marketing_list .item { width:100%; margin:0 0 20px 0; }
  
  .marketing_group_heading { margin:0 20px 24px; }
  
  .marketing_group { margin-bottom:40px; }
}

@media screen and (max-width:550px) {
  .marketing_list .image_wrap { height:160px; }
}
