@charset "utf-8";
/*
Theme Name:VALUE
Theme URI:https://tcd-theme.com/tcd123
Description:VALUE is a WordPress theme designed for women entrepreneurs, freelancers, and professionals. Even with minimal content, it creates a clean and beautifully structured website. With a simple setup, you can launch your site quickly by adding your services, business details, and an about page. Soft, subtle animations add a refined and elegant touch to the overall experience.
Author:TCD
Author URI:https://tcd-theme.com/
Version:1.0
Text Domain:tcd-value
*/


/* ----------------------------------------------------------------------
  基本設定
---------------------------------------------------------------------- */
body { position:relative; min-height:100vh; }
body.header_fix { padding-top:var(--tcd-header-logo-height); }
body.is-mobile { overscroll-behavior:none; }
body.is-mobile *::-webkit-scrollbar { display:none; }
input, textarea, select, button { font-family:var(--tcd-base-font-type, sans-serif); }
a, a:before, a:after { transition: color 0.25s ease, background-color 0.25s ease, border-color 0.25s ease, opacity 0.25s ease; }
a { color:#000; text-decoration:none; }

:is(.tcdce-body, .editor-styles-wrapper) *:first-child { margin-top:0; }
.single_free_space :is(.tcdce-body, .editor-styles-wrapper) > *:first-child { margin-top:var(--tcdce-h2-margin-top-pc); }
.post_content :is(.tcdce-body, .editor-styles-wrapper) { line-height:2.4; }

@media(hover: hover) {
  a:hover:not(.tcdce-body a) { color:rgba(0,0,0,0.6); }
  .c-comment-list-item__action :where(a):hover { color: #ffffff !important; }
}
@media (max-width: 1200px) {
  body.header_fix { padding-top:0; }
}
@media (max-width: 767px) {
  .single_free_space :is(.tcdce-body, .editor-styles-wrapper) > *:first-child { margin-top:var(--tcdce-h2-margin-top-sp); }
  .post_content :is(.tcdce-body, .editor-styles-wrapper) { line-height:2.2; }
  .post_content table { font-size:14px; }
}
@media (max-width: 600px) {
  html:has(#wpadminbar) { padding-top:0px; }
  #wpadminbar { position:fixed !important; }
}


/* スクロールバーを非表示 */
html, body { scrollbar-width: none; -ms-overflow-style: none; }
html::-webkit-scrollbar, body::-webkit-scrollbar { display:none; }


/* レイアウト */
#container { width:100%; position:relative; overflow:clip; }

#main_content { position:relative; width:1100px; margin:0 auto; padding-bottom:150px; }
body.sidebar_right #main_content { display:flex; flex-wrap:wrap; justify-content:space-between; }
body.sidebar_left #main_content { display:flex; flex-wrap:wrap; justify-content:space-between; flex-direction:row-reverse; }

#main_content .main_col { width:750px; container-type:inline-size; container-name:main_col; }
body.sidebar_none #main_content .main_col { margin:0 auto; width:820px; }

#main_content .l-sidebar { width:300px; }

@media (max-width: 1200px) {
  #main_content { margin:0 60px; padding-bottom:100px; width:auto !important; justify-content:center !important; }
  #main_content .main_col { width:750px; margin:30px 0 0; }
  #main_content .l-sidebar { width:750px; margin:80px 0 0; }
  #main_content .l-sidebar .p-widget-list { grid-template-columns:repeat(2, 1fr) !important; }
}
@media (max-width: 940px) {
  body.sidebar_none #main_content .main_col { margin:0 auto; width:auto; }
}
@media (max-width: 870px) {
  #main_content { display:block !important; }
  #main_content .main_col { width:auto; }
  #main_content .l-sidebar { width:auto; }
}
@media (max-width: 767px) {
  #main_content { margin:0 20px; padding-bottom:40px; }
  #main_content .main_col { margin-top:0; }
  #main_content .l-sidebar { margin:40px 0; }
  #main_content .l-sidebar { margin-top:50px; margin-bottom:0; }
  #main_content .l-sidebar:not(:has(.p-widget)) { margin-top:0; } 
  #main_content .l-sidebar .p-widget-list { gap:40px 20px; }
}
@media (max-width: 600px) {
  #main_content .l-sidebar .p-widget-list { grid-template-columns:repeat(1, 1fr) !important; }
}


/* 画像のホバーアニメーション */
.c-thumbnail { overflow:hidden; backface-visibility:hidden; position:relative; z-index:2; display:block; }
.c-thumbnail-image { width:100%; height:100% !important; object-fit:cover; pointer-events:none; position:absolute; top:0; left:0; }
body.hover_zoom .c-thumbnail-image { transform:scale(1); transition:transform 0.5s ease; backface-visibility:hidden; -webkit-backface-visibility:hidden; }
body.hover_fade .c-thumbnail { background:#000; }
body.hover_fade .c-thumbnail-image { opacity:1; transition:opacity 0.9s ease; }
@media(hover: hover) {
  body.hover_zoom :where(a, .c-thumbnail):hover .c-thumbnail-image { transform:scale(1.1); }
  body.hover_fade :where(a, .c-thumbnail):hover .c-thumbnail-image { opacity:0.7; }
  body.hover_zoom .item:has(.title a:hover) .c-thumbnail-image { transform:scale(1.1); }
  body.hover_fade .item:has(.title a:hover) .c-thumbnail-image { opacity:0.7; }
}


/* 抜粋表示（3点リーダ） */
.c-line-clamp { display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: var(--tcd-line-clamp); line-clamp: var(--tcd-line-clamp); height: calc(1lh * var(--tcd-line-clamp)); max-height: calc(1lh * var(--tcd-line-clamp)); overflow: hidden; visibility: visible; word-break: break-all; margin-block: var(--tcd-half-read); }


/* 表示切り替え */
@media not all and (max-width: 767px) {
  .c-hidden-pc { display: none; }
}
@media (max-width: 767px) {
  .c-hidden-sp { display: none; }
}


/* 日付 */
.c-date { display:flex; flex-wrap:wrap; gap:0.8em; font-family:'Arial'; font-size:14px; color:#999; line-height:1; }
.c-date-item { display:grid; align-items:center; grid-template-columns:auto auto; gap:0.3em; }
.c-date-item:before { content:''; width:1em; height:1em; background: currentColor; }
.c-date--publish:before { mask:var(--tcd-icon--publish) no-repeat center / 1.2em; }
.c-date--updated:before { mask:var(--tcd-icon--updated) no-repeat center / 1.2em; }
@media (max-width: 767px) {
  .c-date { font-size: 14px; }
}


/* 基本ボタン */
.c-button01 { display: grid; place-items: center; width: fit-content; min-width: 260px; height: 60px; border-radius:60px; font-size: 16px; color: var(--tcd-accent-color); border: 1px solid var(--tcd-accent-color); text-decoration:none !important; padding:0 25px; }
.c-button01.white { color:#fff; border-color:rgba(255,255,255,0.8); }
.c-button02 { display: grid; place-items: center; width: fit-content; min-width: 160px; height: 50px; font-size: 14px; color: var(--tcd-accent-color); border: 1px solid var(--tcd-accent-color); padding:0 25px; }
@media(hover: hover) {
  .c-button01:hover, .c-button02:hover { color:#fff !important; background:var(--tcd-accent-color); }
  .c-button01.white:hover { border-color:var(--tcd-accent-color); }
}
@media (max-width: 767px) {
  .c-button01 { min-width: 240px; height: 50px; font-size: 14px; }
}


/* ページネーション */
.c-pagination {

  margin-top:100px;

  .screen-reader-text { display:none; }
  :where(.nav-links) { display:grid; gap:0; grid-template-columns:repeat(auto-fit, 50px); grid-template-rows:50px; justify-content:center; font-size:14px; font-family:Arial; text-align:center; }
  :where(.nav-links > *) { display:grid; place-items:center; color:#000000; border:1px solid #ddd; background:#fff; margin-right:-1px; }
  .page-numbers.dots { border:none; margin:0 1px; position:relative; }
  :where(.nav-links > .current) { z-index:2; color:#ffffff; border-color:var(--tcd-accent-color); background:var(--tcd-accent-color); }
  .next { display:none; }
  .prev { display:none; }

  @media(hover: hover) {
    :where(.nav-links > a:hover) { background:#fafafa; }
  }
  @media (max-width: 767px) {
    margin-top:40px;
    :where(.nav-links) { grid-template-columns:repeat(auto-fit, 45px); grid-template-rows:45px; }
  }

}


/* カテゴリーボタン */
.category_button,
.category_buttons a { text-align:center; align-self:flex-start; height:45px; line-height:45px; min-width:110px; padding:0 15px; font-size:12px; max-width:100%; color:#000 !important; border:1px solid #ddd; border-radius:5px; overflow: hidden; visibility: visible; word-break: break-all; display: -webkit-box; -webkit-box-orient: vertical; line-clamp:1; -webkit-line-clamp:1; }
.category_buttons { display:flex; flex-wrap:wrap; gap:10px; }
@media(hover: hover) {
  .category_button:hover,
  .category_buttons a:hover { color:var(--tcd-accent-color) !important; border-color:var(--tcd-accent-color); }
}
@media (max-width: 1200px) {
  .category_button,
  .category_buttons a { height:35px; line-height:35px; min-width:100px; }
}


/* 矢印付ボタン */
.design_button {

  font-size:16px; align-self:flex-start; position:relative; overflow:hidden; height:70px; line-height:70px; border-radius:5px; background:#fff; display:block; text-align:center; border:1px solid var(--tcd-accent-color); color:var(--tcd-accent-color) !important; padding:0 70px; width:fit-content; min-width:270px; margin:0 auto; margin-top:50px !important; text-decoration:none !important; z-index:5;

  &:before { content:''; display:block; mask:var(--tcd-icon--arrow-thin) no-repeat center / 2em; font-size:12px; width:1em; height:1em; background:var(--tcd-accent-color); position:absolute; top:50%; transform: translateY(-50%); right:20px; transition:none; }
  &:after { opacity:0; content:''; display:block; mask:var(--tcd-icon--arrow-thin) no-repeat center / 2em; font-size:12px; width:1em; height:1em; background:var(--tcd-accent-color); position:absolute; top:50%; transform: translateY(-50%); right:45px; transition:none; }
  span { position:relative; z-index:2; }
  .post_content & { margin-top:90px !important; }

  @media(hover: hover) {
    &:hover:before { opacity:0; }
    &:hover:after { opacity:1; right:20px; transition:opacity 0.7s ease 0.05s, right 0.8s cubic-bezier(0.25, 1, 0.5, 1) 0.05s; }
  }
  @media (max-width: 767px) {
    font-size:14px; height:60px; line-height:60px; min-width:240px; margin-top:30px !important;
    .post_content & { margin-top:30px !important; }
  }

}


/* アクセントカラー */
.accent_color { color:var(--tcd-accent-color); }


/* 短いコンテンツ */
.short_content { padding-left:140px; padding-right:140px; }
@media (max-width: 1100px) {
  .short_content { padding-left:60px; padding-right:60px; }
}
@media (max-width: 940px) {
  .short_content { padding-left:0px; padding-right:0px; }
}


/* ワイドコンテンツ */
@media (max-width: 1000px) {
  .wide_content { margin-left:-60px; margin-right:-60px; }
}
@media (max-width: 767px) {
  .wide_content { margin-left:-20px; margin-right:-20px; }
}


/* inview */
.inview { position:relative; opacity:0; transform: translateY(100px); transition: opacity 1.2s ease, transform 1.2s cubic-bezier(0.22, 1, 0.36, 1) 0s; }
.inview.animate { opacity:1; transform: translateY(0) !important; }
@media (max-width: 767px) {
  .cb_design_button.inview { transform: translateY(40px); }
}


/* タブの切り替え */
.js_tab_panel[hidden] { display: none !important; }
.js_tab_panel { display: block; opacity: 0 !important; transform: translate3d(0, 50px, 0) !important; transition: none !important;  visibility: hidden; }
.js_tab_panel.active { opacity: 1 !important; transform: translate3d(0, 0, 0) !important; visibility: visible; transition:opacity 2s ease 0.2s, transform 1.6s cubic-bezier(0.22, 1, 0.36, 1) 0.2s !important; }




/* ----------------------------------------------------------------------
  スマートページ
---------------------------------------------------------------------- */

/* ヘッダー */
#page_header {

  .image_wrap { margin-top:100px; display:block; width:100%; height:auto; aspect-ratio:1350 / 350; z-index:1; position:relative; overflow:hidden; border-radius:15px; }
  body.page_header_type2 & .image_wrap { border-radius:0; }
  .image_wrap .image { margin:0; border-radius:0; position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; opacity: 0; transition: opacity 1.0s ease; border-radius: var(--border-radius-lg); }
  .image_wrap .image.active { opacity: 1; }
  body:not(.start_first_animation) & .image_wrap .image { transition:none; }

  @media (max-width: 767px) {
    .image_wrap { height:130px; aspect-ratio:unset !Important; margin-top:40px; border-radius:0px; margin-left:-20px; margin-right:-20px; width:calc(100% + 40px); }
  }

}


/* position:stickyがactive状態の場合 */
#sticky_trigger { height:1px; width:100%; pointer-events:none; }
#category_sort_button_wrap { background:#fff; padding:15px 0; position:sticky; top:90px; z-index:10; margin-bottom:85px; margin-top:-15px; transition:opacity 0.5s ease; }
body.header_fix.active_sticky #header:after { box-shadow:none; transition:opacity 0.5s ease; }
body.active_sticky #category_sort_button_wrap { border-top:1px solid #ddd; box-shadow:0 10px 15px 0 rgba(120,120,120,0.1); }
body:has(li.menu-item-megamenu-1 a:hover).active_sticky #category_sort_button_wrap,
body:has(li.menu-item-megamenu-2 a:hover).active_sticky #category_sort_button_wrap,
body:has(#global_menu > ul > li.menu-item-has-children:hover).active_sticky #category_sort_button_wrap { opacity:0; pointer-events:none; }
body:has(#global_menu > ul > li.menu-item-has-children:hover).active_sticky #header:after { box-shadow:0 10px 15px 0 rgba(120,120,120,0.1); }
@media (max-width: 1200px) {
  #category_sort_button_wrap { top:0px; position:relative; padding:0; margin-top:0; }
}
@media (max-width: 767px) {
  #category_sort_button_wrap { margin-bottom:0px; }
}


/* ソートボタン */
.category_sort_button {

  width:820px; height:50px; margin:0 auto 10px; position:relative;

  .nav-shell { position: relative; width:820px; height:60px; overflow: hidden; }
  .pill { position:absolute; top:0; left:0; height:60px; border-radius:60px; background:var(--tcd-accent-color); pointer-events: none; z-index: 1; opacity: 1; }
  .pill.hidden { opacity:0; }

  .splide { position:relative; z-index:2; width:100%; height:100%; }
  .splide__track { overflow:visible; }
  .splide:not(:has(.splide__slide:nth-child(5))) .splide__track { text-align:center; }
  .splide__list  { align-items: center; }
  .splide:not(:has(.splide__slide:nth-child(5))) .splide__list { display:inline-flex !important; }

  .nav-item { height:60px; width:100%; display:grid; place-items:center; transition: color 0.25s; color:#000; }
  .nav-item.active { color:#fff; /*pointer-events:none;*/ }
  &:has(.nav-item:hover) .nav-item.active { color:#000; }

  .splide__arrow.js-prev { left:-70px; background:none; box-shadow:none; }
  .splide__arrow.js-next { right:-70px; background:none; box-shadow:none; }

  @media(hover: hover) {
    .nav-item:hover { color:#fff !important; }
  }
  @media (max-width: 940px) {
    width:auto; margin:0 0 50px; height:40px;
    .nav-shell { width:auto; }
    .splide { visibility:visible !important; width:auto; }
    .splide__track { padding:0 60px; overflow:hidden; overflow-x:auto; }
    body.is-desktop & .splide__track { scrollbar-width:none; user-select:none; cursor:grab; }
    body.is-desktop & .splide__track:active { cursor:grabbing; }
    body.is-desktop & .splide__track::-webkit-scrollbar { display:none; }
    body.is-mobile & .splide__track { -webkit-overflow-scrolling:touch; scroll-behavior:smooth; }
    .splide__list { width:auto; display:block; white-space:nowrap; font-size:0; position:relative; text-align:center; }
    .splide__list:after { content:''; position:absolute; top:0; left:auto; height:10px; width:60px; }
    .splide__arrow, .pill { display:none; }
    .item { display:inline-block; white-space:wrap; text-align:left; }
    .nav-item { font-size:14px; padding:0 50px; }
    .nav-item.active { background:var(--tcd-accent-color); color:#fff !important; border-radius:60px; }
    @media(hover: hover) {
      .nav-item:not(.active):hover { color:#999 !important; }
    }
  }
  @media (max-width: 767px) {
    margin:0 0 40px;
    .nav-shell { height:40px; }
    .splide__track { padding:0 20px; }
    .splide__list:after { width:20px; }
    .nav-item { height:40px; padding:0 20px; }
    .nav-item.active { border-radius:40px; }
  }
  
}


/* ページコンテンツ */
#smart_page_content_wrap {

  position:relative; width:820px; margin:0 auto; scroll-margin-top:350px;
  @media (max-width: 940px) {
    width:auto;
  }

  .smart_page_content_title { text-align:center; font-size:var(--tcd-headline-font-size-pc); color:var(--tcd-accent-color); line-height:1; margin-bottom:70px; }
  @media (max-width: 767px) {
		scroll-margin-top:200px;
    .smart_page_content_title { font-size:var(--tcd-headline-font-size-sp); margin-bottom:30px; }
  }

}




/* ----------------------------------------------------------------------
  固定ページ
---------------------------------------------------------------------- */
/* プロフィール */
.career_list { display:flex; flex-wrap:wrap; }
.career_list dt { width:75px; }
.career_list dd { width:calc(100% - 75px); }
@media (max-width: 676px) {
	.career_list dt { width:60px; }
	.career_list dd { width:calc(100% - 60px); }
}


/* ランキング */
body:not(.home){

  #ranking_post_list_wrap {

    position:relative;

    @media (max-width: 1200px) {
      .ranking_post_list { margin:0; }
    }

  }

}


/* ステップ */
.sc_step {

  .item { margin-bottom:50px; position:relative; }
  .item:last-of-type { margin-bottom:0px; }
  .item:after {
    content:''; width:0; height:0; display:block; position:relative; left:50%; transform: translateX(-50%); margin-top:50px;
    border-style:solid; border-right: 10px solid transparent; border-left: 10px solid transparent; border-top: 20px solid var(--tcd-accent-color); border-bottom: 0;
  }
  .item:last-of-type:after { display:none; }

  .step_title { display:flex !important; flex-wrap:nowrap !important; text-align:left !important; padding:0 !important; margin:0 0 40px 0 !important; line-height:1 !important; background:none !important; }
  .step_title .num { flex:0 0 auto; background:var(--tcd-accent-color); display:grid; place-items:center; white-space: nowrap; color:#fff; padding:0 30px; font-size:20px; }
  .step_title .title { flex:1 1 auto; display:block; padding:18px 30px; border:1px solid #ddd; border-left:none; font-size:20px; line-height:1.6; color:var(--tcd-accent-color); }
  .step_code + .step_image { margin-top:50px; }
	.step_code { margin-bottom:calc(0.5em - 0.5lh); }

  @media (max-width: 767px) {
    .item { margin-bottom:40px; }
    .item:after { margin-top:40px; }
    .step_title { margin:0 0 22px 0 !important; }
    .step_title .num { padding:0 20px; font-size:14px; }
    .step_title .title { padding:16px 20px; font-size:16px; }
    .step_code + .step_image { margin-top:30px; }	
  }

}


/* プロフィール */
.sc_profile {

	margin:35px 0 !important; display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; width:100%; text-decoration:none; max-width:100%; padding:50px; background:#f5f3f0;
	&:first-child { margin-top:0 !important; }
  &:last-child { margin-bottom:0 !important; }

	.image_area { position:relative; width:calc(50% - 20px); }
	.image { width:100%; height:auto; aspect-ratio:1 /1; display:block; position:relative; overflow:hidden; }
	.image img { width:100%; height:100%; position:absolute; top:0; left:0; object-fit:cover; display:block; margin:0; }
	.content_area { width:calc(50% - 20px); padding-left:10px; display:flex; flex-direction:column; gap:1.5em 0; }
	.title { font-size:16px !important; font-weight:600; line-height:1.4; margin-top:calc(0.5em - 0.5lh) !important; margin-bottom:calc(0.5em - 0.5lh) !important; }
	.job,
	.desc { font-size:16px; line-height:2.4; margin-top:calc(0.5em - 0.5lh) !important; margin-bottom:calc(0.5em - 0.5lh) !important; }

	@media (max-width: 767px) {
		display:block; margin:30px 0 !important; padding:30px;
		& + .sc_profile { margin-top:0px !important; }
		.image_area { width:auto; max-width:340px; margin:0 auto 30px; }
		.content_area { width:auto; padding-left:0px; }
		.title { font-size:14px !important; }
		.job,
		.desc { font-size:14px; line-height:2; }
	}

}


/* 画像カルーセル */
.sc_image_carousel_wrap {

  margin:90px 0 !important; width:100%; position:relative; z-index:1; pointer-events:none;

  &:before,
  &:after { content:''; display:block; position:absolute; top:0; width:100px; height:100%; z-index:2; }
  &:before { left:0; background: linear-gradient(to right,  rgba(255,255,255,1) 0%,rgba(255,255,255,0) 100%); }
  &:after { right:0; background: linear-gradient(to right,  rgba(255,255,255,0) 0%,rgba(255,255,255,1) 100%); }
  body.home &:before,
  body.home &:after { display:none; }
  &:first-child { margin-top:0 !important; }
  &:last-child { margin-bottom:0 !important; }

  .sc_image_carousel .item { position:relative; overflow:hidden; }
  .sc_image_carousel .item img { position:absolute; top:0; left:0; width:100%; height:100%; object-fit:cover; }

  @media (max-width: 767px) {
    margin:30px -20px !important; width:calc(100% + 40px);
    &:before, &:after { display:none; }
    .sc_image_carousel .item { width:250px !important; }
  }

}
.sc_image_carousel_no_image { margin:0 auto; text-align:center; }
.sc_image_carousel_no_image img { width:400px; }


/* カウンター */
.sc_counter {

  text-align:center; margin:70px 0 60px !important;

  &:first-child { margin-top:0 !important; }
  &:last-child { margin-bottom:0 !important; }

  .title { font-size:16px; margin-top:calc(0.5em - 0.5lh); margin-bottom:15px; line-height:1.6;}
  .num_area { color:var(--tcd-accent-color); font-weight:600; text-align:center; font-size:80px; line-height:1 !important; }
  .unit { font-size:24px; margin-left:10px; }

  @media (max-width: 1200px) {
    .num_area { font-size:60px; }
  }
  @media (max-width: 767px) {
    margin:40px 0 35px !important;
    .title { font-size:14px; margin-bottom:10px; }
    .num_area { font-size:46px; }
    .unit { font-size:16px; margin-left:5px; }
  }

}




/* ----------------------------------------------------------------------
  お客様の声
---------------------------------------------------------------------- */

/* ソートボタン（ランキングでも利用） */
#post_list_filter {

  border:1px solid #ddd; height:70px; margin-bottom:70px;

  .splide { position:relative; z-index:2; width:100%; height:100%; }
  .splide:not(.is-overflow) .splide__list { justify-content:center; transform:none !important; }
  .splide:not(.is-overflow) .splide__slide:last-of-type { margin-right:0 !important; }
	.splide:not(.is-overflow) .splide__arrows { display:none; }
  .splide__arrow--next { top:35px; right:-60px; background:none; box-shadow:none; }
  .splide__arrow--prev { top:35px; left:-60px; background:none; box-shadow:none; }
  .splide__arrow:before { font-size:14px; }

  .splide__slide { height:70px; display:grid; place-items:center; }
	.splide__slide * { height:100%; }
  .disable { pointer-events: none !important; }

  .post_list_sort_button { color:#000; transition:color 0.25s ease; }
  .post_list_sort_button.active { color:var(--tcd-accent-color); pointer-events:none; }

  @media(hover: hover) {
    .post_list_sort_button:hover { color:#666; }
  }
  @media (max-width: 1200px) {
    width:auto; margin:0 -60px 70px; border-left:none; border-right:none; 
    .splide { visibility:visible !important; width:auto; }
    .splide__list:not(:has(.splide__slide:nth-child(6))) { justify-content:flex-start; }
    .splide__track { padding:0 60px; overflow:hidden; overflow-x:auto; }
    body.is-desktop & .splide__track { scrollbar-width:none; user-select:none; cursor:grab; }
    body.is-desktop & .splide__track:active { cursor:grabbing; }
    body.is-desktop & .splide__track::-webkit-scrollbar { display:none; }
    body.is-mobile & .splide__track { -webkit-overflow-scrolling:touch; scroll-behavior:smooth; }
    .splide__list { width:auto; display:block; white-space:nowrap; font-size:0; position:relative; text-align:center; }
    .splide__list:after { content:''; position:absolute; top:0; left:auto; height:10px; width:60px; }
    .splide__arrows { display:none; }
    .splide__slide { font-size:14px; display:inline-grid; white-space:wrap; margin-right:60px; }
    .splide__slide:last-of-type { margin-right:0 !important; }
  }
  @media (max-width: 767px) {
    height:60px; margin:0 -20px 40px;
    body.page-template-page__ranking & { border:none; margin-bottom:17px; margin-top:-17px; }
    .splide__track { padding:0 20px; }
    .splide__list:after { width:20px; }
    .splide__slide { height:60px; margin-right:30px; }
  }
  
}


/* アーカイブページ */
#voice_list.fade-in { opacity:1; transform:translate3d(0,0,0); transition: opacity 2s ease, transform 1.6s cubic-bezier(0.22, 1, 0.36, 1); }
#voice_list.fade-out { opacity:0; transform:translate3d(0,50px,0); }
.voice_list {

  display:grid; gap:0; grid-template-columns:repeat(3, 1fr); filter: drop-shadow(0px 0px 10px rgba(0,0,0,0.1));

  .item { position:relative; background:#fff; position:relative; }
  .item:after { content:''; width:1px; height:100%; display:block; background:#ddd; position:absolute; right:0; top:0; z-index:2; }
  .item:nth-child(3n):after { display:none; }
  .item:last-of-type:after { display:none; }
  .item:not(:has(img)) { border-top:1px solid #ddd; }
  .item:not(:has(img)):nth-child(1), .item:not(:has(img)):nth-child(2), .item:not(:has(img)):nth-child(3) { border-top:none; }
  
  .service_label { text-align:center; height:60px; display:grid; place-items:center; line-height:1.4; color:var(--tcd-accent-color); }

  .image { display:block; width:100%; aspect-ratio:368 / 224; z-index:1; position:relative; overflow:hidden; z-index:3; pointer-events:none; }
  .image .c-thumbnail { width:100%; height:100%; }

  .content { padding:35px 40px; display:flex; flex-direction:column; justify-content:flex-start; gap:30px 0; flex-grow:1; }
  .category { z-index:2; color:var(--tcd-accent-color); font-size:14px; font-weight:600; }
  .title { line-height:1.8; font-size:18px; font-weight:600; }
  .title span { --tcd-line-clamp:2; height:auto; z-index:2; position:relative; }
  .item:not(:has(img)) .title span { color:#000; }
  .title a:after { content:''; display:block; position:absolute; top:0; left:0; width:100%; height:100%; z-index:1; cursor:pointer; }
  .meta { font-size:14px; color:#000; z-index:2; }
  .meta li { line-height:1.5; }
  .meta li:last-of-type { margin-top:5px; }
	.meta a { color: var(--tcdce-base-link-color) !important; }

  @media(hover: hover) {
    .item:not(:has(img)) a:hover:after { background:#f6f6f6; }
    .category:hover { color:rgba(var(--tcd-accent-color-rgba),0.5); }
		.meta a:hover { text-decoration:underline; }
  }
  @media (max-width: 1200px) {
    .content { padding:25px 30px; gap:20px 0; }
    .title { font-size:16px; }
  }
  @media (max-width: 1000px) {
    grid-template-columns:repeat(2, 1fr);
    .item:nth-child(3n):after { display:block; }
    .item:nth-child(2n):after { display:none; }
    .item:not(:has(img)):nth-child(3) { border-top:1px solid #ddd; }
    .content { padding:35px 40px; gap:30px 0; }
    .title { font-size:18px; }
  }
  @media (max-width: 767px) {
    .content { padding:30px 20px; gap:20px 0; }
    .title { font-size:16px; }
  }
  @media (max-width: 550px) {
    grid-template-columns:repeat(1, 1fr);
    .item:after { display:none !important; }
    .item:not(:has(img)):nth-child(2) { border-top:1px solid #ddd; }
  }	
}


/* 詳細ページ */
#voice_article {
  
  width:820px; margin:0 auto;

  @media (max-width: 940px) {
    width:auto;
  }

  #voice_header {

    margin-bottom:100px;

    .service_name { display:grid; place-items:center; border:1px solid #ddd; margin-bottom:-1px; font-size:22px; color:var(--tcd-accent-color); font-weight:600; padding:19px 30px; line-height:1.4; }
    .featured_image { width:100%; height:auto; aspect-ratio:820 / 500; position:relative; overflow:hidden; display:block; }
    .featured_image img { object-fit:cover; width:100%; height:100%; }
    .title_area { background:#f5f3f0; padding:50px; display:flex; flex-direction:column; justify-content:flex-start; gap:30px 0; flex-grow:1; }
    .category { font-size:16px; color:var(--tcd-accent-color); font-weight:600; }
    .title { font-size:var(--tcd-single-title-font-size-pc); font-family:var(--tcd-single-title-font-type); line-height:1.5; margin-top:calc(0.5em - 0.5lh); margin-bottom:calc(0.5em - 0.5lh); }
    .meta { font-size:14px; color:#000; display:flex; gap:0 20px; }
		.meta li:first-child { flex:0 0 auto; }
    .meta li { line-height:1.5; }
		.meta a { color: var(--tcdce-base-link-color) !important; }

    @media(hover: hover) {
      .service_name:hover { color:rgba(var(--tcd-accent-color-rgba),0.6); }
      .category:hover { color:rgba(var(--tcd-accent-color-rgba),0.5); }
			.meta a:hover { text-decoration:underline; }
    }
    @media (max-width: 767px) {
      margin:0 -20px 40px;
      .title_area { padding:30px; gap:20px 0; }
      .category { font-size:14px; }
      .title { font-size:var(--tcd-single-title-font-size-sp); }
    }
    
  }

}



/* ----------------------------------------------------------------------
  サービス
---------------------------------------------------------------------- */

/* アーカイブページ */
.service_list {

  width:820px; margin:0 auto;

  .item { padding:40px 50px 50px; background:#f5f3f0; margin:0 0 70px 0; }
  .item:last-of-type { margin-bottom:0; }
  .title { line-height:1.8; font-size:28px; font-weight:600; text-align:center; margin:0 0 33px 0; }
  .title a { --tcd-line-clamp:2; height:auto; color:var(--tcd-accent-color); }
  .catch { line-height:1.8; font-size:18px; font-weight:500; text-align:center; background:#fff; padding:19px 30px; border:1px solid #ddd; margin-bottom:-1px; }
	.catch a { color: var(--tcdce-base-link-color) !important; }
  .c-thumbnail { display:block; width:100%; height:auto; aspect-ratio:820 / 500; z-index:1; position:relative; overflow:hidden; pointer-events:none; margin-bottom:50px; }
  .c-thumbnail img { width:100%; height:100%; transform:none !important; opacity:1 !important; }
  .desc { line-height:2.4; margin-top:calc(0.5em - 0.5lh); margin-bottom:calc(0.5em - 0.5lh); }
  .desc p { --tcd-line-clamp:2; }

  @media(hover: hover) {
    .title a:hover { color:rgba(var(--tcd-accent-color-rgba),0.7) !important; }
		.catch a:hover { text-decoration:underline; }
  }
  @media (max-width: 940px) {
    width:auto;
  }
  @media (max-width: 767px) {
    .item { padding:30px 20px; margin:0 0 30px 0; }
    .title { font-size:18px; margin:0 0 33px 0; }
    .catch { font-size:14px; }
    .c-thumbnail { margin-bottom:30px; }
    .desc { line-height:2; max-height:4em; font-size:14px; }
  }

}


/* 詳細ページ */
#service_article {

  width:820px; margin:0 auto;

  @media (max-width: 940px) {
    width:auto;
  }

}


/* ヘッダー */
#service_header {

  margin-bottom:100px;

  .title_area { background:#f5f3f0; border-top:4px solid var(--tcd-accent-color); padding:50px; text-align:center; }
  .title { font-size:var(--tcd-single-title-font-size-pc); font-family:var(--tcd-single-title-font-type); line-height:1.5; margin-top:calc(0.5em - 0.5lh); margin-bottom:calc(0.5em - 0.5lh); color:var(--tcd-accent-color); }
  .sub_title { line-height:1.5; margin-top:25px; font-size:20px; margin-bottom:calc(0.5em - 0.5lh); }
	.sub_title a { color: var(--tcdce-base-link-color); }
  .featured_image { width:100%; height:auto; aspect-ratio:820 / 500; position:relative; overflow:hidden; display:block; }
  .featured_image img { object-fit:cover; width:100%; height:100%; }

  @media(hover: hover) {
		.sub_title a:hover { text-decoration:underline; }
	}
	@media (max-width: 767px) {
    margin:0 -20px 40px;
    .title_area { border-width:3px; padding:25px 30px; }
    .title { font-size:var(--tcd-single-title-font-size-sp); }
    .sub_title { margin-top:15px; font-size:14px; }
  }

}


/* 詳細ページのテーブル */
.s_table:has(.service_table) { margin-bottom:20px !important; width:auto !important; overflow:auto; white-space:wrap; }
.service_table tr:first-of-type th { border-top:none; }
.service_table tr:first-of-type td { border-top:none; }
.service_table th { width:240px !important; background:#f5f3f0 !important; border-right:none !important; padding:20px 35px !important; }
.service_table td { width:calc(100% - 240px) !important; border-left:none !important; padding:20px 35px !important; }
@media (max-width: 767px) {
  .service_table th { width:120px !important; padding:20px 15px !important; font-size:14px; }
  .service_table td { width:calc(100% - 120px) !important; padding:20px 15px !important; font-size:14px; }
}


/* 関連サービス */
#related_service {

  width:820px; margin:100px auto 0;

  .headline { font-size:22px; background:var(--tcd-accent-color); text-align:center; color:#fff; padding:19px 30px; line-height:1.5; }

  @media (max-width: 940px) {
    width:auto;
  }
  @media (max-width: 767px) {
    margin:40px 0 0;
    .headline { font-size:16px; padding:18px 30px; }
  }

  #related_service_carousel {

    background:#f5f3f0; padding:50px;

    .item { display:flex; align-items:flex-start; }
    .image { display:block; width:calc(50% - 25px); height:auto; aspect-ratio:335 / 204; z-index:1; position:relative; overflow:hidden; }
    .image .c-thumbnail { width:100%; height:100%; }
    .content { width:calc(50% - 25px); display:flex; flex-direction:column; justify-content:flex-start; flex-grow:1; padding-left:40px; }
    .title { line-height:1.8; font-size:22px; font-weight:600; }
    .title a { --tcd-line-clamp:2; height:auto; color:var(--tcd-accent-color); }
    .desc { line-height:2.4; margin-top:30px; }
    .desc p { --tcd-line-clamp:4; }

    .splide__pagination { margin-top:50px !important; }
    .splide__pagination .splide__pagination__page { background:none; border:1px solid var(--tcd-accent-color); width:12px; height:12px; }
    .splide__pagination .splide__pagination__page.is-active { background:var(--tcd-accent-color); }

    @media(hover: hover) {
      .title a:hover { color:rgba(var(--tcd-accent-color-rgba),0.7) !important; }
      .splide__pagination .splide__pagination__page:hover { background:var(--tcd-accent-color); }
    }
    @media (max-width: 767px) {
      padding:30px;
      .item { display:block; }
      .image { width:auto; margin-bottom:30px; }
      .content { width:auto; padding-left:0px; }
      .title { font-size:18px; }
      .desc { line-height:2; font-size:14px; margin-top:15px;}
      .splide__pagination { margin-top:30px !important; }
    }

  }

}

/* 関連お客様の声 */
#related_voice {

  width:820px; margin:50px auto;
	&:first-child { margin-top:0 !important; }
	&:last-child { margin-bottom:0 !important; }
	body.page &,
	body.single-post & { width:auto; }
	
  .headline { font-size:22px; background:var(--tcd-accent-color); text-align:center; color:#fff; padding:19px 30px; line-height:1.5; margin:0; }
	body.page & .headline { display:none; }
	
  @media (max-width: 940px) {
    width:auto;
  }
  @media (max-width: 767px) {
    margin:40px 0;
    .headline { font-size:16px; padding:18px 30px; }
  }
  
  #related_voice_carousel {

    background:#f5f3f0; padding:50px;
		body.page & { background:none; padding:0; }
		
    &:not(.is-overflow) .splide__list { justify-content:center; transform:none !important; }
    &:not(.is-overflow) .splide__slide:only-of-type { margin-right:0 !important; }
    .item { position:relative; background:#fff; box-shadow:inset 0 0 0 1px #ddd; margin-bottom:1px; }

    .image { display:block; width:100%; height:auto; aspect-ratio:368 / 224; z-index:1; position:relative; overflow:hidden; z-index:1; }
    .image .c-thumbnail { width:100%; height:100%; }
    .content { padding:35px 40px; }
    .title { line-height:1.8; font-size:18px; font-weight:600; }
		.title a { color:#000; }
	  .title a:after { content:''; display:block; position:absolute; top:0; left:0; width:100%; height:100%; z-index:1; cursor:pointer; }
    .title span { --tcd-line-clamp:2; height:auto; }
    .meta { margin-top:30px; font-size:14px; color:#000; margin:0; padding:0; z-index:2; position:relative; }
    .meta li { line-height:1.5; list-style-type:none; padding:0; margin:0; }
    .meta li:last-of-type { margin-top:5px; }
		&.large {
      .content { padding:25px 25px; }
      .title { font-size:16px; }
		}

    .splide__pagination { margin-top:50px !important; }
    .splide__pagination .splide__pagination__page { background:none; border:1px solid var(--tcd-accent-color); width:12px; height:12px; }
    .splide__pagination .splide__pagination__page.is-active { background:var(--tcd-accent-color); }

    @media(hover: hover) {
      .item .title a:hover { color:#666; text-decoration:none; }
      .splide__pagination .splide__pagination__page:hover { background:var(--tcd-accent-color); }
    }
    @media (max-width: 940px) {
      visibility:visible !important; width:auto; padding:50px 0;
      .splide__track { padding:0 60px; overflow:hidden; overflow-x:auto; }
			body.page & { margin:0 -60px; }
      body.is-desktop & .splide__track { scrollbar-width:none; user-select:none; cursor:grab; }
      body.is-desktop & .splide__track:active { cursor:grabbing; }
      body.is-desktop & .splide__track::-webkit-scrollbar { display:none; }
      body.is-mobile & .splide__track { -webkit-overflow-scrolling:touch; scroll-behavior:smooth; }
      .splide__list { width:auto; display:block; white-space:nowrap; font-size:0; position:relative; text-align:center; }
      .splide__list:after { content:''; position:absolute; top:0; left:auto; height:10px; width:60px; }
      .splide__pagination { display:none; }
      .item { width:343px; margin-right:30px; display:inline-block; white-space:wrap; text-align:left; }
      .item:last-of-type { margin-right:0px !important; }
    }
    @media (max-width: 767px) {
      padding:20px 0;
      .splide__track { padding:0 20px; }
			body.page & { margin:0 -20px; }
      .splide__list:after { width:20px; }
      .item { width:230px; margin-right:20px; }
      .content { padding:20px 20px !important; }
      .title { font-size:14px !important; }
    }
  }

}




/* ----------------------------------------------------------------------
  FAQ
---------------------------------------------------------------------- */
.faq_header {
  .catch { text-align:center; line-height:1.4; color:var(--tcd-accent-color); font-size:var(--tcd-headline-font-size-pc); font-family:var(--tcd-headline-font-type); font-weight:600; margin-top:calc(0.5em - 0.5lh); margin-bottom:calc(0.5em - 0.5lh); }
  .catch + .desc { margin-top:50px; }
  @media (max-width: 1200px) {
    .catch { font-size:calc( (var(--tcd-headline-font-size-pc) + var(--tcd-headline-font-size-sp)) / 2 ); }
  }
  @media (max-width: 767px) {
    .catch { font-size:var(--tcd-headline-font-size-sp); }
    .catch + .desc { margin-top:30px; }
  }
}
.faq_list {

  margin:90px auto;
  &:last-child { margin-bottom:0 !important; }
  
  .item { box-shadow:0 0 15px 0 rgba(0,0,0,0.1); background:#fff; margin:0 0 40px 0; }
  .item:last-of-type { margin-bottom:0; }

  .question { padding:26px 60px 23px !important; font-size:18px !important; font-weight:600 !important; margin:0 !important; line-height:1.6 !important; cursor:pointer; transition: color 0.25s ease; position:relative; }
  .question:before,
  .question:after { content:''; display:block; background:var(--tcd-accent-color); position:absolute; top:40px; transition: background-color 0.25s ease; }
  .question:before { width:13px; height:1px; right:30px; }
  .question:after { width:1px; height:14px; right:36px; top:34px; }

  .question span:before { content:'Q'; display:inline-block; color:var(--tcd-accent-color); font-size:22px; position:absolute; top:22px; left:30px; font-weight:500; }
  .question.active { color:var(--tcd-accent-color); }
  .question.active:after { display:none; }

  .answer { line-height:2.4; display:none; }
  .answer_inner { padding:0px 60px 30px; }

  @media(hover: hover) {
    .question:hover { color:var(--tcd-accent-color); }
    .question:hover:before,
    .question:hover:after { background:rgba(var(--tcd-accent-color-rgba),0.5); }
  }
  @media (max-width: 767px) {
    margin:30px auto;
    .item { margin:0 0 20px 0; }
    .question { padding:18px 45px 16px !important; font-size:14px !important; }
    .question:before { right:20px; top:27px; }
    .question:after { right:26px; top:21px; }
    .question span:before { font-size:20px; top:13px; left:20px; }
    .answer .tcdce-body { line-height:2; font-size:14px !important; }
    .answer_inner { padding:0px 20px 16px; }
  }

}




/* ----------------------------------------------------------------------
  お知らせ
---------------------------------------------------------------------- */


/* ソートボタン（動き無しver） */
.simple_category_sort_button_wrap {

  width:820px; height:50px; margin:0 auto 50px; position:relative;

  .splide { position:relative; z-index:2; width:820px; height:100%; }
  .splide__arrow--next { top:25px; right:-70px; background:none; box-shadow:none; }
  .splide__arrow--prev { top:25px; left:-70px; background:none; box-shadow:none; }
  .splide__arrow:before { font-size:14px; }
   .splide:not(.is-overflow) .splide__list { justify-content:center; transform:none !important; }
   .splide:not(.is-overflow) .splide__slide:last-of-type { margin-right:0 !important; }
   .splide:not(.is-overflow) .splide__arrows { display:none !important; }

  .item { height:50px; padding:0 30px; min-width:140px; background:transparent; border-radius:50px; display:grid; place-items:center; transition: color 0.25s; color:#000; }
  .item.active { color:#fff; background:var(--tcd-accent-color); pointer-events:none; transition: background-color 0.3s ease; }
	.item span { --tcd-line-clamp:2; height:auto; }
	
  @media(hover: hover) {
    .item:not(.active):hover { color:#999 !important; }
  }
  @media (max-width: 940px) {
    width:auto; margin:0 -60px 50px;
    .splide { visibility:visible !important; width:auto; }
    .splide__list:not(:has(.splide__slide:nth-child(5))) { justify-content:flex-start; }
    .splide__track { padding:0 60px; overflow:hidden; overflow-x:auto; }
    body.is-desktop & .splide__track { scrollbar-width:none; user-select:none; cursor:grab; }
    body.is-desktop & .splide__track:active { cursor:grabbing; }
    body.is-desktop & .splide__track::-webkit-scrollbar { display:none; }
    body.is-mobile & .splide__track { -webkit-overflow-scrolling:touch; scroll-behavior:smooth; }
    .splide__list { width:auto; display:block; white-space:nowrap; font-size:0; position:relative; text-align:center; }
    .splide__list:after { content:''; position:absolute; top:0; left:auto; height:10px; width:60px; }
    .splide__arrows { display:none; }
    .item { font-size:14px; display:inline-grid; white-space:wrap; }
  }
  @media (max-width: 767px) {
    margin:0 -20px 30px; height:40px;
    .splide__track { padding:0 20px; }
    .splide__list:after { width:20px; }
    .item { min-width:110px; height:40px; font-size:14px; padding:0 20px; border-radius:40px; }
  }

}


/* アーカイブページ */
.news_list {

  width:820px; margin:0 auto;

  .item { display:flex; flex-wrap:nowrap; align-items:center; background:#fff; border:1px solid #ddd; margin:0 0 -1px 0; gap:0 20px; position:relative; padding:20px 30px; }
  .c-date { flex:0 0 auto; z-index:2; }
  .category_button { flex:0 0 auto; z-index:2; background:#fff; }
  .title { line-height:1.8; font-size:16px; font-weight:400; }
  .title a { --tcd-line-clamp:1; height:auto; z-index:2; }
  .title a:before { content:''; display:block; width:100%; height:100%; position:absolute; top:0; left:0; z-index:1; }
  .title a span { z-index:2; position:relative; color:#000; }

  @media(hover: hover) {
    .item:not(:has(.image)) .title a:hover:before { background:#f6f6f6; }
  }
  @media (max-width: 940px) {
    width:auto; margin:0;
  }
  @media (max-width: 767px) {
    margin:0 -20px; 
    .item { border-left:none; border-right:none; border-bottom:none; margin:0; flex-wrap:wrap; padding:15px 20px; gap:0 15px; }
    .item:last-of-type { border-bottom:1px solid #ddd; }
    .title { width:100%; margin-top:15px; font-size:14px; font-weight:500; }
  }
  
}



/* 新着のお知らせ */
#related_news {

  padding-top:70px;

  .headline { font-size:26px; text-align:center; line-height:1; margin-bottom:50px; margin-top:calc(0.5em - 0.5lh); font-family:var(--tcd-headline-font-type); }
  .news_list { width:100%; }

  @media (max-width: 767px) {
    padding-top:40px;
    .headline { font-size:20px; margin-bottom:40px; }
	  .news_list { width:calc(100% + 40px); }
  }

}




/* ----------------------------------------------------------------------
  ブログアーカイブ
---------------------------------------------------------------------- */

/* 記事一覧 */
.blog_list {

  display:grid; gap:0; grid-template-columns:repeat(2, 1fr);

  .item { position:relative; display:flex; align-items:center; border:1px solid #ddd; padding:40px; margin:0 -1px -1px 0; background:#fff; }
  .image { display:block; width:150px; height:auto; aspect-ratio:1 / 1; z-index:1; position:relative; overflow:hidden; z-index:2; pointer-events:none; margin-bottom:auto }
  .image .c-thumbnail { width:100%; height:100%; }
  .content { width:calc(100% - 150px); display:flex; flex-direction:column; justify-content:flex-start; gap:20px 0; flex-grow:1; padding-left:40px; }
  .category_button { min-width:112px; height:42px; line-height:42px; position:relative; z-index:2; }
  .category_buttons a { position:relative; z-index:2; }
  .title { line-height:1.8; font-size:18px; font-weight:600; }
  .title a { --tcd-line-clamp:2; height:auto; }
  .title a:after { content:''; display:block; position:absolute; top:0; left:0; width:100%; height:100%; z-index:1; }
  .meta { display:flex; flex-wrap:wrap; align-items:center; gap:0 20px; }
  .meta .like { font-size:14px; position:relative; color:#999; height:45px; padding:0 0 0 20px; display:grid; place-items:center; }
  .meta .like:before {
    display:block; pointer-events:none; position:absolute; left:0px; top:15px;
    background:#999; font-size:17px; width:1em; height:1em; content:''; mask:var(--tcd-icon--heart) no-repeat center / 1em;
  }
  .num { width:40px; height:40px; position:absolute; top:40px; left:40px; z-index:2; background:#fff; display:grid; place-items:center; z-index:3; pointer-events:none; }
  .no_post { text-align:center; font-weight:600; }

  @media (max-width: 1200px) {
    .category_buttons a:not(:first-child) { display:none; }
  }
  @media (max-width: 1000px) {
    .item { padding:20px; }
    .content { padding-left:20px; gap:18px 0; }
    .title { font-size:14px; }
    .title a { --tcd-line-clamp:3; }
    .category_button { min-width:100px; height:35px; line-height:35px; }
    .c-date--updated { display:none; }
    .num { top:20px; left:20px }
    .meta { gap:0 15px; }
    .meta .like { height:35px; }
    .meta .like:before { top:10px; }
  }
  @media (max-width: 850px) {
    grid-template-columns:repeat(1, 1fr);
  }
  @media (max-width: 767px) {
    margin:0 -20px;
    .item { border-left:none; border-right:none; border-bottom:none; margin:0; }
    .item:last-of-type { border-bottom:1px solid #ddd; }
  }
  
}


/* 投稿者アーカイブ */
#author_archive_profile {

  width:auto; margin:0 auto 90px;

  .image { width:150px; height:150px; border-radius:100%; margin:0 auto 30px; overflow:hidden; position:relative; }
  .image img { position:absolute; top:0; left:0; width:100%; height:100%; object-fit:cover; }
  .name { font-size:20px; line-height:1.2; text-align:center; display:block; font-weight:600; }
  .position { font-size:14px; margin-top:15px; color:var(--tcd-accent-color); text-align:center; line-height:1.5; }
  .c-sns-icons { justify-content:center; margin-top:20px; }
  .desc { margin:100px auto 0; width:810px; }
  .desc a { color: var(--tcdce-base-link-color) !important; }

  @media (max-width: 940px) {
    .desc { width:auto; }
  }
  @media (max-width: 767px) {
    margin:-10px auto 40px;
    .image { width:130px; height:130px; }
    .name { font-size:18px; }
    .position { margin-top:15px; }
    .c-sns-icons { margin-top:15px; }
    .desc { margin:30px auto 0; }
  }

}


/* 検索フォーム */
#archive_search {

	margin-top:50px;
	
  form { height:50px; width:400px; position:relative; margin:0 auto; }

  .input_area input { position:absolute; left:0px; width:100%; height:50px; border:none; color:#000; background:#f3f3f3; z-index:1; padding:0 60px 0 25px; border-radius:50px; z-index:1; }
  .search_button input { position:absolute; right:0px; top:0px; border:none; background:none; width:50px; height:50px; z-index:2; cursor:pointer; text-indent:-200px; overflow:hidden; }
  .search_button label { position:absolute; right:0px; top:0px; z-index:10; width:50px; height:50px; display:block; pointer-events:none; }
  .search_button label:before {
    display:block; pointer-events:none; position:absolute; left:10px; top:50%; transform: translate(0%, -50%); transition: background-color 0.5s ease;
    background:#000; font-size:24px; width:1em; height:1em; content:''; mask:var(--tcd-icon--search-thin) no-repeat center / 1em;
  }

  @media(hover: hover) {
    .search_button:hover label:before { background:rgba(0,0,0,0.6); }
  }
	@media (max-width: 767px) {
		margin-top:40px;
	}
  @media (max-width: 500px) {
    form { width:auto; }
    .input_area input { font-size:14px; }
  }

}


/* カテゴリー一覧 */
#archive_category {

	margin-bottom:70px;
	
	.item_list { display:flex; flex-wrap:wrap; width:calc(100% + 3px); }
	.item_list:not(:has(.item:nth-child(4))) { justify-content:center; }
	.item { width:25%; height:70px; padding:0 20px; display:grid; place-items:center; border:1px solid #ddd; margin:0 -1px -1px 0; z-index:1; }
	.item.active { background:var(--tcd-accent-color); border-color:var(--tcd-accaent-color); color:#fff; position:relative; z-index:2; pointer-events:none; }
	
	@media(hover: hover) {
    .item:hover { background:var(--tcd-accent-color); border-color:var(--tcd-accaent-color); color:#fff; position:relative; z-index:3; }
  }
	@media (min-width: 1101px) {
		cursor:default !important;
	}
  @media (max-width: 1100px) {
    overflow:hidden; overflow-x:auto; margin:0 -60px 70px; padding:0 60px; position:relative;
    body.is-desktop &.active { scrollbar-width:none; user-select:none; }
    body.is-desktop &.active:active { cursor:grabbing !important; }
    body.is-desktop &.active::-webkit-scrollbar { display:none; }
    body.is-mobile &.active { -webkit-overflow-scrolling:touch; scroll-behavior:smooth; }
    .item_list { width:auto; display:block; white-space:nowrap; font-size:0; position:relative; text-align:center; }
		.item_list:after { content:''; position:absolute; top:0; left:auto; height:10px; width:60px; }
    .item { width:200px; display:inline-grid; white-space:wrap; margin:0 -1px 0 0; font-size:16px; }
  }
  @media (max-width: 767px) {
    margin:0 -20px 40px; padding:0 20px;
		.item_list:after { width:20px; }
		.item { height:50px; font-size:14px; width:150px; }
	}
	
}



/* 投稿者ページ */
#author_list {

  display:grid; gap:120px 80px; grid-template-columns:repeat(3, 1fr);

  &:has(.item:nth-child(1)):not(:has(.item:nth-child(3))) { display:flex; justify-content:center; }
  &:has(.item:nth-child(1)):not(:has(.item:nth-child(3))) .item { width:calc(100% / 3); }

  .item { display:flex; flex-direction:column; }

  .image { display:block; width:150px; height:150px; border-radius:100%; margin:0 auto 30px; overflow:hidden; }
  .user_meta { text-align:center; }
  .name { font-size:20px; line-height:1.2; display:block; font-weight:600; text-align:center; }
  .position { font-size:16px; line-height:1.5; text-align:center; margin-top:15px; color:var(--tcd-accent-color); }
  .desc { line-height:2.4; --tcd-line-clamp:4; height:auto; margin-top:25px; }
  .desc a { color: var(--tcdce-base-link-color) !important; }
  .item.has_position:not(:has(.position)) .desc { margin-top:auto; }

  @media(hover: hover) {
    .desc a:hover { text-decoration:underline; }
  }
  @media (max-width: 1200px) {
    gap:100px 30px;
    .image { width:130px; height:130px; margin:0 auto 30px; }
    .name { font-size:18px; }
    .position { font-size:14px; margin-top:20px; }
  }
  @media (max-width: 1000px) {
    grid-template-columns:repeat(1, 1fr); gap:0; margin:0 -60px -50px;
    &:has(.item:nth-child(1)):not(:has(.item:nth-child(3))) { display:grid; }
    &:has(.item:nth-child(1)):not(:has(.item:nth-child(3))) .item { width:100%; }
    .item { border-top:1px solid #ddd; padding:40px 0; }
    .desc { margin:30px auto 0 !important; width:400px; }
  }
  @media (max-width: 767px) {
    margin:0 -20px -40px;
    .item { padding:30px 20px; }
    .desc { width:auto; line-height:2; }
  }

}




/* ----------------------------------------------------------------------
  ブログ詳細ページ
---------------------------------------------------------------------- */
body.sidebar_none #blog_article { border:1px solid #ddd; padding:50px; border-radius:15px; }
#blog_article .post_content { margin-bottom:50px; font-family:var(--tcd-single-content-font-type); }
@media (max-width: 767px) {
  #blog_article .post_content { margin-bottom:40px; }
	body.sidebar_none #blog_article { border:none; padding:0px; border-radius:0px; }
  .p-toc-open { right:20px !important; bottom:20px !important; z-index:100 !important; }
  body:has(.p-footer-fix) .p-toc-open { bottom:30px !important; }
}


/* ヘッダー */
#blog_header {

  margin-bottom:50px;

  .title { font-size:var(--tcd-single-title-font-size-pc); font-family:var(--tcd-single-title-font-type); line-height:1.5; margin-top:calc(0.5em - 0.5lh); margin-bottom:calc(0.5em - 0.5lh); }
  body.page & .title { text-align:center; }
  .title + .c-date { margin-top:20px; }
  .meta { display:flex; flex-wrap:wrap; margin-bottom:20px; gap:20px; }
  .meta .like { font-size:14px; position:relative; color:#999; height:45px; padding:0 0 0 20px; display:grid; place-items:center; }
  .meta .like:before {
    display:block; pointer-events:none; position:absolute; left:0px; top:15px;
    background:#999; font-size:17px; width:1em; height:1em; content:''; mask:var(--tcd-icon--heart) no-repeat center / 1em;
  }

  .featured_image { margin:50px 0 0; width:100%; height:auto; aspect-ratio:740 / 460; position:relative; overflow:hidden; display:block; }
  .featured_image .overlay { position:absolute; top:0; left:0; width:100%; height:100%; z-index:3; }
  .featured_image img { object-fit:cover; width:100%; height:100%; }
  .featured_image .category_button { position:absolute; top:0; left:0px; z-index:2; height:50px; line-height:50px; min-width:100px; font-size:14px; }

  @media (max-width: 1200px) {
    .title { font-size:calc((var(--tcd-single-title-font-size-pc) + var(--tcd-single-title-font-size-sp)) / 2); }
  }
  @media (max-width: 767px) {
    margin-bottom:40px;
    .title { font-size:var(--tcd-single-title-font-size-sp) !important; }
    .title + .c-date { margin-top:20px; }
    .meta { margin-bottom:20px; gap:15px; }
    .meta .like { height:35px; }
    .meta .like:before { top:9px; }
    .featured_image { margin:30px -20px 0 !important; width:calc(100% + 40px) !important; border-radius:0; }
    .featured_image .category_button { height:35px; line-height:35px; min-width:90px; font-size:12px; }
  }

}


/* シェアボタン */
#blog_header + .c-share-button,
#news_header + .c-share-button { margin:50px 0; }
.post_content ~ .c-share-button { margin:50px 0; }
@media (max-width: 767px) {
  #blog_header + .c-share-button,
  #news_header + .c-share-button { margin:40px 0; }
  .post_content ~ .c-share-button { margin:40px 0; }
}


/* フリースペース */
.single_free_space { margin-bottom:50px; line-height: 2.4; }
.single_free_space.mid { margin-top:50px; }
.single_free_space.btm { margin-bottom:0px; margin-top:50px; }
@media (max-width: 767px) {
  .single_free_space { margin-bottom:40px; }
  .single_free_space.btm { margin-bottom:0px; margin-top:40px; }
}


/* ページネーション */
.post_content .c-pagination { margin-top:50px; }
@media (max-width: 767px) {
  .post_content .c-pagination { margin-top:40px; }
}


/* likeボタン */
.c-post-like { margin-bottom:50px; }
.c-post-like-desc a { color: var(--tcdce-base-link-color) !important; }
@media(hover: hover) {
  .c-post-like-desc a:hover { text-decoration:underline; }
}
@media (max-width: 767px) {
  .c-post-like { margin-bottom:40px; }
}


/* プロフィール */
#author_profile {

  display:flex; flex-wrap:wrap; align-items:center; padding:40px; margin-bottom:50px; border:1px solid #ddd;

  .image { width:90px; height:90px; border-radius:100%; }
  .content { width:calc(100% - 90px); padding-left:40px; }
  .name { font-size:18px; font-weight:600; vertical-align:middle; }
  .name a { display:inline; }
  .position { font-size:14px; color:#666; display:inline; vertical-align:middle; margin:0 0 0 15px; font-weight:500; line-height:1.8; }
  .desc { margin-top:10px; line-height:2; --tcd-line-clamp:2; }

  @media (max-width: 767px) {
    padding:20px !important; margin-bottom:40px;
    .image { width:90px !important; height:90px !important; }
    .content { width:calc(100% - 90px) !important; padding-left:20px !important; }
    .name { font-size:14px; font-weight:600; }
    .position { font-size:12px; display:none; }
    .desc { margin-top:10px; font-size:14px; }
  }

}


/* タグ */
.c-post-tags {

  display:flex; flex-wrap:wrap; gap:10px; margin-bottom:50px;

  a { display:inline-block; height:35px; line-height:35px; background:#f3f3f3; padding:0 15px; font-size:14px; border-radius:5px; }

  @media(hover: hover) {
    a:hover { background:var(--tcd-accent-color); color:#fff !important; }
  }
  @media (max-width: 767px) {
    margin-bottom:40px;
  }

}


/* ナビゲーション */
#post_nav {

  display:flex; flex-wrap:wrap; margin-top:50px;

  a { width:50%; height:120px; border:1px solid #ddd; border-right:none; display:grid; place-items:center; padding:20px 40px; position:relative; }
  a:last-of-type { border-right:1px solid #ddd; }
  a.next { padding-right:70px; margin-left:auto; }
  a.prev { padding-left:70px; }
  span { line-height:1.8; --tcd-line-clamp:2; height:auto; font-size:16px; text-align:left; width:100%; }
  a:after { content:''; mask:var(--tcd-icon--arrow-thin) no-repeat center / 1em; font-size:18px; width:1em; height:1em; background:#000; transition:background-color 0.25s ease; position:absolute; }
  a.next:after { right:25px; }
  a.prev:after { transform:rotate(180deg); left:25px; }

  @media (max-width: 767px) {
    margin-top:40px; margin-bottom:40px;
    a { height:60px !important; padding:20px 20px !important; }
    a:after { font-size:14px; }
    a.next:after { right:15px; }
    a.prev:after { left:15px; }
    span { display:none; }
    a:before { font-size:14px; content:attr(data-label); }
  }

}


/* 関連記事 */
#related_post {

  margin-top:70px;

  .headline { font-size:26px; text-align:center; line-height:1; margin-bottom:50px; margin-top:calc(0.5em - 0.5lh); font-family:var(--tcd-headline-font-type); }

  .blog_list .item { padding:20px; }
  .blog_list .image { width:130px; }
  .blog_list .content { width:calc(100% - 130px); padding-left:20px; }
  .blog_list .title { font-size:14px; font-weight:500; }
  .blog_list .title a { --tcd-line-clamp:3; }
  .blog_list .c-date { display:none; }

  @media (max-width: 767px) {
    margin-top:40px;
    .headline { font-size:20px; margin-bottom:40px; }
    .blog_list .image { width:150px; }
    .blog_list .content { width:calc(100% - 150px); }
    .blog_list .c-date { display:flex; }
  }

}


/* コメント */
#comments {

  margin-top:70px;

  .p-single-bottom-title { font-size:26px; text-align:center; line-height:1; margin-bottom:50px; margin-top:calc(0.5em - 0.5lh); font-family:var(--tcd-headline-font-type); }
  .p-single-bottom-title span { display:none; }

  @media (max-width: 767px) {
    margin-top:40px !important;
    .p-single-bottom-title { font-size:20px; margin-bottom:40px; }
  }

}




/* ----------------------------------------------------------------------
 404ページ
---------------------------------------------------------------------- */
#no_search_result {
  
  display:flex; flex-wrap:wrap; justify-content:center; align-items:center; position:relative; min-height:100dvh; height:100%;

  .content { z-index:100; width:100%; max-width:820px; padding:100px 0; display:flex; flex-direction:column; justify-content:center; gap:50px 0; }
  & :is(.tcdce-body, .editor-styles-wrapper) ul li { list-style-position:inside; text-indent:-1em; }
  .pattern { margin:0 auto; }
  .pattern.full_width { margin:0; }
  .headline { text-align:center; font-size:var(--tcd-headline-font-size-pc); font-family:var(--tcd-headline-font-type); }
  .desc { text-align:center; }
  .link_button { display:grid; place-items:center; }
  .overlay { width:100%; height:100%; position:absolute; z-index:2; }
  .bg_image { width:100%; height:100%; position:absolute; object-fit:cover; z-index:1; top:0; left:0; }

  @media (max-width: 1200px) {
    margin-top:-60px;
  }
  @media (max-width: 1000px) {
    .pattern { width:auto; margin:0 50px; }
    .headline { font-size:calc((var(--tcd-headline-font-size-pc) + var(--tcd-headline-font-size-sp)) / 2); }
    .desc { margin:35px 50px -10px; width:auto; }
  }
  @media (max-width: 767px) {
    .pattern { padding:40px 0; margin:0 20px; }
    .content { padding:40px 0; }
    .headline { font-size:var(--tcd-headline-font-size-sp); }
    .desc { margin-left:20px; margin-right:20px; }
    .link_button { margin:40px auto 0; }
  }

}


/* ヘッダーバー */
body.no_search_result #header { position:fixed; }
body.no_search_result:not(:has(#header:hover)) #header:after { opacity:0; }
body.no_search_result:has(#no_search_result .bg_image):not(:has(#header:hover)) #global_menu > ul > li > a { color:#fff; }
body.no_search_result:has(#no_search_result .bg_image):not(:has(#header:hover)) #header_search .search_button:before { background:#fff; }


/* 検索フォーム */
#no_search_result .search_form {

  form { height:50px; width:400px; position:relative; margin:0 auto; }

  .input_area input { position:absolute; left:0px; width:100%; height:50px; border:none; color:#000; background:#f3f3f3; z-index:1; padding:0 60px 0 25px; border-radius:50px; z-index:1; }
  .search_button input { position:absolute; right:0px; top:0px; border:none; background:none; width:50px; height:50px; z-index:2; cursor:pointer; text-indent:-200px; overflow:hidden; }
  .search_button label { position:absolute; right:0px; top:0px; z-index:10; width:50px; height:50px; display:block; pointer-events:none; }
  .search_button label:before {
    display:block; pointer-events:none; position:absolute; left:10px; top:50%; transform: translate(0%, -50%); transition: background-color 0.5s ease;
    background:#000; font-size:24px; width:1em; height:1em; content:''; mask:var(--tcd-icon--search-thin) no-repeat center / 1em;
  }

  @media(hover: hover) {
    .search_button:hover label:before { background:rgba(0,0,0,0.6); }
  }
  @media (max-width: 500px) {
    form { margin:0 auto; }
  }
  @media (max-width: 500px) {
    form { width:auto; margin:40px 20px 0; }
    .input_area input { font-size:14px; }
  }

}


/* タグ一覧 */
#no_search_result .tag_list {

  .wp-tag-cloud { display:inline-flex; flex-wrap:wrap; gap:5px; }
  .wp-tag-cloud li { display:block; }
  .wp-tag-cloud a { background:#f3f3f3; height:35px; line-height:35px; display:block; border-radius:4px; padding:0 15px; font-size:14px !important; }

  @media(hover: hover) {
    .wp-tag-cloud a:hover { background:var(--tcd-accent-color) !important; border-color:var(--tcd-accent-color) !important; color:#fff !important; }
  }
  @media (max-width: 767px) {
    width:auto; margin:0 20px;
  }

}


/* 背景画像がある場合 */
#no_search_result:has(.bg_image) {

  .content { color:#fff; }

  .content p a { color:#fff !important; text-decoration:underline; }
  .content { color:#fff; }
  .search_form .input_area input { background:#fff; }
  .wp-tag-cloud a { background:none; color:#fff; border:1px solid rgba(255,255,255,0.5); }

  @media(hover: hover) {
    .content p a:hover { color:rgba(255,255,255,0.5) !important; }
  }

}




/* ----------------------------------------------------------------------
  ページヘッダー
---------------------------------------------------------------------- */
#page_header {
  
  position:relative; width:100%; padding:50px 50px 0; margin:0 0 100px; text-align:center;

  body.page_header_type2 & { padding-left:0; padding-right:0; }
  body:has(.c-breadcrumb) & { margin-bottom:0; }

  .headline { text-align:center; line-height:1.4; color:var(--tcd-accent-color); font-size:var(--tcd-page-header-font-size-pc); font-family:var(--tcd-page-header-font-type); font-weight:600; margin-bottom:calc(0.5em - 0.5lh); transform: translate3d(0,40px,0); }
  body.page & .headline { font-size:var(--tcd-page-header-headline-font-size-pc); }
	body.page-template-page__tab & .headline { font-size:var(--tcd-tab_page_headline-font-size-pc); }
  .sub_headline { text-align:center; line-height:1; font-size:16px; font-weight:500; padding-top:15px; transform: translate3d(0,40px,0); }

  .headline.animate { transform: translate3d(0,0,0); }
  .sub_headline.animate { transform: translate3d(0,0,0); }
  
  .image { margin-top:100px; display:block; width:100%; height:auto; aspect-ratio:1350 / 350; z-index:1; position:relative; overflow:hidden; border-radius:15px; }
  body.page_header_type2 & .image { border-radius:0; }
  .image img { position:absolute; top:0; left:0; width:100%; height:100%; object-fit:cover; }

  @media (max-width: 1200px) {
    padding:50px 60px 0;
    .headline { font-size:calc( (var(--tcd-page-header-font-size-pc) + var(--tcd-page-header-font-size-sp)) / 2 ); }
    body.page & .headline { font-size:calc( (var(--tcd-page-header-headline-font-size-pc) + var(--tcd-page-header-headline-font-size-sp)) / 2 ); }
		body.page-template-page__tab & .headline { font-size:calc( (var(--tcd-tab_page_headline-font-size-pc) + var(--tcd-tab_page_headline-font-size-sp)) / 2 ); }
    .image { border-radius:10px; min-height:200px !important; }
  }
  @media (max-width: 767px) {
    padding:30px 20px 0; margin-bottom:40px;
    .image { min-height:inherit !important; height:130px !important; aspect-ratio:unset !important; margin-top:40px; margin-left:-20px; margin-right:-20px; border-radius:0; width:calc(100% + 40px); }
    .headline { font-size:var(--tcd-page-header-font-size-sp); }
    body.page & .headline { font-size:var(--tcd-page-header-headline-font-size-sp); }
		body.page-template-page__tab & .headline { font-size:var(--tcd-tab_page_headline-font-size-sp); }
    .sub_headline { font-size:14px; padding-top:10px; }
  }

}


/* キャッチフレーズ・説明文 */
#content_header {

  width:820px; margin:0 auto 100px;

  .catch { text-align:center; line-height:1.4; color:var(--tcd-accent-color); font-size:var(--tcd-headline-font-size-pc); font-family:var(--tcd-headline-font-type); font-weight:600; margin-top:calc(0.5em - 0.5lh); margin-bottom:calc(0.5em - 0.5lh); }
  .catch + .desc { margin-top:50px; }
  .desc { text-align:center; }
  .desc.mobile { display:none; }

  @media (max-width: 1200px) {
		body:has(.c-breadcrumb) & { margin-top:40px; }
    .catch { font-size:calc( (var(--tcd-headline-font-size-pc) + var(--tcd-headline-font-size-sp)) / 2 ); }
  }
  @media (max-width: 940px) {
    width:auto;
  }
  @media (max-width: 767px) {
    margin-bottom:40px;
    .catch { font-size:var(--tcd-headline-font-size-sp); }
    .catch + .desc { margin-top:30px; }
    .desc.pc { display:none; }
    .desc.mobile { display:block; }
  }

}


/* パンくずリンク */
.c-breadcrumb {

  height:115px !important; background:none !important; margin-block:0 !important; margin:0 auto !important; width:1100px;

  body:has(#page_header) &,
	body.archive &,
	body.search & { margin:0 auto 50px !important; }

	body.tax-news_category &,
  body.sidebar_none &,
  body.single-service &,
  body.single-voice & { width:820px; }

  .c-breadcrumb__item:where(:last-of-type) { color:#999 !important; }
  .c-breadcrumb__item:not(:first-of-type) a { max-width:250px; white-space:nowrap; text-overflow:ellipsis; visibility:visible; }
  .c-breadcrumb__item-arrow { top:-1px; position:relative; }
  br { display:none; }
  .screen-reader-text { display:none; }

  @media (max-width: 1200px) {
    width:auto !important; height:50px !important;
    body.single & { width:750px !important; }
	  body.tax-news_category &,
    body.sidebar_none &,
    body.single-service &,
    body.single-voice & { width:820px !important; }
  }
  @media (max-width: 991px) {
    .c-breadcrumb__list { padding-inline: 0px; }	
  }
  @media (max-width: 870px) {
    body.single & { width:auto !important; }
	  body.tax-news_category &,
    body.sidebar_none &,
    body.single-service &,
    body.single-voice & { width:auto !important; }
  }
  @media (max-width: 767px) {
    margin:0 -20px 30px !important;
    body.single & { margin:0 -20px 0 !important; }
    .c-breadcrumb__list { padding-inline: 20px; }	
		body.archive &,
		body.search & { margin:0 -20px -24px !important; }
    body.author & { margin-bottom:30px !important; }
    .c-breadcrumb__item-arrow { top:0px; }
  }

}




/* ----------------------------------------------------------------------
  ヘッダーバー
---------------------------------------------------------------------- */
#header { position:relative; transform: translateY(0); transition: transform 0.3s ease-in-out; top:0; left:0; width:100%; display:flex; flex-wrap:nowrap; justify-content:space-between; z-index:1000; }
body.header_fix #header { position:fixed !important; }
html:has(#wpadminbar) body.header_fix #header { top:32px; }
body.logo_shape_type3 #header { position:sticky !important; }
@keyframes header_animation {
  0% { transform: translateY(-100%); }
  100% { transform: translateY(0); }
}
@keyframes header_animation_reverse {
  0% { transform: translateY(0); }
  100% { transform: translateY(-100%); }
}
@media (max-width: 1200px) {
  #header { height:60px; position:sticky !important; animation:none !important; transition:background 0.5s ease, box-shadow 0.5s ease; }
	body.open_drawer_menu #header { z-index:1; }
  body.header_fix #header { position:sticky !important; }
	html:has(#wpadminbar) #header { top:32px !important; }
  body.start_scroll #header { box-shadow:0 10px 15px 0 rgba(120,120,120,0.1); background:#fff; }
}
@media (max-width: 782px) {
	html:has(#wpadminbar) #header { top:46px !important; }
}



/* 今回は形状が特殊なヘッダーなので、ドロップシャドウに疑似要素を使用 */
#header:after { content:''; display:block; width:100%; height:90px; background:#fff; position:absolute; top:0; left:0; z-index:1; transition:opacity 0.5s ease; }
body.header_fix #header:after,
body.logo_shape_type3.start_scroll #header:after { box-shadow:0 10px 15px 0 rgba(120,120,120,0.1); }
body {
  &:has(.megamenu1:hover),
  &:has(.megamenu2:hover),
  &:has(li.menu-item-megamenu-1 a:hover),
  &:has(li.menu-item-megamenu-2 a:hover) {
    &.header_fix #header:after,
    &.logo_shape_type3.start_scroll #header:after {
      box-shadow: none;
    }
  }
}
@media (max-width: 1200px) {
  #header:after { display:none !important; }
}


/* ロゴ */
#header_logo {

  flex:0 0 auto; display:grid; place-items:center; z-index:3; background:var(--tcd-header-logo-bg); position:relative;

  a { min-height:90px; color:#000; transition:opacity 0.5s ease, color 0.5s ease; display:flex; flex-direction:column; justify-content:center; align-items:center; text-align:center; }
  &.shape_type2 a { aspect-ratio:1 / 1; }
	&.shape_type3 { max-height:90px; }
  &.shape_type3 a { height:90px; padding-top:0 !important; padding-bottom:0 !important; }
  body.header_fix & a { padding-top:0 !important; padding-bottom:0 !important; aspect-ratio:unset !important; }

  .title { display:block; color:#fff; font-family:var(--tcd-logo-font-type); font-weight:var(--tcd-logo-font-weight, 600); font-size:var(--tcd-logo-font-size-pc); flex:0 0 auto; }
  picture { display:block; width:fit-content; }
  .image { max-width:none; width:auto; height:var(--tcd-logo-image-size-pc); display:block; margin:auto; }
  .image.mobile { display:none; width:auto; height:var(--tcd-logo-image-size-sp); margin:auto; }

	
  @media(hover: hover) {
    a:hover { opacity:0.5; }
  }
  @media (min-width: 1201px) {
		body.header_fix & .title { display:none; }
    .fix_header_title { opacity:0; position:absolute; color:#fff; font-family:var(--tcd-logo-font-type); font-weight:var(--tcd-logo-font-weight, 600); font-size:var(--tcd-fix-header-logo-font-size-pc); flex:0 0 auto; }
    body.header_fix &:has(.fix_header_title) img  { display:none; }
    body.header_fix & .fix_header_title { opacity:1; position:relative; }
    .fix_header_logo { opacity:0; position:absolute; height:var(--tcd-fix-header-logo-image-size); width:auto; margin:auto; max-width:none; }
    body.header_fix &:has(.fix_header_logo) img  { opacity:0; position:absolute; }
    body.header_fix &:has(.fix_header_logo) .fix_header_logo { opacity:1; position:relative; }
  }
  @media (max-width: 1200px) {
    a { aspect-ratio:none; padding:0 35px !important; min-height:60px !important; height:60px !important; }
    .title { font-size:var(--tcd-logo-font-size-sp); }
    .image { height:var(--tcd-logo-image-size-sp); transition:opacity 0.5s ease; }
    .image.pc { display:none; }
    .image.mobile { display:block; }
    .fix_header_title { display:none !important; }
    .fix_header_logo { display:none !important; }
  }

}
#header_height_element {

  position:absolute; top:0; left:0; opacity:0; pointer-events:none; z-index:-1;
  min-height:90px; display:flex; flex-direction:column; justify-content:center; align-items:center; text-align:center;

  &.shape_type2 { aspect-ratio:1 / 1; }
  &.shape_type3 { height:90px; padding-top:0 !important; padding-bottom:0 !important; }
	img { max-width:none; width:auto; height:var(--tcd-logo-image-size-pc); display:block; margin:auto; }
  .title { display:block; color:#fff; font-family:var(--tcd-logo-font-type); font-weight:var(--tcd-logo-font-weight, 600); font-size:var(--tcd-logo-font-size-pc); flex:0 0 auto; }
}


/* グローバルメニュー */
#global_menu {

  pointer-events:none; position:reltive; z-index:2; margin-left:auto;

  #header:not(:has(#header_search)) & { margin-right:30px; }

  & > ul { display:flex; flex-wrap:nowrap; justify-content:flex-end; }
  & > ul > li { flex:0 0 auto; position:relative; font-size:16px; pointer-events:auto; }
  & > ul > li > a { display:block; text-decoration:none; position:relative; height:90px; line-height:90px; padding:0 30px; }
  & > ul > li.active > a,
  & > ul > li.current-menu-item > a,
  body:has(.megamenu1:hover) #header.type2 & > ul > li.menu-item-megamenu-1 > a,
  body:has(.megamenu2:hover) #header.type2 & > ul > li.menu-item-megamenu-2 > a { color:var(--tcd-accent-color); }

  & ul ul { background:var(--tcd-accent-color); display:none; width:240px; position:absolute; top:90px; left:10px; margin:0; padding:0; z-index:100; }
  & ul ul ul { display:block; position:relative; top:0; left:0; }
  & ul ul li { line-height:1.5; font-size:14px; padding:0; margin:0; text-align:left; position:relative; display:block; }
  & ul ul a { color:#fff; display:block; position:relative; padding:17px 25px 15px; height:auto; line-height:1.6; margin:0; }
  body.megamenu_dark & ul ul a { background:#f6f6f6; color:#000; }
  & ul ul ul a { padding-left:calc(25px + 1em); }
  & ul ul ul ul a { padding-left:calc(25px + 2em); }
  & ul ul ul ul ul a { padding-left:calc(25px + 3em); }

  @media(hover: hover) {
    & > ul > li > a:hover,
    & > ul > li.active > a { color:var(--tcd-accent-color) !important; }
    & ul ul a:hover { background:rgba(255,255,255,0.2) !important; }
    body.megamenu_dark & ul ul a:hover { background:var(--tcd-accent-color) !important; color:#fff; }
  }
  @media (max-width: 1200px) {
    display:none;
  }

}


/* 検索フォーム */
#header_search {

  flex:0 0 auto; height:90px; width:70px; position:relative; z-index:2; margin-left:30px;

  form  { position:relative; height:100%; }

  .input_area { position:absolute; top:0px; right:70px; width:320px; height:90px; padding:0 20px; background:#fff; opacity:0; pointer-events:none; transition: opacity 0.5s ease; }
  &.active .input_area,
  &:hover .input_area { opacity:1; pointer-events:auto; }
  .input_area input { border:none; height:50px; width:100%; padding:0 25px; background:#fafafa; border:1px solid #ddd; border-radius:50px; top:21px; right:0px; position:relative; }

  .search_button { position:absolute; right:0px; top:0px; height:100%; width:70px; }
  .search_button input { display:block; width:100%; height:100%; cursor:pointer; background:none; border:none; text-indent:-200px; overflow:hidden; }
  .search_button:before {
    display:block; pointer-events:none; position:absolute; left:0px; top:50%; transform: translate(0%, -50%); transition: background-color 0.5s ease;
    background:#000; font-size:25px; width:1em; height:1em; content:''; mask:var(--tcd-icon--search) no-repeat center / 1em;
  }

  @media(hover: hover) {
    .search_button:hover:before { background-color:rgba(0,0,0,0.5) !important; }
  }
  @media (max-width: 1200px) {
    display:none;
  }

}


/* ヘッダーメッセージ */
#header_message { position:relative; top:0; left:0px; width:100%; color:#fff; text-align:center; font-size:var(--var-2header-message-height); }
body.home #header_message { position:relative; }
#header_message * { padding:14px 30px; color:inherit; display:block; line-height:1.6; font-size:14px; }
@media(hover: hover) {
  #header_message a:hover { opacity:0.6; }
}
@media (max-width: 782px) {
  body.home #header_message { position:sticky; }
}


/* ドロワーメニュー開閉ボタン */
#drawer_menu_button {

  display:none; width:90px; height:90px; cursor:pointer; transition: opacity 0.5s ease; position:absolute; top:0; right:0; z-index:3;

  span { width:22px; height:2px; background:#000; display:block; position:absolute; left:18px; transition: all 0.4s ease; }
  span:nth-child(1) { top:37px; transform-origin:center; }
  span:nth-child(2) { top:43px; transform-origin:center; }
  span:nth-child(3) { top:49px; transform-origin:center; }

  body.open_drawer_menu & {
    z-index:1003;
    span:nth-child(1) { top:43px; left:calc(50% - 12px); transform:rotate(45deg); }
    span:nth-child(2) { width:0px; }
    span:nth-child(3) { top:43px; left:calc(50% - 12px); transform:rotate(-45deg); }
  }

  @media(hover: hover) {
    &:hover { opacity:0.4; }
  }
  @media (max-width: 1200px) {
    display:block; width:60px; height:60px;
    span { width:19px !important; height:2px; }
    span:nth-child(1) { top:23px; }
    span:nth-child(2) { top:29px; }
    span:nth-child(3) { top:35px; }
    body.open_drawer_menu & {
			display:none;
    }
    body.home:not(.start_scroll) & span,
    body.page-template-page__lp:not(.start_scroll) & span { background:#fff; }
  }

}




/* ----------------------------------------------------------------------
 メガメニュー
---------------------------------------------------------------------- */
.megamenu { display:none; opacity:0; visibility:hidden; background:#fff; pointer-events:none; width:100%; position:absolute; left:0; top:89px; overflow:hidden; z-index:300; z-index:2; }
body.megamenu_dark .megamenu { background:#f6f6f6; }
body.megamenu_light .megamenu:before { content:''; display:block; width:100%; height:1px; background:#ddd; position:absolute; top:0; left:0; }
body.megamenu_light .megamenu:after { content:''; display:block; width:var(--tcd-header-logo-width); height:1px; background:var(--tcd-header-logo-bg); position:absolute; top:0; left:0; }
body:not(.start_scroll) .megamenu { z-index:3; }
.megamenu:hover,
body:has(li.menu-item-megamenu-1 a:hover) .megamenu1,
body:has(li.menu-item-megamenu-2 a:hover) .megamenu2 {
	opacity:1; visibility:visible; pointer-events:auto; box-shadow:0 10px 15px 0 rgba(50,50,50,0.1);
}
#global_menu li.menu-item-megamenu ul { display:none !important; }
@media (max-width: 1200px) {
  .megamenu { display:none; }
}


/* メガメニューが展開した時のロゴ */
body:not(.header_fix):has(.megamenu:hover),
body:not(.header_fix):has(li.menu-item-megamenu-1 a:hover),
body:not(.header_fix):has(li.menu-item-megamenu-2 a:hover) {
	#header { margin-bottom:calc( var(--tcd-header-logo-height) - 90px ); }
	#header_logo a { padding-top:0 !important; padding-bottom:0 !important; height:90px !important; aspect-ratio:unset !important ; }
	#header_logo .image { opacity:0; position:absolute; }
	#header_logo .fix_header_logo { opacity:1; position:relative; }
  #header_logo .fix_header_title { opacity:1; position:relative; }

}


/* カテゴリー記事一覧 */
.megamenu1 {

  padding-bottom:40px;

  .tab_list {

    width:1101px; margin:0 auto; position:relative;

    .item { display:grid; place-items:center; text-align:center; height:80px; line-height:1.4; cursor:pointer; transition: color 0.25s ease; }
    .item.active { pointer-events:none; color:var(--tcd-accent-color); }
    &:not(.is-overflow) .splide__list { justify-content:center; transform:none !important; }
    &:not(.is-overflow) .splide__slide:last-of-type { margin-right:0 !important; }
		&:not(.is-overflow) .splide__arrows { display:none !important; }
		&:has(.splide__slide:only-of-type) { display:none; }
		
	}

  .tab_content {

    display:none; visibility:hidden; width:1100px; margin:0 auto;

    &.active { display:block; visibility:visible; }
    &:has(.splide__arrow--next:disabled):has(.splide__arrow--prev:disabled) .splide__list { justify-content:center; transform:none !important; }
		&:has(.splide__arrow--next:disabled):has(.splide__arrow--prev:disabled) .megamenu_post_list:before { display:none; }
		&:has(.splide__arrow--next:disabled):has(.splide__arrow--prev:disabled) .megamenu_post_list:after { display:none; }
		&:has(.splide__arrow--next:disabled):has(.splide__arrow--prev:disabled) .megamenu_post_list .item:first-of-type { border-left:1px solid #ddd; }

  }

  .megamenu_post_list { position:relative; }
	.megamenu_post_list:before { content:''; width:1px; height:170px; background:#ddd; display:block; position:absolute; top:0; left:0; z-index:2; }
	.megamenu_post_list:after { content:''; width:1px; height:170px; background:#ddd; display:block; position:absolute; top:0; right:0; z-index:2; }
  .megamenu_post_list .item a { border:1px solid #ddd; border-left:none; background:#fff; padding:20px; display:flex; flex-wrap:wrap; align-items:center; position:relative; height:170px; width:100%; }
  .megamenu_post_list .item .c-thumbnail { display:block; width:130px; height:130px; z-index:1; position:relative; }
  .megamenu_post_list .item .title { width:calc(100% - 130px); line-height:1.8; font-size:14px; --tcd-line-clamp:3; height:auto; padding-left:25px; }

	&:not(:has(.tab_list)) .tab_content { margin-top:40px; }
	.tab_list:has(.splide__slide:only-of-type) + .tab_content { margin-top:40px; }

  .splide__arrow--next { top:85px; right:-70px; background:none; box-shadow:none; }
  .splide__arrow--prev { top:85px; left:-70px; background:none; box-shadow:none; }
  .splide__arrow:before { font-size:14px; }
  .tab_list .splide__arrow--next { top:41px; right:-70px; }
  .tab_list .splide__arrow--prev { top:41px; left:-70px; }
  .tab_list .splide__arrow:before { font-size:12px; }

  @media(hover: hover) {
    .tab_list .item:hover { color:#999; }
  }

}

/* バナースライダー */
.megamenu2 {

  .megamenu_banner_list { width:1101px; margin:0 auto; }
  &:has(.splide__arrow--next:disabled):has(.splide__arrow--prev:disabled) .splide__list { justify-content:center; transform:none !important; }

  .title { font-size:16px; line-height:1.8; display:grid; place-items:center; padding:0 20px; height:70px; }
	.title span { --tcd-line-clamp:1; height:auto; }
  .c-thumbnail { width:100%; height:auto; aspect-ratio:366 / 223; z-index:1; }
  .desc { font-size:14px; line-height:1.8; display:grid; place-items:center; padding:0px 20px; height:70px; }
	.desc span { --tcd-line-clamp:1; height:auto; }

	.item:not(:has(.title)) { padding-top:70px; }
	.item:not(:has(.desc)) { padding-bottom:70px; }
	
  .splide__arrow--next { top:180px; right:-30px; }
  .splide__arrow--prev { top:180px; left:-30px; }

}



/* ----------------------------------------------------------------------
 ドロワーメニュー
---------------------------------------------------------------------- */
#drawer_menu {
  position:fixed; top:0px; right:0; width:360px; max-width:100%; height:100vh; height:100dvh; overflow:auto; z-index:999999; background:var(--tcd-accent-color);
  transition: transform 0.5s cubic-bezier(0.22, 1, 0.36, 1); -webkit-overflow-scrolling: touch; pointer-events:none; transform: translate3d(100%,0,0);
}
body.open_drawer_menu #drawer_menu { transform: translate3d(0,0,0); pointer-events:auto; }
#drawer_menu_overlay { opacity:0; pointer-events:none; content:''; width:100%; height:100%; background:rgba(0,0,0,0.5); display:block; position:fixed; top:0; left:0; z-index:9999; transition: opacity 0.5s ease; }
body.open_drawer_menu #drawer_menu_overlay { opacity:1; pointer-events:auto; }
@media (max-width: 500px) {
	#drawer_menu { width:100%;}
}


/* 閉じるボタン */
#drawer_menu_close_button {

  cursor:pointer; display:block; width:100%; height:50px; position:relative;

  &:before { content:''; display:block; width:15px; height:1px; background:#fff; transform:rotate(45deg); position:absolute; top:26px; right:17px; transition: background 0.25s ease; }
  &:after { content:''; display:block; width:15px; height:1px; background:#fff; transform:rotate(-45deg); position:absolute; top:26px; right:17px; transition: background 0.25s ease; }

  @media(hover: hover) {
    &:hover:before,
    &:hover:after { background:rgba(255,255,255,0.6); }
  }

}


/* アイコンメニュー */
#drawer_icon_menu {

  display:flex; flex-wrap:wrap; color:#fff; border-top:1px solid rgba(255,255,255,0.3);

  a.item { flex: 1 1 0%; height:90px; display:flex; flex-direction:column; justify-content:center; align-items:center; gap:10px 0; padding:20px; color:#fff; border-right:1px solid rgba(255,255,255,0.3); }
  a.item:last-of-type { border-right:none; }

  .icon { width:35px; transition: transform 0.3s ease; }
  svg { display:block; font-size:35px; width:1em; height:1em; fill:currentColor; object-fit:contain; transition: opacity 0.25s ease; }
  svg path { fill:#fff; }
  img { display:block; width:auto; height:auto; max-width:35px; }

  .title { font-size:12px; display:block; text-align:center; }
  .title span { --tcd-line-clamp:2; height:auto; }

  @media(hover: hover) {
    a:hover { opacity:0.7; }
  }

}


/* グローバルメニュー */
#drawer_menu_nav {

  border-bottom:1px solid rgba(255,255,255,0.3);

  li { position:relative; }
  li ul { display:none; }
  li.menu-item-has-children.open + li a { border-top:none; }
  a {
    position:relative; display:block;  margin:0; padding:0 50px 0 20px; height:50px; line-height:50px; overflow:hidden; text-decoration:none;
    border-top:1px solid rgba(255,255,255,0.3); color:#fff; font-size:14px; overflow:hidden; white-space:nowrap; text-overflow:ellipsis; visibility:visible;
  }
  li li a { background:rgba(255,255,255,0.15); border:none; }

  .child_menu_button { display:block; position:absolute; text-align:center; width:50px; height:50px; right:0px; top:0px; z-index:9; cursor:pointer; }
  .child_menu_button:before { position:absolute; right:17px; top:26px; content:''; width:16px; height:1px; background:#fff !important; transform:rotate(90deg); transition: transform 0.5s ease; }
  .child_menu_button:after { position:absolute; right:17px; top:26px; content:''; width:16px; height:1px; background:#fff !important; transform:scaleX(1); transform-origin:left; transition: transform 0.5s ease; }
  li.open > .child_menu_button:before { transform:rotate(0deg); }
  li.open > .child_menu_button:after { transform:scaleX(0); }
  li li.menu-item-has-children > a:before,
	li li.menu-item-has-children > a:after { display:none; }

  @media(hover: hover) {
    a:hover { color:rgba(255,255,255,0.6) !important; }
    .child_menu_button:hover:after { background:rgba(255,255,255,0.6); }
  }

}



/* 検索フォーム */
#drawer_menu_search {

  margin:0 20px; position:relative; width:auto;
  
  * + & { margin-top:30px; }
  .input_area { background:rgba(255,255,255,0.2); width:100%; height:50px; border-radius:50px; position:relative; }
  .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 25px; color:#fff; }
  .button_area { width:50px; height:50px; position:absolute; right:0px; top:0px; }
  .button_area input { width:50px; height:50px; border:none; background:none; cursor:pointer; text-indent:-200px; }
  .button_area:before {
    display:block; text-align:center; cursor:pointer; z-index:1; pointer-events:none; position:absolute; right:12px; top:12px; transition: background 0.25s ease;
    background:#fff; font-size:30px; width:1em; height:1em; content:''; mask:var(--tcd-icon--search) no-repeat center / 1em;
  }

  @media(hover: hover) {
    .button_area:hover:before { background:rgba(0,0,0,0.6); }
  }

}


/* SNSアイコン */
#drawer_menu .c-sns-icons { margin:0 20px; justify-content:center; }
* + #drawer_menu .c-sns-icons { margin-top:30px; }
#drawer_menu .c-sns-icons.c-sns-icons--mono a { color:#fff; }




/* ----------------------------------------------------------------------
  フッター
---------------------------------------------------------------------- */
#footer { width:100%; margin-top:auto; box-shadow:0 -10px 15px 0px rgba(120,120,120,0.1); }
#footer_main { display:flex; flex-wrap:nowrap; }
@media (max-width: 1200px) {
  #footer_main { display:block; }
}


/* フッターバナー */
#footer_banner {

  .splide { width:1101px; margin:0 auto; position:relative; }
  .splide:not(.is-overflow) .splide__list { justify-content:center; transform:none !important; }
  .splide:not(.is-overflow) .splide__slide:last-of-type { margin-right:0 !important; }
	.splide:has(.splide__slide:only-of-type) .splide__list .item { transform:translate3d(-50%,0,0);  }
	
  .item { position:relative; overflow:hidden; padding-top:70px; }
	.item:not(:has(.title)) { padding-bottom:70px; }
  .item .c-thumbnail { width:100%; height:172px; z-index:1; }
  .item .title { display:block; font-size:16px; height:70px; font-weight:600; line-height:1.5; font-weight:400; display:grid; place-items:center; }

  .splide__arrows { top:155px; transform: translateY(-50%); opacity:0; transition: opacity 0.5s ease; }
  .splide__arrow--prev { left:-35px; }
  .splide__arrow--next { right:-35px; }

  @media(hover: hover) {
    &:hover .splide__arrows { opacity:1; }
  }
  @media (max-width: 1200px) {
    .splide { visibility:visible !important; width:auto; }
    .splide__track { padding:0 60px; overflow:hidden; overflow-x:auto; }
    body.is-desktop & .splide__track { scrollbar-width:none; user-select:none; cursor:grab; }
    body.is-desktop & .splide__track:active { cursor:grabbing; }
    body.is-desktop & .splide__track::-webkit-scrollbar { display:none; }
    body.is-mobile & .splide__track { -webkit-overflow-scrolling:touch; scroll-behavior:smooth; }
    .splide__list { width:auto; display:block; white-space:nowrap; font-size:0; position:relative; text-align:center; }
    .splide__list:after { content:''; position:absolute; top:0; left:auto; height:10px; width:60px; }
    .splide__arrows { display:none; }
    .item { width:370px; margin-right:2px; display:inline-block; white-space:wrap; text-align:left; }
    .item:last-of-type { margin-right:0px; }
  }
  @media (max-width: 767px) {
    .splide__track { padding:0 20px; }
    .splide__list:after { width:20px; }
    .item { width:266px; margin-right:1px; padding-top:20px; }
		.item:not(:has(.title)) { padding-bottom:20px; }
    .item .c-thumbnail { height:124px; }
    .item .title { font-size:14px; height:50px; }
  }

}


/* CTA */
#footer_cta {

  background:rgba(var(--tcd-footer-cta-color),1); color:#fff;
  
  .item_list { display:flex; flex-wrap:nowrap; }

  a.item { flex: 1 1 0%; display:flex; flex-wrap:nowrap; align-items:center; justify-content:center; height:150px; padding:0 30px; color:#fff; border-right:1px solid rgba(255,255,255,0.4); }
  a.item:last-of-type { border-right:none; }

  .icon { transition: transform 0.3s ease; }
  svg { display:block; font-size:60px; width:1em; height:1em; fill:currentColor; object-fit:contain; transition: opacity 0.25s ease; }
  img { max-width:55px; height:auto; margin:0 10px 0 0; display:block; transition: opacity 0.25s ease; }
  svg path { fill:#fff; }

  .content { display:flex; flex-direction:column; justify-content:center; gap:10px 0; padding-left:20px; }
  a.item:not(:has(.icon)) .content { padding-left:0; }
  .headline { font-size:14px; display:block; line-height:1.4; }
  .title { font-size:22px; display:block; font-weight:600; line-height:1.4; }
  .tel { font-size:32px; display:block; font-weight:600; line-height:1.4; }
  .desc { font-size:14px; display:block; line-height:1.4; }

  @media(hover: hover) {
    a:hover { color:rgba(255,255,255,0.8); }
    a:hover .icon { transform:scale(1.2); }
  }
  @media (max-width: 1100px) {
    overflow:hidden; overflow-x:auto;
    body.is-desktop &.active { scrollbar-width:none; user-select:none; }
    body.is-desktop &.active:active { cursor:grabbing !important; }
    body.is-desktop &.active::-webkit-scrollbar { display:none; }
    body.is-mobile &.active { -webkit-overflow-scrolling:touch; scroll-behavior:smooth; }
    .item_list { width:fit-content; }
    a.item { flex:0 0 auto; padding:0 30px; }
    .title { font-size:20px; white-space:nowrap; }
    .tel { font-size:30px; white-space:nowrap; }
    .desc { font-size:12px; white-space:nowrap; }
  }
  @media (max-width: 767px) {
    a.item { height:120px; padding:0 20px; }
    .icon { width:35px; }
    svg { font-size:35px; }
		img { max-width:35px; }
    .content { gap:5px 0; padding-left:15px; }
  }

}


/* ロゴエリア */
#footer_logo_area {
  
  position:relative; flex: 1 1 0%; display:flex; flex-direction:column; gap:50px 0; background:var(--tcd-accent-color); color:#fff; padding:80px;

  #footer_main:not(:has(#footer_menu_area)) & { justify-content:center; text-align:center; }

  #footer_logo {
    a { display:block; transition:all 0.5s ease; text-decoration:none; color:#fff; }
    picture { display:block; width:fit-content; }
    .image { height:var(--tcd-footer-logo-image-size-pc); width:auto; }
    .image { max-width:none; width:auto; height:var(--tcd-footer-logo-image-size-pc); display:block; margin:auto; }
    .image.mobile { display:none; width:auto; height:var(--tcd-footer-logo-image-size-sp); margin:auto; }
    .text { display:block; font-family:var(--tcd-logo-font-type); font-weight:var(--tcd-logo-font-weight, 600); font-size:var(--tcd-footer-logo-font-size-pc); }
  }

  #footer_info { font-size:14px; line-height:2.4; margin-top:calc(0.5em - 0.5lh); margin-bottom:calc(0.5em - 0.5lh); }

  a[href*="tel:"] { text-decoration:none; }
  .c-sns-icons { margin-top:-18px; }
  .c-sns-icons a { color:#fff; }
  #footer_main:not(:has(#footer_menu_area)) & .c-sns-icons { justify-content:center; }

  @media(hover: hover) {
    #footer_logo a:hover { opacity:0.5; }
  }
  @media (max-width: 1200px) {
    padding:80px 50px; align-items:center;
    #footer_info { text-align:center; }
  }
  @media (max-width: 767px) {
    padding:30px 20px; gap:20px 0; align-items:flex-start;
    #footer_logo {
      .image { height:var(--tcd-footer-logo-image-size-sp); }
      .image.pc { display:none; }
      .image.mobile { display:block; }
      .text { font-size:var(--tcd-footer-logo-font-size-sp); }
    }
    #footer_info { font-size:14px; line-height:2; text-align:left; margin-top:5px; }
    .c-sns-icons { margin-top:0px; }
  }

}


/* フッターメニュー */
#footer_menu_area {

  flex: 1 1 0%; background:#f5f3f0; padding:80px; display:flex; gap:0 50px; font-size:14px;

  & > div { flex: 1 1 0%; }
  li { margin:0 0 30px 0; }
  li:last-of-type { margin-bottom:0; }

  @media (max-width: 1200px) {
    display:none;
  }

}


/* コピーライト */
#copyright p { font-size:14px; display:block; line-height:1.4; text-align:center; padding:25px 100px; }
@media (max-width: 1200px) {
  #copyright p { padding:20px 60px; }
}
@media (max-width: 767px) {
  #copyright p { padding:20px 20px; }
}


/* フッターボタン */
body.is-scroll .p-footer-fix { z-index:1000; }




/* ----------------------------------------------------------------------
  ウィジェット
---------------------------------------------------------------------- */
/* 基本設定 */
.p-widget-list { padding-top:0 !important; }
.p-widget-list-sp { display:none !important; }
.p-widget-headline { position:relative; z-index:2; background:#fff !important; color:var(--tcd-accent-color) !important; border:1px solid #ddd; border-top:none; padding-top:4px !important; }
:is(.widget_categories, .widget_archive, .widget_nav_menu, .widget_meta, .widget_pages, .widget_media_image) .p-widget-headline { margin-bottom:-1px !important; position:relative; }
.p-widget-headline:before { content:''; display:block; width:calc(100% + 2px); height:4px; background:var(--tcd-accent-color); position:absolute; top:0; left:-1px; }
@media (max-width: 767px) {
	.p-widget-list { font-size:14px !important; }
  .p-widget-list-pc { display:none !important; }
  .p-widget-list-sp { display:grid !important; }
}
.p-widget-list { grid-template-columns:repeat(1, 1fr) !important; height:100%; align-items:start; }


/* タブ記事一覧 */
.widget_tcd_widget_tab_post_list .p-widget-headline { margin-bottom:-1px; }
.p-widget-tab-post { font-size:14px; }
.p-widget-tab-post-nav { position: relative; display: flex; height: 60px; }
.p-widget-tab-post-nav-item { position: relative; flex: 1; padding-inline: 1em; border: 1px solid #dddddd; transition-property: color; }
.p-widget-tab-post-nav-item span { --tcd-line-clamp:2; height:auto; }
* + .p-widget-tab-post-nav-item { margin-left: -1px; }
.p-widget-tab-post-nav button { background:#fff; }
.p-widget-tab-post-nav[data-tab="1"] > button:nth-child(1),
.p-widget-tab-post-nav[data-tab="2"] > button:nth-child(2),
.p-widget-tab-post-nav[data-tab="3"] > button:nth-child(3) { border-bottom:none; padding-bottom: 1px; background:#fff; pointer-events:none; position:relative; z-index:3; }
.p-widget-tab-post-nav[data-tab="1"] > button:nth-child(1):before,
.p-widget-tab-post-nav[data-tab="2"] > button:nth-child(2):before,
.p-widget-tab-post-nav[data-tab="3"] > button:nth-child(3):before { content:''; display:block; width:calc(100% + 2px); height:4px; position:absolute; top:-1px; left:-1px; background:var(--tcd-accent-color); }
.p-widget-tab-post-nav[data-tab="1"] + * + *,
.p-widget-tab-post-nav[data-tab="1"] + * + * + *,
.p-widget-tab-post-nav[data-tab="2"] + *,
.p-widget-tab-post-nav[data-tab="2"] + * + * + *,
.p-widget-tab-post-nav[data-tab="3"] + *,
.p-widget-tab-post-nav[data-tab="3"] + * + * { display: none; }
.p-widget-tab-post-list-item { display: grid; grid-template-columns: 100px 1fr; background: #ffffff; border: 1px solid #dddddd; margin-top: -1px; padding:20px; position:relative; }
.p-widget-tab-post-list-item:not(:has(img)) { display:block; padding:20px 0 !important; }
.p-widget-tab-post-list-item-image { aspect-ratio: 1; margin:-1px; position:relative; z-index:1; }
.p-widget-tab-post-list-item-image .c-thumbnail { width:100%; height:100%; }
.p-widget-tab-post-list-item-title { --tcd-line-clamp: 3; padding:0 0 0 20px; align-self: center; line-height: 1.8; height: auto; }
.p-widget-tab-post-list-item:not(:has(img)) .p-widget-tab-post-list-item-title { padding:0 20px; }
.p-widget-tab-post-list-item .no_post { padding:0 20px; margin-bottom:-5px; }
.p-widget-tab-post-list-item .num { position:absolute; top:19px; left:19px; background:#fff; color:#000; width:30px; height:30px; display:grid; place-items:center; z-index:2; font-size:12px; }
.p-widget-tab-post-list-item .c-date { margin:0 20px 12px; }
.p-widget-tab-post-list-item.pr_post .title_area { height:auto; align-self:center; }
.p-widget-tab-post-list-item.pr_post .p-widget-tab-post-list-item-title { --tcd-line-clamp: 2; }
@media(hover: hover) {
  .p-widget-tab-post-nav-item:hover { color: rgba(0, 0, 0, .5); }
}
.widget_tcd_widget_ranking_list .link_button {

  font-size:16px; width:100%; margin-top:15px; padding-right:25px; position:relative; display:inline-block; text-align:right; color:var(--tcd-accent-color) !important; text-decoration:none;

  &:before { content:''; display:block; mask:var(--tcd-icon--arrow-thin) no-repeat center / 2em; font-size:12px; width:1em; height:1em; background:var(--tcd-accent-color); position:absolute; top:50%; transform: translateY(-50%); right:0px; transition:none; }
  &:after { opacity:0; content:''; display:block; mask:var(--tcd-icon--arrow-thin) no-repeat center / 2em; font-size:12px; width:1em; height:1em; background:var(--tcd-accent-color); position:absolute; top:50%; transform: translateY(-50%); right:25px; transition:none; }

  @media(hover: hover) {
    &:hover:before { opacity:0; }
    &:hover:after { opacity:1; right:0px; transition:opacity 0.5s ease 0.05s, right 0.8s cubic-bezier(0.16, 1, 0.3, 1) 0.05s; }
  }

}


/* 記事スライダー */
.widget_tcd_widget_post_carousel {
  
  position:relative;

  .p-widget-headline { margin-bottom:0; border-bottom:none; }
  .splide__track { overflow:hidden; }

  .widget_post_carousel {

    position:relative; box-shadow:inset 0 0 0 1px #ddd;

    .item { display:flex; flex-direction:column; height:auto; position: relative;}
		.image { display:block; width:100%; aspect-ratio:368 / 224; z-index:1; position:relative; overflow:hidden; z-index:3; pointer-events:none; }
		.image .c-thumbnail { width:100%; height:100%; }

		.content { padding:20px 20px; display:flex; flex-direction:column; justify-content:flex-start; gap:20px 0; flex-grow:1; }
		.category { z-index:2; color:var(--tcd-accent-color); font-size:14px; font-weight:600; }
		.title { line-height:1.8; font-size:16px; font-weight:600; }
		.title span { --tcd-line-clamp:2; height:auto; z-index:2; position:relative; transition: color 0.25s ease; }
		.item:not(:has(img)) .title span { color:#000; }
		.title a:after { content:''; display:block; position:absolute; top:0; left:0; width:100%; height:100%; z-index:1; cursor:pointer; }
		.meta { font-size:14px; color:#000; z-index:2; margin-bottom:-5px; }
		.meta li { line-height:1.4; }
		.meta li:last-of-type { margin-top:5px; }
		.meta a { color: var(--tcdce-base-link-color) !important; }

    .splide__pagination { margin:0 !important; padding-bottom:20px !important; }
    .splide__pagination .splide__pagination__page { background:#ddd; }
    .splide__pagination .splide__pagination__page.is-active { background:#000 !important; }

    @media(hover: hover) {
			.title a:hover span { color:#666 !important; }
			.category:hover { color:rgba(var(--tcd-accent-color-rgba),0.5); }
      .splide__pagination .splide__pagination__page:hover { background:#999; }
			.meta a:hover { text-decoration:underline; }
    }

  }

}


/* サービススライダー */
.widget_tcd_widget_service_carousel {

  position:relative;

  .p-widget-headline { margin-bottom:0; border-bottom:none; }
  .splide__track { overflow:hidden; }

  .widget_service_carousel {

    position:relative; box-shadow:inset 0 0 0 1px #ddd; background:#fff;

    a.item { display:flex; flex-direction:column; height:auto; position: relative;}
    a.item .c-thumbnail { aspect-ratio:300 / 175; }
    a.item .title { color:#fff; font-size:16px; padding:20px; display:grid; place-items:center; transition: color 0.25s ease; z-index:2; width:100%; font-weight:500; position:absolute; bottom:0; left:0; background:rgba(0,0,0,0.2); }
    a.title span { --tcd-line-clamp:2; height:auto; }

    .splide__arrows { position:relative; height:50px; }
    .splide__arrows .splide__arrow--next { background:none; box-shadow:none; right:calc(50% - 20px); width:20px; height:50px; }
    .splide__arrows .splide__arrow--prev { background:none; box-shadow:none; left:calc(50% - 20px); width:20px; height:50px; }

    @media(hover: hover) {
      a.item:hover .content { color:#999 !important; }
    }

  }

}


/* メニュー */
:is(.widget_categories, .widget_archive, .widget_nav_menu, .widget_meta, .widget_pages) a {
  background:#fff; padding-inline: calc(25px + 1em * var(--tcd-widget-level)) 25px !important;
}


/* タグクラウド */
.widget_tag_cloud {
  .tagcloud { gap:4px !important; }
  .tag-cloud-link { background:#f6f6f6 !important; border:none !important; color:#000 !important; font-size:12px !important; border-radius:3px !important; height:35px !important; }
  @media(hover: hover) {
    .tag-cloud-link:hover { background:var(--tcd-accent-color) !important; color:#fff !important; }
  }
}


/* 画像 */
.widget_media_image {
  .p-widget-headline { margin-bottom:0px; }
  figure { width:100% !important; }
}


/* 検索フォーム */
.widget_search {
  .p-widget-headline { margin-bottom:-1px; }
  .search-form { background:#fff; }
  .search-field { background:transparent; }
}


/* 最近の記事 */
.widget_recent_entries {
  .p-widget-headline { margin-bottom:-1px; }
  li { font-size:16px; padding:25px !important; }
  .post-date{ font-size:16px !important; }
}


/* コメント */
.widget_recent_comments {
  .p-widget-headline { margin-bottom:-1px; }
  li { padding: calc(25px + var(--tcd-half-read)) 25px !important; }
}


/* RSS */
.widget_rss {
  .p-widget-headline { margin-bottom:-1px; }
  .p-widget-headline a { color:var(--tcd-accent-color); }
  @media(hover: hover) {
    .p-widget-headline a:hover { color:rgba(var(--tcd-accent-color-rgba),0.9); }
  }
}


/* カスタムHTML */
.textwidget a { color: var(--tcdce-base-link-color) !important; text-decoration:none !important; }
@media(hover: hover) {
  .textwidget a:hover { text-decoration: var(--tcdce-base-link-decoration) !important; }
}


/* ブロック */
.widget_block a { color: var(--tcdce-base-link-color) !important; text-decoration:none !important; }
@media(hover: hover) {
  .widget_block a:hover { text-decoration: var(--tcdce-base-link-decoration) !important; }
}


/* like */
.widget_tcd_modules_postlikewidget .p-widget-headline { margin-bottom:-1px; }
.p-widget-post-like-item-title { font-weight:500 !important; }
.no_post_like { border:1px solid #ddd; font-size:14px; padding:15px 25px; }


/* 目次 */
.widget_tcdce_toc_widget:has(.is-sticky) { top:calc( var(--tcd-header-message-height) + 150px ) !important; }
@media (max-width: 1100px) {
  .widget_tcdce_toc_widget { display:none; }
}




/* ----------------------------------------------------------------------
  Lenis
---------------------------------------------------------------------- */
html.lenis,html.lenis body{ height:auto; scroll-behavior:auto; }.lenis:not(.lenis-autoToggle).lenis-stopped{ overflow:clip; }
.lenis.lenis-smooth [data-lenis-prevent]{overscroll-behavior:contain}.lenis.lenis-smooth iframe{pointer-events:none}.lenis.lenis-autoToggle{transition-property:overflow;transition-duration:1ms;transition-behavior:allow-discrete}




/* ----------------------------------------------------------------------
  Splide
---------------------------------------------------------------------- */
.splide__container{box-sizing:border-box;position:relative}.splide__list{backface-visibility:hidden;display:-ms-flexbox;display:flex;height:100%;margin:0!important;padding:0!important}.splide.is-initialized:not(.is-active) .splide__list{display:block}.splide__pagination{-ms-flex-align:center;align-items:center;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;-ms-flex-pack:center;justify-content:center;margin:0;pointer-events:none}.splide__pagination li{display:inline-block;line-height:1;list-style-type:none;margin:0;pointer-events:auto}.splide:not(.is-overflow) .splide__pagination{display:none}.splide__progress__bar{width:0}.splide{position:relative;visibility:hidden;}.splide.is-initialized,.splide.is-rendered{visibility:visible}.splide__slide{backface-visibility:hidden;box-sizing:border-box;-ms-flex-negative:0;flex-shrink:0;list-style-type:none!important;margin:0;position:relative}.splide__slide img{vertical-align:bottom}.splide__spinner{animation:splide-loading 1s linear infinite;border:2px solid #999;border-left-color:transparent;border-radius:50%;bottom:0;contain:strict;display:inline-block;height:20px;left:0;margin:auto;position:absolute;right:0;top:0;width:20px}.splide__sr{clip:rect(0 0 0 0);border:0;height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.splide__toggle.is-active .splide__toggle__play,.splide__toggle__pause{display:none}.splide__toggle.is-active .splide__toggle__pause{display:inline}.splide__track{overflow:hidden;position:relative;z-index:0}@keyframes splide-loading{0%{transform:rotate(0)}to{transform:rotate(1turn)}}.splide__track--draggable{-webkit-touch-callout:none;-webkit-user-select:none;-ms-user-select:none;user-select:none}.splide__track--fade>.splide__list>.splide__slide{margin:0!important;opacity:0;z-index:0}.splide__track--fade>.splide__list>.splide__slide.is-active{opacity:1;z-index:1}.splide--rtl{direction:rtl}.splide__track--ttb>.splide__list{display:block}.splide__arrow{-ms-flex-align:center;align-items:center;background:#ccc;border:0;border-radius:50%;cursor:pointer;display:-ms-flexbox;display:flex;height:2em;-ms-flex-pack:center;justify-content:center;opacity:.7;padding:0;position:absolute;top:50%;transform:translateY(-50%);width:2em;z-index:1}.splide__arrow svg{fill:#000;height:1.2em;width:1.2em}.splide__arrow:hover:not(:disabled){opacity:.9}.splide__arrow:disabled{opacity:.3}.splide__arrow:focus-visible{outline:3px solid #0bf;outline-offset:3px}.splide__arrow--prev{left:1em}.splide__arrow--prev svg{transform:scaleX(-1)}.splide__arrow--next{right:1em}.splide.is-focus-in .splide__arrow:focus{outline:3px solid #0bf;outline-offset:3px}.splide__pagination{bottom:.5em;left:0;padding:0 1em;position:absolute;right:0;z-index:1}.splide__pagination__page{background:#ccc;border:0;border-radius:50%;display:inline-block;height:8px;margin:3px;opacity:.7;padding:0;position:relative;transition:transform .2s linear;width:8px}.splide__pagination__page.is-active{background:#fff;transform:scale(1.4);z-index:1}.splide__pagination__page:hover{cursor:pointer;opacity:.9}.splide__pagination__page:focus-visible{outline:3px solid #0bf;outline-offset:3px}.splide.is-focus-in .splide__pagination__page:focus{outline:3px solid #0bf;outline-offset:3px}.splide__progress__bar{background:#ccc;height:3px}.splide__slide{-webkit-tap-highlight-color:rgba(0,0,0,0)}.splide__slide:focus{outline:0}@supports(outline-offset:-3px){.splide__slide:focus-visible{outline:3px solid #0bf;outline-offset:-3px}}@media screen and (-ms-high-contrast:none){.splide__slide:focus-visible{border:3px solid #0bf}}@supports(outline-offset:-3px){.splide.is-focus-in .splide__slide:focus{outline:3px solid #0bf;outline-offset:-3px}}@media screen and (-ms-high-contrast:none){.splide.is-focus-in .splide__slide:focus{border:3px solid #0bf}.splide.is-focus-in .splide__track>.splide__list>.splide__slide:focus{border-color:#0bf}}.splide__toggle{cursor:pointer}.splide__toggle:focus-visible{outline:3px solid #0bf;outline-offset:3px}.splide.is-focus-in .splide__toggle:focus{outline:3px solid #0bf;outline-offset:3px}.splide__track--nav>.splide__list>.splide__slide{border:3px solid transparent;cursor:pointer}.splide__track--nav>.splide__list>.splide__slide.is-active{border:3px solid #000}.splide__arrows--rtl .splide__arrow--prev{left:auto;right:1em}.splide__arrows--rtl .splide__arrow--prev svg{transform:scaleX(1)}.splide__arrows--rtl .splide__arrow--next{left:1em;right:auto}.splide__arrows--rtl .splide__arrow--next svg{transform:scaleX(-1)}.splide__arrows--ttb .splide__arrow{left:50%;transform:translate(-50%)}.splide__arrows--ttb .splide__arrow--prev{top:1em}.splide__arrows--ttb .splide__arrow--prev svg{transform:rotate(-90deg)}.splide__arrows--ttb .splide__arrow--next{bottom:1em;top:auto}.splide__arrows--ttb .splide__arrow--next svg{transform:rotate(90deg)}.splide__pagination--ttb{bottom:0;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;left:auto;padding:1em 0;right:.5em;top:0}


/* 矢印 */
.splide__arrows { position:absolute; top:0; width:100%; height:60px; pointer-events:none; }/* heightはスライダー毎に変更すること */
.splide__arrow { opacity:1; background:#fff; border-radius:100%; height:60px; width:60px; display:grid; place-items:center; margin:0; padding:0; pointer-events:auto; box-shadow:0 0 15px 2px rgba(50,50,50,0.1); }
.splide__arrow:disabled { opacity:0; pointer-events:none; }
.splide__arrow:before { opacity:0; content:''; display:block; mask:var(--tcd-icon--arrow-thin) no-repeat center / 2em; font-size:12px; width:1em; height:1em; background:#000; transition:opacity 0.25s ease, background-color 0.25s ease; position:relative; }
.splide__arrow:not(:disabled):before { opacity:1; }
.splide__arrow--prev:before { transform:rotate(180deg); left:-1px; }
.splide__arrow--prev { left:-50px; }
.splide__arrow--next { right:-50px; }
@media(hover: hover) {
  .splide__arrow:hover { opacity:1 !important; }
  .splide__arrow:hover:before { background:#999; }
}


/* ページナビ */
.splide__pagination { gap:0 10px; position:relative; bottom:auto; margin:25px 0 0 0 !important; padding:0 !important; line-height:1; }
.splide__pagination li { line-height:1; margin:0; padding:0; }
.splide__pagination__page { width:10px; height:10px; opacity:1; transform:none !important; margin:0; padding:0; display:block; transition: background-color 0.25s ease; }
.splide__pagination__page.is-active { background:#000; }
@media(hover: hover) {
  .splide__pagination__page:hover { background:#000; }
}
@media (max-width: 767px) {
  .splide__pagination { margin-top:20px !important; }
}




/* ----------------------------------------------------------------------
  Contact Form 7　お問い合わせフォーム
---------------------------------------------------------------------- */
.wpcf7 p {
  margin-top: var(--tcd-half-read) !important;
  margin-bottom: 30px !important;
}
.wpcf7 input {
  height: 50px !important;
  padding-inline: 20px !important;
}
.wpcf7 textarea {
  padding: 20px !important;
  display: block;
}
.wpcf7-form-control-wrap+br {
  display: none !important;
}
.wpcf7 .wpcf7-radio {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 15px !important;
  margin-top: 10px !important;
}
.wpcf7 .wpcf7-radio .wpcf7-list-item {
  margin: 0 !important;
}
.wpcf7 .wpcf7-radio input {
  display: none !important;
}
.wpcf7 .wpcf7-radio label {
  display: grid !important;
  grid-template-columns: auto 1fr !important;
  align-items: center !important;
  gap: 5px !important;
}
.wpcf7 .wpcf7-radio label:before {
  content: '' !important;
  width: 1.2em !important;
  height: 1.2em !important;
  border-radius: 50% !important;
  background: #fff !important;
  border: 1px solid #aaa !important;
}
.wpcf7 .wpcf7-radio label:has(input:checked):before {
  background-image: radial-gradient(circle closest-corner, #000 30%, rgba(255, 255, 255, 1) 20%) !important;
}
/* チェックボックス */
.wpcf7 .wpcf7-form-control-wrap .wpcf7-list-item {
  display: grid !important;
  grid-template-columns: auto 1fr !important;
  align-items: start !important;
  gap: 5px !important;
  margin: 15px 0px 0px !important;
}
.wpcf7 .wpcf7-form-control-wrap .wpcf7-list-item.first {
  margin-top: 15px !important;
}
.wpcf7 .wpcf7-form-control-wrap input[type="checkbox"] {
  height: auto !important;
}
.wpcf7 .wpcf7-form-control-wrap label {
  line-height: 1 !important;
}
.wpcf7 .wpcf7-form-control-wrap .wpcf7-list-item-label {
  font-size: 16px !important;
  line-height: 1.2 !important;
}
.wpcf7 .wpcf7-submit {
  font-size: 16px !important;
  width: 280px !important;
  height: 60px !important;
}
.wpcf7 p:has(.wpcf7-submit) {
  margin-top: 0px !important;
  margin-bottom: 0 !important;
}
.wpcf7 form {
  margin: 50px 50px 20px !important;
}
.wpcf7 select {
  appearance: none !important;
  height: 50px !important;
  padding-inline: 20px 3em !important;
  background: #ffffff var(--tcd-icon--arrow-bottom) no-repeat center right 13px / 24px !important;
}
@media (max-width: 767px) {
  .wpcf7 p {
    margin-bottom: 25px !important;
    font-size: 14px !important;
  }
  .wpcf7 .wpcf7-form-control-wrap .wpcf7-list-item-label {
    font-size: 14px !important;
    line-height: 1.4 !important;
  }
  .wpcf7 .wpcf7-submit {
    width: 240px !important;
    height: 50px !important;
  }
  .wpcf7 form {
    margin: 20px !important;
  }
}




/* END VALUE style.css */