0@charset "utf-8";
/*
Theme Name:genesis_child
Template:genesis_tcd103
Version:1.12.3
*/

/* フリースペース */
.cb_free_space:has(.cb_ex_introduction_list) { padding:0; }
.cb_free_space .post_content:has(.cb_ex_introduction_list) { max-width:initial; margin:0 auto; padding:0; }
.cb_free_space .post_content .cb_ex_introduction_list a {
	text-decoration: none;
	color: inherit;
}
.cb_free_space .post_content .solution_category_button li.current a,
.cb_free_space .post_content .ex_introduction_category_button li.current a {
	color: #fff;
}

/* 導入事例カルーセル */
.cb_ex_introduction_list { padding:150px 0; }
.cb_ex_introduction_list:nth-child(even) { background:#f6f6f6; }
.ex_introduction_carousel_wrap { width:auto; margin:0 auto !important; padding:0 100px !important; }
@media only screen and (min-width: 1720px) {
  .ex_introduction_carousel_wrap { padding-left:calc(50% - 750px) !important; padding-right:calc(50% - 750px) !important; }
}
.ex_introduction_carousel { -webkit-user-select:none; user-select:none; }
.ex_introduction_carousel .item { position:relative; width:385px; margin: 0 50px 0 0; }
.ex_introduction_carousel .image_link { display:block; width:100%; height:auto; position:relative; z-index:1; overflow:hidden; border-radius:5px; aspect-ratio:385 /260; margin: 0 0 30px 0;}
.ex_introduction_listex_introduction_carousel.image_wrap { width:100%; height:100%; position:relatiive; overflow:hidden; z-index:2; }
.ex_introduction_carousel .image_wrap img { width:100%; height:100%; position:absolute; top:0; left:0; object-fit:cover; }
.ex_introduction_carousel .content { width:auto; }
.ex_introduction_carousel .no_image .content { width:auto; padding:0; }
.ex_introduction_carousel .category_button { margin-bottom:25px; min-width: 90px;}
.ex_introduction_carousel .title { font-size:20px; line-height:1.8; margin-bottom:20px; }
.ex_introduction_carousel .title a { display:block; max-height:3.6em; overflow:hidden; visibility:visible; }
.ex_introduction_carousel .title span { display:-webkit-inline-box; -webkit-box-orient:vertical; -webkit-line-clamp:2; }
.ex_introduction_carousel .date { position:relative; color:#999; font-size:16px; margin:0; display:block; }
.ex_introduction_carousel .date:before { font-family:'design_plus'; content:'\e903'; font-size:17px; margin:0 5px 0 0; position:relative; top:1px; }
.ex_introduction_carousel_wrap + .genesis_carousel_scrollbar .swiper-scrollbar { margin-top:60px !important; }
.ex_introduction_carousel_cat_all_wrap + .genesis_carousel_scrollbar .swiper-scrollbar { margin-top:60px !important; }
#index_ex_introduction_list_wrap { position:relative; }
.index_ex_introduction_list { display:none; pointer-events:none; }
.index_ex_introduction_list.active { display:block; pointer-events:auto; }
.ex_introduction_carousel_wrap { opacity:0; position:relative; }
.ex_introduction_carousel_cat_all_wrap { opacity:0; transform: translate3d(140px,0,0); }
.cb_ex_introduction_list .main_content.animate .ex_introduction_carousel_cat_all_wrap { opacity:1; transform: translate3d(0,0,0); transition: transform 1.4s cubic-bezier(0.22, 1, 0.36, 1) 0.2s, opacity 1.4s cubic-bezier(0.22, 1, 0.36, 1) 0.2s; }
.index_ex_introduction_list.active .ex_introduction_carousel_wrap { animation: index_ex_introduction_tab_animate 1.4s cubic-bezier(0.22, 1, 0.36, 1) forwards 0.2s; }
@keyframes index_ex_introduction_tab_animate {
  0% { opacity:0; top:0px; left:140px; }
  100% { opacity:1; top:0px; left:0; }
}
.cb_ex_introduction_list .main_content .ex_introduction_category_button, .cb_ex_introduction_list .main_content .genesis_carousel_scrollbar { position:relative; transform: translate3d(0,30px,0); opacity:0; transition: opacity 1.4s ease 0s, transform 1.4s cubic-bezier(0.22, 1, 0.36, 1) 0s; }
.cb_ex_introduction_list .main_content.animate .ex_introduction_category_button, .cb_ex_introduction_list .main_content.animate .genesis_carousel_scrollbar { transform: translate3d(0,0,0); opacity:1; }

/* カテゴリー一覧 */
.ex_introduction_category_button { 
    position: relative; 
    width: auto; 
    margin: 0 auto 55px;
    padding:0 100px !important;
}

@media only screen and (min-width: 1720px) {
    .ex_introduction_category_button { 
        padding-left: calc(50% - 750px) !important; 
        padding-right: calc(50% - 750px) !important; 
    }
}

.ex_introduction_category_button ol { 
    -webkit-user-select: none; 
    user-select: none; 
    display: flex;
    flex-wrap: nowrap; 
    gap: 1em 0; /* 各項目間の間隔 */
    padding: 0;
    list-style: none; /* ol要素のデフォルトのスタイルを削除 */
}

.ex_introduction_category_button li { 
    flex: 0 0 auto; /* アイテムが自動で幅を取るようにする */
    width: auto; 
    margin-right: 20px; 
}

.ex_introduction_category_button li:last-of-type { 
    margin-right: 0; 
}

.ex_introduction_category_button a { 
    height: 50px; 
    line-height: 50px; 
    border: 1px solid #ddd; 
    padding: 0 15px; 
    display: block; 
    border-radius: 50px; 
    text-align: center; 
    background: #fff;
	  white-space: nowrap; /* ボタン内のテキストが折り返されないようにする */ 
}

.ex_introduction_category_button a:hover { 
    color: #333; 
}

.ex_introduction_category_button li.current a { 
    background: #000; 
    border-color: #000; 
    color: #fff; 
    pointer-events: none; 
}

.ex_introduction_category_button + .genesis_carousel_scrollbar { 
    top: -25px !important; 
}

/* 追加 */
.ex_introduction_category_button ol {
    margin-left: 0em !important;
}

.single-ex_introduction #bread_crumb {
    max-width: 1700px !important;
    margin: 38px auto 130px !important;
}


/* 導入事例一覧 */
#archive_ex_introduction { position:relative; max-width:1700px; margin:0 auto; padding:0 100px 150px; }
.ex_introduction_list { display:flex; flex-wrap:wrap; position:relative; margin-bottom: -50px; }
.ex_introduction_list .item { position:relative; width: calc(100% / 3 - 32px); margin:0 48px 50px 0; }
#archive_ex_introduction .ex_introduction_list .item:nth-child(3n) { margin-right:0; }
.ex_introduction_list:after { content: ""; display: block; width: calc(100% / 3 - 32px); height: 0; }
.ex_introduction_list .image_link { display:block; width:100%; height:auto; position:relative; z-index:1; overflow:hidden; border-radius:5px; aspect-ratio:385 /260; margin: 0 0 30px 0;}
.ex_introduction_list .image_wrap { width:100%; height:100%; position:relatiive; overflow:hidden; z-index:2; }
.ex_introduction_list .image_wrap img { width:100%; height:100%; position:absolute; top:0; left:0; object-fit:cover; }
.ex_introduction_list .no_image .content { width:auto; padding:0; }
.ex_introduction_list .category_button { margin-bottom:20px; min-width: 90px;}
.ex_introduction_list .title { font-size:20px; line-height:1.8; margin-bottom:20px; }
.ex_introduction_list .title a { display:block; max-height:3.6em; overflow:hidden; visibility:visible; }
.ex_introduction_list .title span { display:-webkit-inline-box; -webkit-box-orient:vertical; -webkit-line-clamp:2; }
.ex_introduction_list .date { position:relative; color:#999; font-size:16px; margin:0; display:block; }
.ex_introduction_list .date:before { font-family:'design_plus'; content:'\e903'; font-size:17px; margin:0 5px 0 0; position:relative; top:1px; }


/* ----------------------------------------------------------------------
レスポンシブ：導入事例
---------------------------------------------------------------------- */
/* カルーセル */
.ex_introduction_carousel .title {
	margin-top:inherit;
	margin-left:inherit;
	margin-right:inherit;
	margin-bottom: 20px;
}
@media screen and (max-width:1391px) {
	.ex_introduction_carousel_wrap { padding:0 60px !important; }
}
@media screen and (max-width:1100px) {
	.ex_introduction_carousel_wrap { /*height:190px;*/ padding:0 40px !important; }
  .ex_introduction_carousel .item { width: 260px;
      margin: 0 20px 0 0; }
	.ex_introduction_carousel .image_link { margin: 0 0 20px 0; }
	.ex_introduction_carousel .content {  width: 260px; }
	.ex_introduction_carousel .category_button { margin-bottom:15px; }
	.ex_introduction_carousel .title { font-size: 16px;
	margin-top: 0px;
	    margin-bottom: 13px;
	    line-height: 1.6; }
	.ex_introduction_carousel .date { font-size:14px; }
	.ex_introduction_carousel .date::before { font-size:16px; top:1.5px; }
}
@media screen and (max-width:800px) {
	.cb_ex_introduction_list { padding:40px 0; }
	.cb_ex_introduction_list .design_header { margin-bottom:40px; }
	.ex_introduction_carousel_wrap { /*height:195px;*/ padding:0 20px !important; }
	.ex_introduction_carousel_wrap + .genesis_carousel_scrollbar .swiper-scrollbar { margin-top:40px !important; }
	.ex_introduction_carousel_cat_all_wrap + .genesis_carousel_scrollbar .swiper-scrollbar { margin-top:40px !important; }
	.cb_ex_introduction_list .cb_design_arrow_button { margin-top:35px; }
}

/* カテボタン */
@media screen and (max-width:1391px) {
    .ex_introduction_category_button { padding:0 60px !important; }
}
/* 一覧 */
@media screen and (max-width:1391px) {
    #archive_ex_introduction { max-width:inherit; padding:0 60px 150px; }
}
@media screen and (max-width:1100px) {
.ex_introduction_category_button { padding:0 40px !important; margin-top:-12px; }
	.ex_introduction_category_button li { margin-right:10px; }
.ex_introduction_category_button li:last-of-type { margin-right:0; }
	.ex_introduction_category_button a { height:40px; line-height:40px; padding:0 20px; font-size:14px; }
  #archive_ex_introduction { padding:0 40px 150px; }
}
@media screen and (max-width:1000px) {
  .ex_introduction_list .item { position:relative; width:calc(50% - 20px); margin:0 40px 50px 0; }
  #archive_ex_introduction .ex_introduction_list .item:nth-child(3n) { margin-right:40px; }
  #archive_ex_introduction .ex_introduction_list .item:nth-child(2n) { margin-right:0px; }
}
@media screen and (max-width:800px) {
.ex_introduction_category_button { padding:0 20px !important; margin:0px 0 40px 0; }

  #archive_ex_introduction { padding:0 20px 40px; }
	body.paged #archive_ex_introduction { padding-top:20px; }
	.ex_introduction_list { margin-bottom:-30px; }
  .ex_introduction_list .item { position:relative; width:calc(50% - 10px); margin:0 20px 30px 0; }
  #archive_ex_introduction .ex_introduction_list .item:nth-child(3n) { margin-right:20px; }
  #archive_ex_introduction .ex_introduction_list .item:nth-child(2n) { margin-right:0px; }
	.ex_introduction_list .title { font-size:16px; margin-bottom:10px; }
	.ex_introduction_list .date { font-size:14px; }
	.ex_introduction_list .date::before { font-size:16px; top:1.5px; }
	.ex_introduction_list .image_link { margin-bottom:20px; }
	.ex_introduction_list .category_button { margin-bottom:15px; }
}
@media screen and (max-width:600px) {
	#archive_ex_introduction .ex_introduction_list { display:block; margin-bottom:0; }
  .ex_introduction_list .item { width:auto; margin:0 0 30px 0; }
  #archive_ex_introduction .ex_introduction_list .item:nth-child(3n) { margin-right:0; }
}

.ajax_post_list_wrap .ex_introduction-more span { display:block; margin:60px auto 0; }
.ajax_post_list_wrap .ex_introduction-more.is-hide { display:none; }


/* ----------------------------------------------------------------------
 3D凍結ラボ
---------------------------------------------------------------------- */

/* 記事ページに前後の投稿表示 */
#next_prev_post {
    margin: 60px 0 0;
    position: relative;
    display: flex;
    flex-wrap: wrap;
  }  

/* カルーセル */
.cb_blog_list .main_content .blog_category_button, .cb_blog_list .main_content .genesis_carousel_scrollbar { position:relative; transform: translate3d(0,30px,0); opacity:0; transition: opacity 1.4s ease 0s, transform 1.4s cubic-bezier(0.22, 1, 0.36, 1) 0s; }
.cb_blog_list .main_content.animate .blog_category_button, .cb_blog_list .main_content.animate .genesis_carousel_scrollbar { transform: translate3d(0,0,0); opacity:1; }

/* カテゴリー一覧 */
.blog_category_button { 
    position: relative; 
    width: auto; 
    margin: 0 auto 55px;
    padding:0 100px !important;
}

@media only screen and (min-width: 1720px) {
    .blog_category_button { 
        padding-left: calc(50% - 750px) !important; 
        padding-right: calc(50% - 750px) !important; 
    }
}

.blog_category_button ol { 
    -webkit-user-select: none; 
    user-select: none; 
    display: flex;
    flex-wrap: nowrap; 
    gap: 1em 0;
    padding: 0;
    list-style: none; /* ol要素のデフォルトのスタイルを削除 */
}

.blog_category_button li { 
    flex: 0 0 auto; /* アイテムが自動で幅を取るようにする */
    width: auto; 
    margin-right: 20px; 
}

.blog_category_button li:last-of-type { 
    margin-right: 0; 
}

.blog_category_button a { 
    height: 50px; 
    line-height: 50px; 
    border: 1px solid #ddd; 
    padding: 0 15px; 
    display: block; 
    border-radius: 50px; 
    text-align: center; 
    background: #fff;
	  white-space: nowrap; /* ボタン内のテキストが折り返されないようにする */ 
}

.blog_category_button a:hover { 
    color: #2c3753;
    border-color: #2c3753;
}

.cb_blog_list .blog_category_button + .genesis_carousel_scrollbar .swiper-scrollbar {
    display: none;
  }
  

/* 追加 */
.blog_category_button ol {
    margin-left: 0em !important;
}

.blog_category_button .swiper-wrapper {
    cursor: grab; /* ドラッグできることを示すカーソル */
}

.blog_category_button .swiper-wrapper:active {
    cursor: grabbing; /* ドラッグ中の見た目 */
}

/* レスポンシブ */
@media screen and (max-width:1391px) {
    .blog_category_button { padding:0 60px !important; }
    }
@media screen and (max-width:1100px) {
    .blog_category_button { padding:0 40px !important; margin-top:-12px; }
        .blog_category_button li { margin-right:10px; }
    .blog_category_button li:last-of-type { margin-right:0; }
        .blog_category_button a { height:40px; line-height:40px; padding:0 20px; font-size:14px; }
      #archive_blog { padding:0 40px 150px; }
    }
@media screen and (max-width:1000px) {
  .blog_list .item { position:relative; width:calc(50% - 20px); margin:0 40px 50px 0; }
  #archive_blog .blog_list .item:nth-child(3n) { margin-right:40px; }
  #archive_blog .blog_list .item:nth-child(2n) { margin-right:0px; }
}
@media screen and (max-width:1000px) {
    .blog_list .item { position:relative; width:calc(50% - 20px); margin:0 40px 50px 0; }
    #archive_blog .blog_list .item:nth-child(3n) { margin-right:40px; }
    #archive_blog .blog_list .item:nth-child(2n) { margin-right:0px; }
  }
@media screen and (max-width:800px) {
    .blog_category_button { padding:0 20px !important; margin:0px 0 40px 0; }
    #archive_blog { padding:0 20px 40px; }
	body.paged #archive_blog { padding-top:20px; }
	.blog_list { margin-bottom:-30px; }
  .blog_list .item { position:relative; width:calc(50% - 10px); margin:0 20px 30px 0; }
  #archive_blog .blog_list .item:nth-child(3n) { margin-right:20px; }
  #archive_blog .blog_list .item:nth-child(2n) { margin-right:0px; }
	.blog_list .title { font-size:16px; margin-bottom:10px; }
	.blog_list .date { font-size:14px; }
	.blog_list .date::before { font-size:16px; top:1.5px; }
	.blog_list .image_link { margin-bottom:20px; }
	.blog_list .category_button { margin-bottom:15px; }
}
@media screen and (max-width:600px) {
	#archive_blog .blog_list { display:block; margin-bottom:0; }
  .blog_list .item { width:auto; margin:0 0 30px 0; }
  #archive_blog .blog_list .item:nth-child(3n) { margin-right:0; }
}

/* 20250918 製品ラインナップの追加 */
.post_content h2.-lineup {
    font-size: 18px;
    background: #606060;
    color: #FFFFFF;
    line-height: 1.4;
    margin-top: 2em;
    padding: 10px;
    text-align: center;
}

.lineup .vk_slider_item_container {
    margin-top: 152px;
}

.vk_slider_item-10377bbc-9870-4a2e-853e-ada40d02f443 {
    background-image: url(https://kogasun.com/wp-content/uploads/2024/09/table_slider.png);
    background-size: cover !important;
    background-position: center !important;
}

@media screen and (max-width:800px) {
    .post_content h2.-lineup {
        margin: 5em 0 -3em 0;
    }
}

/* 20250918 製品の特長について*/
#features {
    margin-top: 50px;
}

#features .wp-block-image {
    text-align: center;
}

