@charset "utf-8";


/* スクロールバーの非表示・ページ固定 */
html, body { scrollbar-width:none; -ms-overflow-style:none; }
html::-webkit-scrollbar, body::-webkit-scrollbar { display:none; }
body.is-desktop.hide_scrollbar:not(.start_scroll) { position:fixed; overflow-y:scroll; }


/* ----------------------------------------------------------------------
 ヘッダーコンテンツ　ヘッダースライダー
---------------------------------------------------------------------- */
#index_hero_header_wrap { position:relative; width:100%; height:100svh; overflow:hidden; z-index:1; overscroll-behavior:contain; }
body.is-mobile #index_hero_header_wrap:has(#index_hero_header.end_slide):after { content:''; display:block; width:100%; height:50%; position:absolute; left:0; bottom:0; }
#index_hero_header_parallax { position:relative; z-index:-1; top:0; left:0; width:100%; height:100svh; }
#index_hero_header { width:100%; height:100svh; overscroll-behavior:contain; }
#index_hero_header_wrap:has(#index_news_ticker) #index_hero_header { height:calc(100svh - 70px); }
#index_hero_header.disable { pointer-events:none; }
@media (max-width: 1100px) {
  #index_hero_header_wrap:has(#index_news_ticker) #index_hero_header { height:calc(100svh - 60px); }
}

#index_hero_header .item { height:100svh; width:100%; top:0; position:absolute; visibility:hidden; }
#index_hero_header_wrap:has(#index_news_ticker) #index_hero_header .item { height:calc(100svh - 70px); }
#index_hero_header .item .outer,
#index_hero_header .item .inner { width:100%; height:100%; overflow-y:hidden; }
#index_hero_header .item .bg { position:absolute; height:100%; width:100%; top:0; overflow:hidden; }
#index_hero_header .item .content,
#index_hero_header .item .bg_image,
#index_hero_header .item .overlay,
#index_hero_header .item .video { position:absolute; width:100%; height:100%; top:0; left:0; display:block; margin:0; z-index:1; }
#index_hero_header .item .content { position:relative; display:grid; place-items:center; z-index:3; color:#fff; pointer-events:none; }
#index_hero_header .item .overlay { z-index:2; }
#index_hero_header .item .bg_image img,
#index_hero_header .item video { position:absolute; width:100%; height:100%; top:0; left:0; object-fit:cover; }
#index_hero_header .item video { display:none; }
#index_hero_header .item.active video { display:block; }

#index_hero_header .item,
#index_hero_header .item .outer,
#index_hero_header .item .inner,
#index_hero_header .item .bg { will-change:transform; }
body.start_scroll #index_hero_header .item,
body.start_scroll #index_hero_header .item .outer,
body.start_scroll #index_hero_header .item .inner,
body.start_scroll #index_hero_header .item .bg { will-change:auto; } 

@media (max-width: 1100px) {
  #index_hero_header_wrap:has(#index_news_ticker) #index_hero_header .item { height:calc(100svh - 60px); }
}


/* 見出し */
#index_hero_header .headline { font-size:var(--tcd-index-slider-headline-font-size-pc); font-family:var(--tcd-index-slider-headline-font-type); font-weight:600; padding:100px; }
#index_hero_header .content.headline_direction_horizontal .headline { text-align:center; line-height:1.5; }
#index_hero_header .content.headline_direction_vertical .headline { writing-mode:vertical-rl; text-align:left; line-height:2; }
@media (max-width: 1100px) {
  #index_hero_header .headline { font-size: calc( (var(--tcd-index-slider-headline-font-size-pc) + var(--tcd-index-slider-headline-font-size-sp)) / 2 ) ; }
}
@media (max-width: 767px) {
  #index_hero_header .headline { font-size:var(--tcd-index-slider-headline-font-size-sp); padding:50px; }
}


