/**
* ▼library-custom.css
* （CDN,framework,JS他、調整用CSS。既存のCSSを上書きするので後で読み込む）
***************************************/


/* VK All in One ExUnit（リセット）
━━━━━━━━━━━━━━━━━━━ */
.zaratan :is(.pt-cv-carousel-caption>:not(:last-child),
.pt-cv-collapsible .panel-body>:not(:last-child),
.pt-cv-colwrap>:not(:last-child),
.pt-cv-ifield>*,
.pt-cv-overlay-wrapper>:not(:last-child),
.pt-cv-remain-wrapper>:not(:last-child),
.pt-cv-view .pt-cv-content-item>*) {
margin-bottom: 0px;
}

.zaratan .pt-cv-thumbnail:not(.pt-cv-thumbnailsm) {
height: unset !important;
}

/* ExUnit：「編集」非表示 */
.veu_adminEdit {
display: none !important;
}

.veu_contentAddSection {
margin-block: 2rem;
}




/* ExUnit：最近の投稿（.veu_postList）
─────────────────── */
[class*="widget-"] .veu_postList {
margin: 0;
}

.veu_postList ul.postList>li {
position: relative;
/* Flex */
display: flex !important;
flex-wrap: wrap;
min-height: 3.75em;
/* padding  上  横  下 */
padding: calc(var(--⅝fem) * 1.25) calc(var(--⅝fem) * 1) calc(var(--⅝fem) * 1.25);
line-height: 1.44;
color: currentColor;
}

.veu_postList ul.postList>li:nth-of-type(1)::before {
content: "";
position: absolute;
top: 0;
left: 0;
margin: auto;
width: 100%;
border-top: 1px solid currentColor;
}

.veu_postList ul.postList>li::after {
content: "";
position: absolute;
bottom: 0;
left: 0;
margin: auto;
width: 100%;
border-bottom: 1px solid currentColor;
}

/* (@PC) */
@media print,
screen and (min-width: 744px) {
.veu_postList ul.postList>li {
display: table !important;
}
}

/* 日付、記事タイトル */
.veu_postList .postList .postList_date {
display: table-cell;
vertical-align: top;
margin: 0;
min-width: 6.3em;
line-height: 1.55;
}

.veu_postList .postList .postList_title {
display: table-cell;
vertical-align: top;
width: 100%;
/* margin: 上  横  下 */
margin: 0.25em 0px 0em;
padding: 0;
line-height: 1.44;
}

.veu_postList .postList .postList_date,
.veu_postList .postList .postList_title a {
font-size: clamp(15.6px, calc(15.6px + ((1vw - 3.6px) * 0.375)), 18px);
color: currentColor;
}


/* カテゴリー */
.veu_postList .postList .postList_terms {
display: inline-block;
vertical-align: text-bottom;
}

/* (@PC) */
@media print,
screen and (min-width: 744px) {
.veu_postList .postList .postList_terms {
padding-right: 1em;
}
}

.veu_postList .postList .postList_terms a {
position: relative;
display: inline-flex;
justify-content: center;
align-items: center;
top: calc(var(--⅛fem) * 0.0625);
width: calc(var(--⅘fem) * 7.5);
min-height: 1pc;
padding: 6px 5px 5px;
border-radius: 0px;
line-height: 1;
font-size: clamp(13px, calc(13px + ((1vw - 3.6px) * 0.1563)), 14px);
font-weight: 500;
white-space: nowrap;
}

/* アンダーライン：左から */
.veu_postList .postList .postList_title a,
.veu_postList .postList .postList_title a:hover {
text-decoration: none;
}

.veu_postList .postList .postList_title a {
display: inline;
background: linear-gradient(to top, currentColor 2px, transparent 99%) no-repeat;
/* trans: property | duration | easing */
transition: all 0.5s ease-out;
background-position: 0% 100%;
background-size: 0% 1px;
}

/* :hover */
@media (any-hover: hover) {
.veu_postList .postList .postList_title a:is([href], [onclick]):hover {
background-size: 200% 1px;
}
}

/* chevroned-right */
.chevroned-right .veu_postList .postList .postList_title {
padding-right: 2em;
}

.chevroned-right .veu_postList .postList .postList_title a::after {
position: absolute;
top: 0px;
bottom: 0px;
right: 0em;
margin: auto;
display: flex;
justify-content: center;
align-items: center;
transition: all 0.2s ease;
width: 1em;
height: 1em;
font-size: 2em;
/* Material Symbols */
font-family: 'Material Symbols Sharp';
font-variation-settings:
'FILL' 0,
'wght' 200;
content: "\e5cc";
}