#features .br-800,
#features .br-450 {
    display: none;
}

.post_content h2.-gray {
    font-size: 18px;
    background: #606060;
    color: #FFFFFF;
    line-height: 1.4;
    margin: 2em 0 2em 0;
    padding: 10px;
    text-align: center;
}

#features .pad_adjust .q_frame {
    padding: 1em 0.1em;
}


#features .q_frame {
    line-height: 1.8;
    position: relative;
    padding: 1.3em 2em;
    margin-bottom: 2em;
    border: 1px solid #ddd;
}

#features .q_frame1 {
    background: #008bc0;
    border-radius: 10px;
    border-width: 1px;
    border-color: #008bc0;
    border-style: solid;
}

#features .fs_change1 {
    color: #ffffff;
    font-size: clamp(15px, 3vw, 28px);
}

#features .fs_change2 {
    color: #ffffff;
    font-size: clamp(18px, 3vw, 36px);
    white-space: nowrap;
}

#features .link-btn {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    max-width: 320px;
    height: 64px;
    padding: 6px 24px;
    color: #fff;
    text-align: center;
    background-color: #333;
    margin: 0 auto;
}

#features .link-btn:hover {
    color: #fff;
    text-decoration: none;
}

@media screen and (max-width: 800px) {
    #features .br-800 {
        display: inline;
    }
}