/* キャッチフレーズ */
#index_hero_header .catch { position:absolute; bottom:50px; line-height:1.5; font-weight:600; width:100%; text-align:center; padding:0 100px; margin-top:calc(0.5em - 0.5lh); margin-bottom:calc(0.5em - 0.5lh); }
#index_hero_header .item1 .catch { font-size:var(--tcd-index-slider-catch-font-size-pc1); font-family:var(--tcd-index-slider-catch-font-type1); }
#index_hero_header .item2 .catch { font-size:var(--tcd-index-slider-catch-font-size-pc2); font-family:var(--tcd-index-slider-catch-font-type2); }
#index_hero_header .item3 .catch { font-size:var(--tcd-index-slider-catch-font-size-pc3); font-family:var(--tcd-index-slider-catch-font-type3); }
#index_hero_header .content.catch_position_center .catch { bottom:auto; }
#index_hero_header .catch_image { position:absolute; bottom:50px; left:0; width:100%; padding:0 250px; }
#index_hero_header .catch_image picture { display:block; }
#index_hero_header .catch_image img { display:block; margin:0 auto; width:auto; max-width:100%; }
#index_hero_header .item1 .catch_image img { max-height:var(--tcd-index-catch-image-size-pc1); aspect-ratio:var(--tcd-index-catch-image-aspect-ratio1); }
#index_hero_header .item2 .catch_image img { max-height:var(--tcd-index-catch-image-size-pc2); aspect-ratio:var(--tcd-index-catch-image-aspect-ratio2); }
#index_hero_header .item3 .catch_image img { max-height:var(--tcd-index-catch-image-size-pc3); aspect-ratio:var(--tcd-index-catch-image-aspect-ratio3); }
#index_hero_header .content.catch_position_center .catch_image { bottom:auto; }
@media (max-width: 1100px) {
  #index_hero_header .item1 .catch { font-size: calc( (var(--tcd-index-slider-catch-font-size-pc1) + var(--tcd-index-slider-catch-font-size-sp1)) / 2 ) ; }
  #index_hero_header .item2 .catch { font-size: calc( (var(--tcd-index-slider-catch-font-size-pc2) + var(--tcd-index-slider-catch-font-size-sp2)) / 2 ) ; }
  #index_hero_header .item3 .catch { font-size: calc( (var(--tcd-index-slider-catch-font-size-pc3) + var(--tcd-index-slider-catch-font-size-sp3)) / 2 ) ; }
  #index_hero_header .catch_image { padding:0 150px; }
  #index_hero_header .content.catch_position_center .catch_image { padding:0 70px; }
}
@media (max-width: 767px) {
  #index_hero_header .catch { padding:0 50px; }
  #index_hero_header .item1 .catch { font-size:var(--tcd-index-slider-catch-font-size-sp1); }
  #index_hero_header .item2 .catch { font-size:var(--tcd-index-slider-catch-font-size-sp2); }
  #index_hero_header .item3 .catch { font-size:var(--tcd-index-slider-catch-font-size-sp3); }
  #index_hero_header .catch_image { bottom:20px; padding:0 20px; }
  #index_hero_header .content.catch_position_center .catch_image { padding:0 50px; }
  #index_hero_header .item1 .catch_image img { max-height:var(--tcd-index-catch-image-size-sp1); }
  #index_hero_header .item2 .catch_image img { max-height:var(--tcd-index-catch-image-size-sp2); }
  #index_hero_header .item3 .catch_image img { max-height:var(--tcd-index-catch-image-size-sp3); }
}


/* ドットナビ */
#index_hero_header .dot-navigation { position: absolute; z-index:5; top:50%; transform: translateY(-50%); right:40px; display:flex; flex-direction:column; justify-content:center; gap:20px 0px; }
#index_hero_header_wrap:has(#index_news_ticker) #index_hero_header .dot-navigation { top:calc(50% - 35px); }
#index_hero_header .dot-navigation:has(.dot:only-of-type) { display:none; }
#index_hero_header .dot { width:10px; height:10px; border-radius:100%; background-color:rgba(255,255,255,0.5); border:none; cursor:pointer; transition: background-color 0.3s; }
#index_hero_header .dot.active { background-color:#fff; }
@media(hover: hover) {
  #index_hero_header .dot:hover { background-color:#fff; }
}
@media (max-width: 1100px) {
  #index_hero_header .dot-navigation { right:15px; gap:12px 0px; }
	#index_hero_header .dot { width:7px; height:7px; }
  #index_hero_header_wrap:has(#index_news_ticker) #index_hero_header .dot-navigation { top:calc(50% - 30px); }
}
@media (max-width: 767px) {
	/*
	#index_hero_header .dot-navigation { top:auto !important; bottom:20px; }
  #index_hero_header_wrap:has(#index_news_ticker) #index_hero_header .dot-navigation { bottom:55px; }
	*/
}