/* :hover */
@media (any-hover: hover) {
.chevroned-right .veu_postList .postList .postList_title a:hover::after {
transform: translateX(0.3em);
}
}


/* miniThumb */
.veu_postList .postList_miniThumb .postList_thumbnail img {
aspect-ratio: 1.42 / 1;
object-fit: cover;
}




/* widget-vkPostList_Side
─────────────────── */
:is(.widget-vkPostList_Side,
.widget-vkCategory_Side) {
background: var(--c-base, hsl(224, 9%, 100%));
}

:is(.widget-vkPostList_Side,
.widget-vkCategory_Side) .widgettitle {
margin-inline: 1pc;
/* padding: 上  下 */
padding-block: 1pc 5px;
line-height: 1.44;
font-size: clamp(1rem, calc(1rem + ((1vw - 0.225rem) * 0.4688)), 1.1875rem);
border-bottom: 1px solid var(--c-base-150, hsl(224, 6%, 89%));
}

.widget-vkPostList_Side .veu_postList,
.widget-vkCategory_Side .widget_taxonomies {
border: 1px solid var(--c-base-150, hsl(224, 6%, 89%));
}

.widget-vkPostList_Side .veu_postList .postList,
.widget-vkCategory_Side .widget_taxonomies .localNavi {
border-top: none;
border-bottom: none;
}

.widget-vkPostList_Side .veu_postList .postList .postList_item,
.widget-vkCategory_Side .widget_taxonomies .localNavi .cat-item {
border-bottom: none;
}

.widget-vkPostList_Side .veu_postList .postList .postList_item {
padding: calc(var(--⅝fem) * 1.25) calc(var(--⅝fem) * 1.25);
}

.widget-vkPostList_Side .veu_postList .postList .postList_item:nth-of-type(n+2) {
border-top: 1px solid var(--c-base-150, hsl(224, 6%, 89%));
}

.widget-vkPostList_Side .veu_postList .postList_date {
display: none;
}

.widget-vkPostList_Side .veu_postList .postList_title {
margin: 0;
display: block;
}

.widget-vkPostList_Side .veu_postList .postList_title a {
font-size: 13px;
}




/* widget-vkCategory_Side
─────────────────── */
.widget-vkCategory_Side .widget_taxonomies {
border-top: none;
}

.widget-vkCategory_Side .widget_taxonomies .localNavi .cat-item {
margin-inline: calc(var(--⅝fem) * 1.25);
padding-block: calc(var(--⅝fem) * 0.5);
font-size: clamp(13px, calc(13px + ((1vw - 3.6px) * 0.1563)), 14px);
}

.widget-vkCategory_Side .widget_taxonomies .localNavi .cat-item:nth-of-type(n+2) {
border-top: 1px dotted var(--c-text-300, hsl(224, 6%, 74%));
}




/* widget-vkCategory_Front
─────────────────── */
.widget-vkCategory_Front .widgettitle {
padding-bottom: 0.5pc;
font-size: clamp(1rem, calc(1rem + ((1vw - 0.225rem) * 0.4688)), 1.1875rem);
}

.widget-vkCategory_Front .widget_taxonomies .localNavi {
display: flex;
flex-wrap: wrap;
}

.widget-vkCategory_Front .widget_taxonomies .localNavi .cat-item {
margin-right: 1px;
margin-bottom: 1px;
}

.widget-vkCategory_Front .widget_taxonomies .localNavi .cat-item a {
padding: 0.375em 1.5em;
background: var(--c-primary-pale-a0\.5, hsla(224, 24%, 47%, 0.55));
color: #FFF;
}


/* 非表示にするカテゴリー */
[class*="widget-vkCategory"] .widget_taxonomies .localNavi .cat-item:has([href*="category/404"]),
[class*="widget-vkCategory"] .widget_taxonomies .localNavi .cat-item:has([href*="category/hidden"]),
[class*="widget-vkCategory"] .widget_taxonomies .localNavi .cat-item:has([href*="category/noindex"]) {
display: none;
}




/* ExUnit：関連記事
─────────────────── */
.veu_relatedPosts .relatedPosts_title {
font-size: 18px;
}

.veu_relatedPosts .relatedPosts_item>.media .postList_thumbnail img {
aspect-ratio: 1.33 / 1;
object-fit: cover;
}

.veu_relatedPosts .relatedPosts_item>.media .media-heading {
display: inline-grid;
margin-bottom: 0;
line-height: 1.55;
font-size: 13px;
}