@media (min-width: 782px) {
    #features .fs_change3 {
        color: #ffffff;
        font-size: clamp(14px, 1.5vw, 18px);
    }
}

@media (max-width: 781px) {
    #features .responsive_box2 {
        display: flex;
        flex-direction: row;
        gap: 0.5em;
    }

    #features .column_second {
        order: 2;
        flex-basis: 40% !important;
        width: 49%;
        flex: 1 1 49%;
    }

    #features .wp-block-columns:not(.is-not-stacked-on-mobile)>.wp-block-column {
        flex-basis: 100% !important;
    }

    #features .wp-block-columns:not(.is-not-stacked-on-mobile)>.wp-block-column {
        width: 100%;
        flex-basis: 100% !important;
    }

    #features .column_first {
        order: 1;
    }

    #features .freezer-img-2role img {
        width: 60%;
    }

    #features .column_second {
        order: 2;
        flex-basis: 40% !important;
        width: 49%;
        flex: 1 1 49%;
    }

    #features .column_third {
        order: 2;
        flex-basis: 40% !important;
        width: 49%;
        flex: 1 1 49%;
    }

    #features .fs_change3 {
        color: #ffffff;
        font-size: clamp(10px, 2.5vw, 18px);
        line-height: 1.5;
        white-space: nowrap;
    }
}