/* アニメーション */
#index_hero_header .item .bg_image { transform:scale(1); }
#index_hero_header .item.active .bg_image { transform:scale(1.2); transition: transform 10.0s linear 1s; }
#index_hero_header .item.first_animation .bg_image { transform:scale(1.2); transition: transform 10.0s linear 0s; }

#index_hero_header .item .content { opacity:1; }
#index_hero_header .item.slide_out .content { opacity:0; transition:opacity 0.4s ease 0s; }

#index_hero_header .item .content > * { opacity:0; }
#index_hero_header .item.active .content > *:nth-child(1) { opacity:1; transition:opacity 1.0s ease 0.5s; }
#index_hero_header .item.active .content > *:nth-child(2) { opacity:1; transition:opacity 1.0s ease 1.0s; }


/* ニュースティッカー */
#index_news_ticker { width:100%; height:70px; background:var(--tcd-accent-color); color:#fff; display:flex; flex-wrap:nowrap; font-size:16px; position:relative; z-index:10; }
#index_news_ticker .post_list { flex:1 1 auto; height:100%; position:relative; }
#index_news_ticker .item { display:flex; flex-wrap:nowrap; align-items:center; padding:0 40px; width:100%; height:70px; position:absolute; top:0; left:0; z-index:1; opacity:0; transition: opacity 1.0s ease 0s; }
#index_news_ticker .item.active { transition: opacity 1.0s ease 0.3s; }
#index_news_ticker .item.active, #index_news_ticker .item.first_item { opacity:1; }
#index_news_ticker .c-date { width:110px; font-size:14px; font-weight:500; transition: color 0.25s ease; color:#fff; }
#index_news_ticker .title { width:calc(100% - 110px); transition: color 0.25s ease; overflow:hidden; white-space:nowrap; text-overflow:ellipsis; visibility:visible; }
#index_news_ticker .archive_link { flex:0 1 auto; min-width:180px; height:100%; display:grid; place-items:center; padding:0 40px; }
#index_news_ticker a { color:#fff; }
@media(hover: hover) {
  #index_news_ticker a:hover, #index_news_ticker a:hover .c-date { color:rgba(255,255,255,0.5); }
}
@media (max-width: 1100px) {
  #index_news_ticker { height:60px; font-size:14px; }
  #index_news_ticker .item { padding:0 20px; height:60px; }
  #index_news_ticker .archive_link { min-width:150px; padding:0 20px; }
}
@media (max-width: 767px) {
  #index_news_ticker .archive_link { display:none; }
}




/* ----------------------------------------------------------------------
 トップページ コンテンツビルダー
---------------------------------------------------------------------- */
#content_builder { position:relative; z-index:2; }
.white_bg:not(:has(.color_bg)) + .white_bg { padding-top:0; }