.veu_relatedPosts .relatedPosts_item>.media .fa.fa-calendar {
margin-right: -3px;
}

.veu_relatedPosts .relatedPosts_item>.media .media-date {
display: none;
}




/* ExUnit：お問い合わせボタン
─────────────────── */
.veu_contact {
text-align: center;
}

.veu_contact .contact_bt {
position: relative;
display: inline-flex;
flex-direction: column;
justify-content: center;
align-items: center;
width: auto;
min-width: 300px;
max-width: 100%;
margin-left: auto;
margin-right: auto;
padding: calc(var(--x1\.5fem) * 0.4) calc(var(--⅝fem) * 1.5);
border-radius: 0px;
white-space: nowrap;
transition: all .2s ease;
line-height: 1.44;
font-size: 27px;
font-size: clamp(21.8px, calc(21.8px + ((1vw - 3.6px) * 0.8125)), 27px);
font-weight: 500;
background: var(--c-primary);
}

.veu_contact .contact_bt_txt {
color: #FFF;
}

.veu_contact .contact_bt_subTxt {
font-size: 15px;
color: #FFF;
}




/* ExUnit：お問い合わせセクション
─────────────────── */
/* veu_card */
.veu_contact.veu_card {
margin-inline: auto;
width: fit-content;
max-width: 100%;
border-radius: 0px;
letter-spacing: 0rch;
border: none;
}

.veu_contact.veu_card .contact_frame.veu_card_inner {
margin-inline: auto;
width: fit-content;
max-width: 100%;
/* padding: 縦  横 */
padding: calc(var(--⅝fem) * 1.5) calc(var(--⅝fem) * 1);
background: transparent;
box-shadow: none;
}

.veu_contact.veu_card .contact_txt {
/* padding: 上  横  下 */
padding: 0;
}

.veu_contact.veu_card .contact_txt_catch {
display: block;
line-height: 1;
font-size: clamp(0.9563rem, calc(0.9563rem + ((1vw - 0.225rem) * 0.2656)), 1.0625rem);
}

.veu_contact.veu_card .contact_txt_catch.bold {
font-weight: 600;
}

.veu_contact.veu_card .contact_txt_subtxt {
display: inline-block;
vertical-align: bottom;
line-height: 1.44;
font-weight: 500;
}

.veu_contact.veu_card .contact_txt_tel {
/* Flex */
display: flex;
align-items: center;
justify-content: center;
/* padding: 上  横  下 */
padding: 5px 0px 5px;
line-height: 1;
letter-spacing: 0.12rch;
font-size: clamp(42px, calc(42px + ((1vw - 3.6px) * 0.9375)), 48px);
font-weight: 500;
white-space: nowrap;
}

.veu_contact.veu_card .contact_txt_tel .uhead {
font-size: 85%;
}

.veu_contact .contact_txt_tel_icon {
margin-bottom: 0.05em;
margin-right: 0.15em;
}

.veu_contact .contact_txt_tel_icon::before {
content: "";
display: inline-block;
width: 50px;
height: 30px;
/* bg : color | repeat | position */
background: no-repeat 50% 50%;
background-image: url('../commons/images/icon/icn-freedial_b.svg');
background-size: contain;
}

.veu_contact .contact_txt_small {
display: inline-block;
letter-spacing: 0rch;
margin-top: 0.2em;
margin-right: 0.1em;
font-weight: 700;
}

.veu_contact.veu_card .contact_txt_time {
display: block;
line-height: 1.33;
font-size: clamp(0.8750rem, calc(0.8750rem + ((1vw - 0.225rem) * 0.1563)), 0.9375rem);
}

.veu_contact.veu_card .contact_bt {
margin-top: 0.75em;
width: 100%;
}




/* ExUnit：ソーシャルボタン（.veu_socialSet.veu_contentAddSection）
─────────────────── */
.veu_socialSet.veu_contentAddSection li {
flex: 1 1 100px;
}

.veu_socialSet.veu_contentAddSection .sb_icon.sb_facebook .sb_icon_inner {
background: white;
color: #1877f2;
border: 1px solid #1877f2;
box-shadow: rgba(0, 0, 0, 0.16) 0px 1px 4px;
}

.veu_socialSet.veu_contentAddSection .sb_icon.sb_x_twitter .sb_icon_inner {
background: white;
color: #0f1419;
border: 1px solid #0f1419;
box-shadow: rgba(0, 0, 0, 0.16) 0px 1px 4px;
}