#features .post_content {
    max-width: 1700px;
    margin: 0 auto;
    overflow: hidden;
}

@media screen and (max-width: 1391px) {
    #features .post_content {
        max-width: inherit;
    }
}

@media screen and (max-width: 1100px) {
    #features .post_content {
        padding: 0 40px;
    }
}

@media screen and (max-width: 800px) {
    #features .post_content {
        padding: 0 20px;
    }
}

@media screen and (max-width: 450px) {
    #features .br-450 {
        display: inline;
    }
}

/* 20250918 ブラストチラーとショックフリーザーの違いについて */
#difference {
    margin-top: 50px;
    margin-bottom: 50px;
}

#difference .post_content h3 {
    width: 100%;
    font-size: 25px;
    margin: 0 0 0.5em;
    border-bottom: 2px solid #000;
}

#difference .post_content p {
    line-height: 2;
}

#difference .post_content {
    max-width: 1700px;
    margin: 0 auto;
    overflow: hidden;
}

@media screen and (max-width: 1391px) {
    #difference .post_content {
        max-width: inherit;
    }
}

@media screen and (max-width: 1100px) {
    #difference .post_content {
        padding: 0 40px;
    }
}

@media screen and (max-width: 800px) {
    #difference .post_content h3 {
        font-size: 20px;
    }

    #difference .post_content {
        padding: 0 20px;
    }
}