/* デザインコンテンツ */
.cb_design_content { padding:150px 100px; }
.cb_design_content .content_wrap { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; }
.cb_design_content .content_wrap.layout_left { flex-direction:row-reverse; }
.cb_design_content .content { width:calc(50% - 40px); display:flex; flex-direction:column; justify-content:center; gap:50px 0; }
.cb_design_content .catch { font-size:var(--tcd-cb-catch-font-size-pc); font-family:var(--tcd-cb-catch-font-type); line-height:1.6; font-weight:600; margin-top:calc(0.5em - 0.5lh); margin-bottom:calc(0.5em - 0.5lh); }
.cb_design_content .desc :is(.tcdce-body, .editor-styles-wrapper) { line-height:2.6; }
.cb_design_content .design_button { margin:0 !important; }
.cb_design_content .image { width:calc(50% - 40px); height:auto; min-height:700px; aspect-ratio:590 / 700; display:block; border-radius:15px; overflow:hidden; position:relative; }
.cb_design_content .image img { position:absolute; top:0; left:0; width:100%; height:100%; object-fit:cover; }
@media (max-width: 1280px) {
  .cb_design_content { padding:100px 100px; }
  .cb_design_content .content_wrap { display:block; }
  .cb_design_content .content { width:auto; }
	.cb_design_content .catch { text-align:center; }
	.cb_design_content .design_button { margin:0 auto !important; }
  .cb_design_content .image { width:590px; min-height:inherit; margin:100px auto 0; }
}
@media (max-width: 1100px) {
  .cb_design_content .catch { font-size: calc( (var(--tcd-cb-catch-font-size-pc) + var(--tcd-cb-catch-font-size-sp)) / 2) ; }
}
@media (max-width: 1000px) {
  .cb_design_content { padding:70px 50px; }
  .cb_design_content .image { width:400px; margin:70px auto 0; }
}
@media (max-width: 767px) {
  .cb_design_content { padding:40px 20px; }
  .cb_design_content .image { height:auto; margin:40px auto 0; border-radius:5px; aspect-ratio:320 / 380; }
	.cb_design_content .content { gap:30px 0; }
  .cb_design_content .desc :is(.tcdce-body, .editor-styles-wrapper) { line-height:2.4; }
  .cb_design_content .catch { font-size:var(--tcd-cb-catch-font-size-sp); }
}
@media (max-width: 500px) {
  .cb_design_content .image { width:100%; }
}