.veu_socialSet.veu_contentAddSection .sb_icon.sb_hatena .sb_icon_inner {
background: white;
color: #00679f;
border: 1px solid #00679f;
box-shadow: rgba(0, 0, 0, 0.16) 0px 1px 4px;
}

.veu_socialSet.veu_contentAddSection .sb_icon.sb_line .sb_icon_inner {
background: white;
color: #6ebd30;
border: 1px solid #6ebd30;
box-shadow: rgba(0, 0, 0, 0.16) 0px 1px 4px;
}

.veu_socialSet.veu_contentAddSection .sb_icon.sb_copy .sb_icon_inner {
background: white;
color: #555;
border: 1px solid #555;
box-shadow: rgba(0, 0, 0, 0.16) 0px 1px 4px;
}

/* :hover */
@media (any-hover: hover) {
.veu_socialSet.veu_contentAddSection .sb_icon .sb_icon_inner:hover {
box-shadow: none !important;
transform: translateY(1px);
transition: all .1s ease-in-out;
}
}




/* Content Views（基本設定）
━━━━━━━━━━━━━━━━━━━ */
/* 「編集」非表示 */
.pt-cv-edit-post,
.pt-cv-edit-view,
.pt-cv-edit-post+br,
.pt-cv-edit-view+br {
display: none !important;
}

.pt-cv-view {
max-width: 100%;
}

.pt-cv-view .pt-cv-content-item {
background-color: unset;
box-shadow: unset;
color: unset;
overflow: visible;
}

.pt-cv-view .pt-cv-ifield {
position: relative;
display: flex;
flex-direction: column;
min-height: 4.4rem;
padding: 0;
border-radius: 0px;
background: var(--c-base, hsl(224, 6%, 100%));
border: 1px solid var(--c-text-200, hsl(224, 6%, 84%));
-webkit-box-shadow: 0 1px 1px rgba(0, 0, 0, 0.05);
box-shadow: 0 1px 1px rgba(0, 0, 0, 0.05);
}

/* flexboxで順番並び替え */
.pt-cv-view .pt-cv-ifield .pt-cv-href-thumbnail {
order: 4;
}

.pt-cv-view .pt-cv-ifield .pt-cv-title {
order: 5;
}

.pt-cv-view .pt-cv-ifield :is(.pt-cv-meta-fields, .pt-cv-taxoterm) {
order: 6;
}

.pt-cv-view .pt-cv-ifield .pt-cv-content {
order: 7;
}

/* pt-cv-href-thumbnail（アイキャッチがない場合は代替画像を表示） */
.pt-cv-view .pt-cv-href-thumbnail {
display: block;
position: relative;
width: 100%;
height: auto;
padding: 0;
background: no-repeat 50% 50%;
background-image: url('../commons/images/ornaments/noimage-450x300.png');
background-size: cover;
margin-bottom: 0px !important;
}

.pt-cv-view .pt-cv-href-thumbnail::before {
content: "";
display: block;
/* アスペクト比（縦 / 横） */
padding-top: calc(1 / 1 * 100%);
}

.pt-cv-view .pt-cv-href-thumbnail>img {
position: absolute;
inset: 0;
aspect-ratio: 1 / 1;
}

/* タイトル */
.pt-cv-view .pt-cv-title {
	position: relative;
	/* Flex */
	display: flex;
	align-items: start;
	width: 100% !important;
	max-width: 100%;
	font-size: clamp(0.9375rem, calc(0.9375rem + ((1vw - 0.225rem) * 0.1563)), 1rem);
	font-weight: 500;
	overflow: hidden;
}

/* Headings（.title） */
.pt-cv-view h2.pt-cv-title {
	font-size: clamp(1.0250rem, calc(1.0250rem + ((1vw - 0.225rem) * 0.7188)), 1.3125rem);
}

.pt-cv-view h3.pt-cv-title {
	font-size: clamp(0.9750rem, calc(0.9750rem + ((1vw - 0.225rem) * 0.3750)), 1.1250rem);
}

.pt-cv-view h4.pt-cv-title {
	font-size: clamp(0.9375rem, calc(0.9375rem + ((1vw - 0.225rem) * 0.1563)), 1rem);
}

.pt-cv-view h5.pt-cv-title {
	font-size: clamp(0.8750rem, calc(0.8750rem + ((1vw - 0.225rem) * 0.1563)), 0.9375rem);
}

.pt-cv-view h6.pt-cv-title {
	font-size: clamp(0.8125rem, calc(0.8125rem + ((1vw - 0.225rem) * 0.1563)), 0.8750rem);
}