/* スライドコンテンツ */
.cb_slide_content { background:#000; width:100%; height:200vh; height:200dvh; position:relative; overflow:clip; }
.cb_slide_content:has(.slide_content:nth-child(2)) { height:400vh; height:400dvh; }
.cb_slide_content:has(.slide_content:nth-child(3)) { height:600vh; height:600dvh; }
.cb_slide_content .slide_content { height:100vh; height:100dvh; width:100%; margin-bottom:100vh; margin-bottom:100dvh; backface-visibility:hidden; position:relative; overflow:hidden; }
.cb_slide_content .slide_content:last-child { margin-bottom:0; }
body.is-mobile .cb_slide_content .slide_content { position:sticky; top:0px; }
body.is-mobile .cb_slide_content .slide_content:last-of-type { margin-bottom:0; }
.cb_slide_content .slide_content.active { will-change: transform; }
.cb_slide_content .slide_content:not(.active) { will-change: auto; }
.cb_slide_content .content { z-index:3; position:relative; width:100%; height:100%; display:flex; flex-direction:column; justify-content:center; align-items:center; gap:35px 0; overflow:hidden; padding:0 100px; pointer-events: none; }
.cb_slide_content .headline { font-family:var(--tcd-page-header-font-type); font-weight:600; color:#fff; margin-top:calc(0.5em - 0.5lh); margin-bottom:calc(0.5em - 0.5lh); text-align:center; }
.cb_slide_content .catch { font-family:var(--tcd-catch-font-type); line-height:1.6; font-weight:600; color:#fff; margin-top:calc(0.5em - 0.5lh); margin-bottom:calc(0.5em - 0.5lh); text-align:center; }
.cb_slide_content .desc { position:absolute; top:40px; left:40px; z-index:3; color:#fff; writing-mode:vertical-rl; text-align:left; line-height:2; font-size:20px; font-weight:600; margin-left:calc(0.5em - 0.5lh); margin-right:calc(0.5em - 0.5lh); }
.cb_slide_content .design_button { position:absolute; bottom:0px; right:0px; margin:0 !important; z-index:4; }
.cb_slide_content .overlay { position:absolute; top:0; left:0; width:100%; height:100%; z-index:2; }
.cb_slide_content .image { position:absolute; top:0; left:0; width:100%; height:100vh; z-index:1; display:block; }
.cb_slide_content .image img { position:absolute; top:0; left:0; width:100%; height:100%; object-fit:cover; }

.cb_slide_content .headline { opacity:0; transition: opacity 0.9s ease; }
.cb_slide_content .slide_content.active .headline { opacity:1; transition: opacity 0.9s ease; }
.cb_slide_content .catch { opacity:0; transition: opacity 0.9s ease; }
.cb_slide_content .slide_content.active .catch { opacity:1; transition: opacity 0.9s ease 0.5s; }
.cb_slide_content .desc { opacity:0; transition: opacity 0.9s ease; }
.cb_slide_content .slide_content.active .desc { opacity:1; transition: opacity 0.9s ease 1.0s; }
.cb_slide_content .design_button { left:50%; transform: translate3d(-50%,100%,0); transition: transform 0.5s ease; }
.cb_slide_content .slide_content.active .design_button { transform: translate3d(-50%,0,0); transition: transform 0.5s ease 1.0s; }
@media (max-width: 1100px) {
	.cb_slide_content .headline { opacity:1 !important; }
	.cb_slide_content .catch { opacity:1 !important; }
	.cb_slide_content .content:has(.headline) .catch { font-size:clamp(16px, 25px, calc( (var(--tcd-catch-font-size-pc) + var(--tcd-catch-font-size-sp)) / 2)); opacity:1 !important; }
  .cb_slide_content .desc { font-size:16px; opacity:1 !important; }
  .cb_slide_content .design_button { transform: translate3d(-50%,0,0) !important; transition:none !important; }
  .cb_slide_content .slide_content.active .design_button { transition:none !important; }
  body.is-mobile .cb_slide_content .slide_content.active .design_button { position:fixed; }
}
@media (max-width: 1000px) {
	.cb_slide_content .content { padding:0 70px; }
}
@media (max-width: 767px) {
  body:has(.cb_slide_content.active) .p-footer-fix-nav,
  body:has(.cb_slide_content.active) .p-footer-fix-cta-image,
  body:has(.cb_slide_content.active) .p-footer-fix-cta-text { opacity:0; pointer-events:none; }
  .cb_slide_content .content { gap:20px 0; }
  .cb_slide_content .content:has(.headline) .catch { font-size:clamp(16px, 16px, var(--tcd-catch-font-size-sp)); }
  .cb_slide_content .desc { font-size:14px; top:30px; left:30px; }
}


/* サービスカテゴリー */
.cb_service .content_wrap { padding:150px 100px; }
.white_bg + .cb_service .content_wrap:not(.color_bg) { padding-top:0; }
.cb_service:has(.color_bg) + .cb_service .content_wrap { padding-top:150px; }
.cb_service:not(:has(.color_bg)) + .cb_service:has(.color_bg) .content_wrap { padding-top:150px; }
.cb_service .title_area { height:60px; display:flex; flex-wrap:wrap; justify-content:center; margin:0 auto 50px; }
.cb_service .title_area .title { background:var(--tcd-accent-color); display:grid; place-items:center; color:#fff; padding:0 40px; border-radius:60px 0 0 60px; }
.cb_service .title_area .category_name { border:1px solid #ddd; border-left:none; background:#fff; padding:0 40px; display:grid; place-items:center; border-radius:0 60px 60px 0; }
.cb_service .catch { font-size:var(--tcd-cb-catch-font-size-pc); font-family:var(--tcd-cb-catch-font-type); line-height:1.6; font-weight:600; margin-top:calc(0.5em - 0.5lh); margin-bottom:calc(0.5em - 0.5lh); text-align:center; }
.cb_service .main_content  { margin-top:65px; position:relative; }
.cb_service .image { width:calc(100% - 200px); height:auto; aspect-ratio:1050 / 600; position:relative; overflow:hidden; border-radius:15px; z-index; }
.cb_service .image img { position:absolute; top:0; left:0; width:100%; height:100%; object-fit:cover; border-radius:0; }
.cb_service .main_content.layout_right .image { margin-left:auto; }
.cb_service .content { margin:-300px 0 0 auto; width:calc(50% - 40px); background:#fff; padding:70px; box-shadow:0 0 10px 0 rgba(0,0,0,0.2); display:flex; flex-direction:column; justify-content:center; position:relative; z-index:2; }
.cb_service .main_content.layout_right .content { margin:-300px 0 0 0; }
.cb_service .content:has(.design_button) { padding-bottom:140px; }
.cb_service .headline { line-height:1.5; font-size:var(--tcd-cb-headline-font-size-pc); font-family:var(--tcd-cb-headline-font-type); color:var(--tcd-accent-color); margin:calc(0.5em - 0.5lh) 0; }
.cb_service .sub_title { line-height:1.5; font-size:16px; margin-top:15px; margin-bottom:calc(0.5em - 0.5lh); }
.cb_service .desc { margin-top:60px; }
.cb_service .desc .desc_inner p { line-height:2.4; margin-top:calc(0.5em - 0.5lh); margin-bottom:calc(0.5em - 0.5lh); }
.cb_service .design_button { margin:0 !important; position:absolute; right:0; bottom:0; }
.cb_service .sc_image_carousel { margin:150px -100px 0 !important; width:calc(100% + 200px); left:0; }
@media (min-width: 1101px) {
  .cb_service .desc_inner { overscroll-behavior:contain; scrollbar-width:none; -ms-overflow-style:none; }
  .cb_service .desc_inner::-webkit-scrollbar { display:none; }
  .cb_service .scroll_over_content_inner.fade-mask {
    mask-image: linear-gradient(to bottom, transparent 0%, black 10%, black 90%, transparent 100%);
    -webkit-mask-image: linear-gradient(to bottom, transparent 0%, black 10%, black 90%, transparent 100%);
    overflow-y: auto;
  }
  .cb_service .scroll_over_content_inner.no-fade-top {
    mask-image: linear-gradient(to bottom, black 0%, black 50%, transparent 100%);
    -webkit-mask-image: linear-gradient(to bottom, black 0%, black 50%, transparent 100%);
  }
  .cb_service .scroll_over_content_inner.no-fade-bottom {
    mask-image: linear-gradient(to bottom, transparent 0%, black 50%, black 100%);
    -webkit-mask-image: linear-gradient(to bottom, transparent 0%, black 50%, black 100%);
  }
  .cb_service .scroll_over_content_inner.no-fade {
    mask-image: none;
    -webkit-mask-image: none;
  }
}
@media (max-width: 1350px) {
	.cb_service .image img { position:absolute; top:0; left:0; width:100%; height:100%; object-fit:cover; border-radius:0; }
	.cb_service .content { margin:-300px 0 0 auto; width:550px; }
}
@media (max-width: 1280px) {
  .cb_service .content_wrap { padding:100px 100px; }
  .white_bg + .cb_service .content_wrap:not(.color_bg) { padding-top:0; }
  .cb_service:has(.color_bg) + .cb_service .content_wrap { padding-top:100px; }
  .cb_service:not(:has(.color_bg)) + .cb_service:has(.color_bg) .content_wrap { padding-top:100px; }
	.cb_service .content { padding:50px; }
	.cb_service .sc_image_carousel { margin:100px -100px 0 !important; }
}
@media (max-width: 1200px) {
	.cb_service .image { width:100%; }
	.cb_service .content { margin:-100px auto 0 !important; }
	.cb_service .design_button { right:auto; left:50%; transform: translateX(-50%); }
}
@media (max-width: 1100px) {
	.cb_service .image { width:calc(100% + 200px); height:450px; border-radius:0; left:-100px; }
	.cb_service .title_area { height:45px; }
  .cb_service .title_area .title { border-radius:45px 0 0 45px; padding:0 30px; font-size:14px; }
  .cb_service .title_area .category_name { padding:0 30px; border-radius:0 45px 45px 0; font-size:14px;}
	.cb_service .catch { font-size: calc( (var(--tcd-cb-catch-font-size-pc) + var(--tcd-cb-catch-font-size-sp)) / 2) ; }
	.cb_service .headline { font-size: calc( (var(--tcd-cb-headline-font-size-pc) + var(--tcd-cb-headline-font-size-sp)) / 2) ; }
	.cb_service .desc_inner { overflow:visible !important; max-height:inherit !important; }
}
@media (max-width: 1000px) {
	.cb_service .content_wrap { padding:70px 50px; }
  .white_bg + .cb_service .content_wrap:not(.color_bg) { padding-top:0; }
  .cb_service:has(.color_bg) + .cb_service .content_wrap { padding-top:70px; }
  .cb_service:not(:has(.color_bg)) + .cb_service:has(.color_bg) .content_wrap { padding-top:70px; }
  .cb_service .content_wrap { padding:70px 50px; }
	.cb_service .sc_image_carousel { margin:70px -50px 0 !important; width:calc(100% + 100px); }
	.cb_service .image { width:calc(100% + 100px); height:400px; border-radius:0; left:-50px; }
}
@media (max-width: 767px) {
	.cb_service .content_wrap { padding:40px 20px; }
  .white_bg + .cb_service .content_wrap:not(.color_bg) { padding-top:0; }
  .cb_service:has(.color_bg) + .cb_service .content_wrap { padding-top:40px; }
  .cb_service:not(:has(.color_bg)) + .cb_service:has(.color_bg) .content_wrap { padding-top:40px; }
  .cb_service .content_wrap { padding:40px 20px; }
	.cb_service .main_content  { margin-top:40px; position:relative; }
	.cb_service .title_area { margin-bottom:30px; }
	.cb_service .catch { font-size:var(--tcd-cb-catch-font-size-sp); }
	.cb_service .sc_image_carousel { margin:40px -20px 0 !important; width:calc(100% + 40px); }
	.cb_service .image { width:calc(100% + 40px); height:300px; border-radius:0; left:-20px; }
	.cb_service .content { margin:-40px auto 0 !important; padding:25px 30px 30px; width:auto; }
	.cb_service .content:has(.design_button) { padding-bottom:90px; }
	.cb_service .headline { font-size:var(--tcd-cb-headline-font-size-sp); }
  .cb_service .desc { margin-top:30px; font-size:14px; }
  .cb_service .desc .desc_inner p { line-height:2; }
}
@media (max-width: 450px) {
	.cb_service .content { max-width:320px; }
	.cb_service .image { height:240px; }
}


/* ブログ */
.cb_post { padding:150px 0; }
.cb_post .headline { font-size:var(--tcd-cb-headline-font-size-pc); font-family:var(--tcd-cb-headline-font-type); font-weight:600; margin:0 100px 65px; }
.cb_blog_carousel { position:relative; height:461px; }
.cb_post .blog_list { position:absolute; left:100px; top:0px; display:flex; flex:nowrap; gap:0 35px; }
.cb_post .blog_list .item { width:385px; }
.cb_post .design_button { margin-top:70px !important; }
@media (max-width: 1100px) {
  .cb_post { padding:100px 0; }
	.cb_post .headline { font-size: calc( (var(--tcd-cb-headline-font-size-pc) + var(--tcd-cb-headline-font-size-sp)) / 2) ; margin:0 100px 50px; }
  .cb_post .cb_blog_carousel { height:auto; padding:0 100px 1px; overflow:none; overflow-x:auto; }
  body.is-desktop .cb_post .cb_blog_carousel { scrollbar-width:none; user-select:none; }
  body.is-mobile .cb_post .cb_blog_carousel { -webkit-overflow-scrolling:touch; scroll-behavior:smooth; }
  .cb_post .blog_list { width:auto; display:block; white-space:nowrap; font-size:0; position:relative; text-align:center; left:0; }
  .cb_post .blog_list:after { content:''; position:absolute; top:0; left:auto; height:10px; width:100px; }
	.cb_post .blog_list .item { width:350px; margin-right:30px; display:inline-block; white-space:wrap; text-align:left; }
	.cb_post .blog_list .item:last-of-type { margin-right:0px !important; }
}
@media (max-width: 1000px) {
  .cb_post { padding:70px 0; }
  .cb_post .headline { margin:0 50px 50px; }
  .cb_post .cb_blog_carousel { padding:0 50px 1px; }
  .cb_post .blog_list:after { width:50px; }
}
@media (max-width: 767px) {
  .cb_post { padding:40px 0; }
  .cb_post .headline { font-size:var(--tcd-cb-headline-font-size-sp); margin:0 20px 30px; text-align:center; }
  .cb_post .cb_blog_carousel { padding:0 20px 1px; }
  .cb_post .blog_list:after { width:20px; }
  .cb_post .blog_list .item { width:260px; margin-right:20px; }
	.cb_post .blog_list .image { border-radius:5px; }
  .cb_post .design_button { margin-top:40px !important; }
}


/* フリースペース */
.cb_free { padding:150px 100px; }
@media (max-width: 1100px) {
  .cb_free { padding:100px 100px; }
}
@media (max-width: 1000px) {
  .cb_free { padding:100px 50px; }
}
@media (max-width: 767px) {
  .cb_free { padding:40px 20px; }
}



/* END BIJOUX front_page.css */