.pt-cv-view .pt-cv-title>a {
	width: 100%;
	height: 100%;
}

/* :is(.pt-cv-meta-fields, .pt-cv-taxoterm) */
.pt-cv-view :is(.pt-cv-meta-fields, .pt-cv-taxoterm) {
	color: transparent;
	line-height: 1.55rem;
	padding-bottom: 1pc;
}

/* 区切りのカンマ・スラッシュを消去する */
.pt-cv-view :is(.pt-cv-meta-fields, .pt-cv-taxoterm),
.pt-cv-view :is(.pt-cv-meta-fields, .pt-cv-taxoterm) .terms {
	font-size: 0px !important;
	line-height: 1.55;
}

/* 日付 */
.pt-cv-view :is(.pt-cv-meta-fields, .pt-cv-taxoterm) .entry-date {
	display: inline-block;
	vertical-align: middle;
	margin-right: 4px;
	background: none;
}

.pt-cv-view :is(.pt-cv-meta-fields, .pt-cv-taxoterm) .entry-date,
.pt-cv-view :is(.pt-cv-meta-fields, .pt-cv-taxoterm) .entry-date * {
	line-height: 1;
	font-size: 14px !important;
	text-align: left;
	color: var(--c-text-500, hsl(224, 6%, 53%));
}


/* タグ */
:is(.post-meta-fields [rel*="tag"],
	.su-post-meta-fields [rel*="tag"],
	.veu_postList ul.postList .postList_terms a,
	.pt-cv-wrapper .pt-cv-view [class*="pt-cv-tax-"]):not([href*="category"]) {
	margin-right: 1px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	vertical-align: middle;
	width: auto;
	margin-right: 4px;
	font-size: 12px;
	pointer-events: none;
	border-radius: 1px;
	color: var(--c-text-400, hsl(224, 6%, 63%));
}

/* カテゴリー */
.pt-cv-view [class*="pt-cv-tax-"][href*="category"] {
	position: absolute;
	z-index: 10;
	top: 0px;
	left: 0px;
	width: 9em;
	margin: auto;
	padding: 0.6em 1em 0.6em;
	border-radius: 0px;
	line-height: 1;
	font-size: 13px;
	font-weight: 500;
	text-align: center;
	pointer-events: none;
}




/* コンテント */
.pt-cv-view .pt-cv-content {
	line-height: 1.66;
	font-size: 14px;
}

.pt-cv-view .pt-cv-content:has(.pt-cv-readmore.btn) {
	/* ボタンがある場合、下に余白 */
	padding-bottom: 4em;
}

/* ボタン設定（下揃え） */
.pt-cv-view .pt-cv-content .pt-cv-readmore.btn {
	z-index: 10;
	position: absolute;
	right: 0px;
	bottom: 1pc;
	left: 0px;
	width: 250px;
	max-width: 85% !important;
	height: auto;
	margin: auto !important;
	padding: .6em 1.5em .6em;
	border: 1px solid var(--c-text-400, hsl(224, 6%, 63%)) !important;
	border-radius: 0px !important;
	color: var(--c-text, hsl(224, 6%, 13%)) !important;
	font-weight: 500 !important;
	font-size: 1em !important;
	line-height: 1.44 !important;
	text-align: center;
	transition: all ease-out 0.2s;
}

@media (any-hover: hover) {
	.pt-cv-view .pt-cv-content .pt-cv-readmore.btn:is(:hover, :focus, :active) {
		background: var(--c-primary) !important;
		color: #FFF !important;
	}
}

/* ページネーション */
.pt-cv-pagination-wrapper .pt-cv-pagination.pagination {
	display: block !important;
	width: fit-content;
	margin-right: auto;
	margin-left: auto;
}




/* .pt-cv-grid（グリッド）
─────────────────── */
/* .pt-cv-collapsible（折りたたみリスト）
─────────────────── */
/* pt-cv-scrollable（横スクロール）
─────────────────── */




/* .pt-cv-blockgrid（リスト）
─────────────────── */
.pt-cv-view.pt-cv-blockgrid .pt-cv-content-item {
	border: 1px solid var(--c-text-300, hsl(224, 6%, 74%));
}

.pt-cv-view.pt-cv-blockgrid .pt-cv-title {
	padding-top: 0.8em;
	padding-right: 0.8em;
}




/* ptView-kanban（カンバンボード）
─────────────────── */
.pt-cv-view.ptView-kanban .pt-cv-ifield {
	height: 6pc;
}




