@charset "utf-8";
.fs-clientInfo .login,
.fs-client-cart-count{
	display: none !important;
}
body{
	padding-top: 0;
}
header{
	position: static !important;
}
:root{
	--ranking-c-1st: #c9a227;
	--ranking-c-2nd: #9aa0a6;
	--ranking-c-3rd: #b07a46;
	--ranking-c-other: var(--RED01);
	--c-gray-200: #e7e5e5;
	--c-gray-500: #ada9a9;
	--c-beige-200: #faf7ef;
	--c-beige-400: #e7decf;
	--c-red-100: #ffecec;
}
@media screen and (min-width: 768px){
	:root{
		--inner-w: 95%;
		--pc-maw-w: 1200px;
	}
}
@media screen and (max-width: 767px){
	:root{
		--inner-w: 90%;
	}
}
.grid{
	display: grid;
}
.g-inner{
	width: var(--inner-w);
	max-width: var(--pc-maw-w);
	margin-inline: auto;
}
footer{
	border-top: 1px solid var(--c-gray-200);
}
@media screen and (min-width: 768px){
	[hx-select="header"]{
		min-height: 129px;
	}
	footer{
		margin-top: var(--GENERALSEC);
	}
}
@media screen and (max-width: 767px){
	[hx-select="header"]{
		min-height: 132.98px;
	}
}
/* -------------------パンくず------------------- */
.fs-c-breadcrumb__list{
	display: flex;
	width: var(--inner-w);
	max-width: var(--pc-maw-w);
}
.fs-c-breadcrumb__listItem{
	position: relative;
}
.fs-c-breadcrumb__listItem:not(:last-child)::after{
	content: ">";
	display: inline-block;
	margin-inline: 3px;
}
.fs-c-breadcrumb .fs-c-breadcrumb__listItem,
.fs-c-breadcrumb .fs-c-breadcrumb__listItem a{
	font-size: 12px;
	color: var(--c-gray-500);
}
@media screen and (min-width: 768px){
	.fs-c-breadcrumb__list{
		margin-inline: auto;
	}
}
@media screen and (max-width: 767px){
	.fs-c-breadcrumb{
		overflow-x: scroll;
		overflow-y: hidden;
		padding-left: 20px;
		-ms-overflow-style: none;
		scrollbar-width: none;
	}
	.fs-c-breadcrumb::-webkit-scrollbar{
		display: none;
	}
	.fs-c-breadcrumb__list{
		gap: 5px;
		width: fit-content;
	}
	.fs-c-breadcrumb .fs-c-breadcrumb__listItem{
		display: inline-block;
		white-space: nowrap;
	}
}
/* --------------------ヘッダーとフッター------------------- */
/* ECナビ非表示 */
.gnav{
	display: none;
}
@media screen and (min-width: 768px){
	body{
		padding-top: 0px !important;
	}
}
#padSection{
	display: none !important;
}

/* wpナビ */
.global-nav{
  background-color: var(--RED01);
}
.global-nav ul{
	display: flex;
	align-items: center;
}
.global-nav ul li{
	position: relative;
}
.global-nav ul li:not(:last-child)::after{
	content: "";
	display: inline-block;
	background-color: var(--WHITE);
	height: 20px;
	width: 1px;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	right: 0;
}
.global-nav ul li a{
	color: var(--WHITE);
	display: block;
	text-align: center;
}
@media screen and (min-width: 1301px){
	.global-nav ul{
		justify-content: center;
	}
}
@media screen and (max-width: 1300px){
	.global-nav ul{
		overflow-x: scroll;
		overflow-y: hidden;
		padding-left: 12px;
		-ms-overflow-style: none;
		scrollbar-width: none;
	}
	.global-nav ul::-webkit-scrollbar{
		display: none;
	}
	.global-nav ul li{
		flex-shrink: 0;
	}
}
@media screen and (min-width: 768px){
	.global-nav ul li a{
		padding: 15px 20px;
		line-height: 1.5;
	}
}
@media screen and (max-width: 767px){
	.global-nav ul li a{
		padding: 8px 10px;
		line-height: 1.5;
		font-size: 14px;
	}
}

/* フッターナビ */
.footer-banner .wp-block-gallery{
	display: grid;
	width: var(--inner-w);
	margin-inline: auto;
}
.footer-banner .wp-block-image{
	width: 100% !important;
}
@media screen and (min-width: 768px){
	.footer-banner .wp-block-gallery{
		grid-template-columns: repeat(3,1fr);
		gap: 20px !important;
		max-width: 700px;
		margin-top: 80px;
	}
}
@media screen and (max-width: 767px){
	.footer-banner .wp-block-gallery{
		margin-top: 50px;
		grid-template-columns: repeat(2,1fr);
		gap: 10px !important;
	}
}
/* --------------------トップページ------------------- */
.top-mv img{
	height: auto;
	width: 100% !important;
	max-width: unset !important;
	box-sizing: unset;
	line-height: 1rem;
	display: block;
	aspect-ratio: 65 / 20;
	object-fit: cover;
}
.top-comment{
	border: 1px solid var(--c-gray-200);
	border-radius: 10px;
	background: linear-gradient(180deg, #ecfafc, #fff 120px);
}
@media screen and (min-width: 768px){
	.top-comment{
		margin-block: 30px 50px;
		padding: 26px;
	}
}
@media screen and (max-width: 767px){
	.top-comment{
		margin-block: 20px 30px;
		padding: 20px;
	}
}

/* --------------------全体レイアウト------------------- */
#wp-side{
	display: grid;
	gap: 30px;
}
@media screen and (min-width: 951px){
	.wp-postContainer:has(aside){
		display: grid;
		grid-template-columns: 1fr 300px;
		align-items: flex-start;
		gap: 50px;
	}
}
@media screen and (max-width: 767px){
	.wp-postContainer{
		display: grid;
		gap: 50px;
	}
}
/* --------------------サイド------------------- */
/* タイトル */
.wp-side__ttl{
	font-size: 15px;
	font-weight: 800;
	letter-spacing: .04em;
	padding: 0 0 11px;
	border-bottom: 2px solid var(--RED01);
	margin: 0 0 16px;
	display: flex;
	align-items: center;
	gap: 9px;
}
.wp-side__ttl svg{
	width: 17px;
	height: 17px;
	color: var(--RED01);
}
/* 検索フォーム */
.wp-side__searchFrom form{
	position: relative;
}
.wp-side__searchFrom input[type="text"]{
	width: 100%;
	display: block;
	border: 1px solid #8d8d8d;
	border-radius: 3px;
}
.wp-side__searchFrom button[type="submit"]{
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	right: 5px;
	display: block;
	aspect-ratio: 1/1;
	width: 20px;
}
.wp-side__searchFrom button[type="submit"]::after{
	content: "";
	display: inline-block;
	--this-mask: var(--data-icon-search) no-repeat center center / 100%;
	mask: var(--this-mask);
	-webkit-mask: var(--this-mask);
	background-color: var(--c-black);
	width: 15px;
	aspect-ratio: 1;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
}
@media screen and (min-width: 768px){
	.wp-side__searchFrom input[type="text"]{
		padding: 10px 31px 10px 8px;
	}
	.wp-side__searchFrom form input[type="image"]{
		width: 16px;
		right: 9px;
	}
}
@media screen and (max-width: 767px){
	.wp-side__searchFrom input[type="text"]{
		padding: 10px 35px 10px 10px;
	}
	.wp-side__searchFrom form input[type="image"]{
		width: 20px;
		right: 9px;
	}
}
/* 記事 */
.wp-side__archive{
	display: grid;
	gap: 15px;
}
.wp-side__archive li a{
	display: flex;
	align-items: flex-start;
}
.wp-side__archive__ttl{
	flex: 1;
	font-size: 12px;
	margin-top: 5px;
	line-height: 1.4;
	overflow: hidden;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	display: -webkit-box;
	font-weight: bold;
}
/* ターム */
.wp-side__archive__terms{
	display: flex;
	flex-wrap: wrap;
	gap: 5px;
	margin-top: 5px;
}
.wp-side__archive__term{
	display: inline-block;
	border: 1px solid var(--c-beige-400);
	background-color: var(--c-beige-200);
	font-size: 9px;
	padding: 2px 8px;
	border-radius: 25px;
}
.wp-side__archive__term:nth-of-type(n+3){
	display: none;
}
.wp-side__archive__term--staff{
	background-color: var(--c-red-100);
	border-color: var(--RED01);
	color: var(--RED01);
}
/* 人気記事 */
.wp-side__archive--popular{
	counter-reset: original-counter;
}
.wp-side__archive--popular li{
	position: relative;
	z-index: 0;
}
.wp-side__archive--popular .wp-side__archive__thumb::before{
	content: counter(original-counter);
	counter-increment: original-counter;
	color: #fff;
	position: absolute;
	top: 1px;
	left: 8px;
	font-size: 12px;
	z-index: 2;
}
.wp-side__archive--popular .wp-side__archive__thumb::after{
	content: "";
	display: inline-block;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 35px 35px 0 0;
	border-color: var(--ranking-c-other) transparent transparent transparent;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 1;
}
.wp-side__archive--popular li:nth-of-type(1) .wp-side__archive__thumb::after{
	border-color: var(--ranking-c-1st) transparent transparent transparent;
}
.wp-side__archive--popular li:nth-of-type(2) .wp-side__archive__thumb::after{
	border-color: var(--ranking-c-2nd) transparent transparent transparent;
}
.wp-side__archive--popular li:nth-of-type(3) .wp-side__archive__thumb::after{
	border-color: var(--ranking-c-3rd) transparent transparent transparent;
}
/* メニュー */
.wp-side__menu{
	display: grid;
	gap: 10px;
}
.wp-side__menu li a{
	display: block;
	position: relative;
	border: 1px solid var(--c-beige-400);
	background-color: var(--c-beige-200);
	border-radius: 4px;
}
.wp-side__menu li a::before{
	content: "";
	display: inline-block;
	background-color: var(--RED01);
	width: 10px;
	aspect-ratio: 1/1;
	border-radius: 50%;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	left: 10px;
}
.wp-side__menu li a::after{
	display: inline-block;
	content: "";
	width: 6px;
	height: 6px;
	border-right: 2px solid var(--RED01);
	border-bottom: 2px solid var(--RED01);
	transform: rotate(-45deg) translateY(-50%);
	position: absolute;
	top: 50%;
	right: 10px;
}
.wp-side__archive__thumb{
	border-radius: 4px;
}
.wp-side__archive__thumb img{
	aspect-ratio: 1/1;
	object-fit: cover;
}
.wp-side__archive__body{
	flex: 1;
}
.wp-side__archive__date{
	display: flex;
	font-size: 10px;
	color: var(--c-gray-500);
	gap: 5px;
}
.wp-side__archive__date time{
	letter-spacing: 0.05em;
	font-size: 9px;
}
@media (hover: hover){
	.wp-side__menu li a:hover{
		background: var(--RED01);
		color: var(--WHITE);
		border-color: var(--RED01);
		opacity: 1;
	}
	.wp-side__menu li a:hover::before{
		background-color: var(--WHITE);
	}
	.wp-side__menu li a:hover::after{
		border-color: var(--WHITE);
	}
}
@media screen and (min-width: 951px){
	.wp-side__archive__thumb{
		width: 25%;
		margin-right: 10px;
	}
}
@media screen and (max-width: 950px){
	.wp-side__archive__thumb{
		width: fit-content;
		margin-right: 10px;
	}
	.wp-side__archive__thumb img{
		width: auto;
		max-height: clamp( 80px, 12vw, 150px);
	}
}
@media screen and (min-width: 768px){
	.wp-side__menu li a{
		padding: 11px 0 11px 35px;
		font-size: 14px;
	}
	.wp-side__menu li a::before{
		font-size: 13px;
	}
}
@media screen and (max-width: 767px){
	.wp-side__menu li a{
		padding: 11px 0 11px 35px;
		font-size: 14px;
	}
	.wp-side__menu li a::before{
		font-size: 12px;
	}
}
/* セレクトボックス */
.wp-side__select{
	position: relative;
}
.wp-side__select::after{
	content: "";
	display: inline-block;
	--this-mask: var(--data-icon-btn-arrow) no-repeat center center / 100%;
	mask: var(--this-mask);
	-webkit-mask: var(--this-mask);
	background-color: var(--c-gray-200);
	aspect-ratio: 1/1;
	width: 12px;
	object-fit: cover;
	position: absolute;
	top: 50%;
	transform: translateY(-50%) rotate(90deg);
	right: 10px;
}
.wp-side__select select{
	width: 100%;
	padding: 5px;
	border: 1px solid var(--c-black);
	background-color: transparent;
	border-radius: 3px;
	font-size: 14px;
	padding: 10px;
}
/* スタッフブログ */
.wp-side__staffBlogList li:not(:last-child){
	border-bottom: 1px solid var(--c-gray-200);
}
.wp-side__staffBlogList li a{
	position: relative;
	font-size: 14px;
	display: grid;
	grid-template-columns: auto auto 1fr;
	align-items: center;
	gap: 7px;
	padding-block: 8px;
}
.wp-side__staffBlogList li a::before{
	display: inline-block;
	content: "";
	width: 4px;
	height: 4px;
	border-right: 2px solid var(--RED01);
	border-bottom: 2px solid var(--RED01);
	transform: rotate(-45deg);
	flex: none;
}
.wp-side__staffBlogName{
	color: var(--RED01);
}
.wp-side__staffBlogTtl{
	overflow: hidden;
	-webkit-line-clamp: 1;
	-webkit-box-orient: vertical;
	display: -webkit-box;;
}
@media (hover: hover){
	.wp-side__staffBlogList li a:hover{
		transform: translateX(10px);
		color: var(--RED01);
		opacity: 1;
	}
}
/* --------------------一覧・シングル共通-------------------- */
/* カテゴリー */
.wp-post__cats{
	display: flex;
	flex-wrap: wrap;
	gap: 5px;
}
.wp-post__cats li a{
	width: fit-content;
	padding: 1px 8px;
	display: block;
	border-radius: 70px;
	font-size: 12px;
	text-decoration: none;
}
.wp-post__cat--staff a{
	border: 1px solid var(--RED01);
	background-color: var(--c-red-100);
	color: var(--RED01);
}
.wp-post__cat--other a{
	border: 1px solid var(--c-beige-400);
	background-color: var(--c-beige-200);
}
/* タグ */
.wp-post__tags{
	display: flex;
	flex-wrap: wrap;
}
.wp-post__tags li a{
	display: block;
	text-align: center;
	background: #fff;
}
.wp-post__tags li a:before{
	content: "#";
	margin-right: 1px;
}
@media screen and (min-width: 768px){
	.wp-post__tags{
		gap: 8px 10px;
	}
	.wp-post__tags li a{
		font-size: 12px;
	}
}
@media screen and (max-width: 767px){
	.wp-post__tags{
		gap: 6px 10px;
	}
	.wp-post__tags li a{
		font-size: 12px;
	}
}
/* --------------------ブログ一覧------------------- */
.wp-section__heading{
	text-align: center;
	font-weight: bold;
	color: var(--RED01);
}
@media screen and (min-width: 768px){
	.wp-section+.wp-section{
		margin-top: 80px;
	}
	.wp-section__heading{
		font-size: 25px;
		margin-bottom: 30px;
	}
}
@media screen and (max-width: 767px){
	.wp-section+.wp-section{
		margin-top: 50px;
	}
	.wp-section__heading{
		font-size: 18px;
		margin-bottom: 20px;
	}
}
/* wp-archive__list */
.wp-archive__list article{
	border: 1px solid var(--c-gray-200);
	border-radius: 15px;
	overflow: hidden;
}
.wp-archive__thumb a{
	position: relative;
}
.wp-archive__thumb img{
	aspect-ratio: 3/2;
	object-fit: cover;
}
.wp-archive__views{
	position: absolute;
	top: 10px;
	left: 10px;
	background: rgba(20, 14, 10, .62);
	color: #fff;
	padding: 5px 10px;
	border-radius: 100px;
	backdrop-filter: blur(2px);
	font-size: 10px;
	display: grid;
	grid-template-columns: 14px auto auto;
	align-items: center;
	gap: 3px;
}
.wp-archive__views span{
	display: inline-block;
	color: var(--c-gray-500);
}
.wp-archive__body{
	padding: 15px;
}
.wp-archive__time{
	display: flex;
	color: var(--c-gray-500);
	gap: 10px;
}
.wp-archive__time time{
	font-size: 12px;
}
.wp-archive__time time span{
	color: #000;
	letter-spacing: 0.02em;
}
.wp-archive__ttl{
	line-height: 1.5;
	overflow: hidden;
	-webkit-box-orient: vertical;
	display: -webkit-box;
	font-weight: bold;
}
.wp-post__cat--staff{
	order: -1;
}
@media (hover: hover){
	.wp-archive__list article{
		transition: transform .3s ease, box-shadow .3s ease, opacity .3s ease;
	}
	.wp-archive__list article:hover{
		transform: translateY(-5px);
		box-shadow: 0 5px 10px rgba(0,0,0,0.1);
		opacity: 1;
	}
	.wp-archive__thumb{
		overflow: hidden;
	}
	.wp-archive__thumb img{
		transition: transform .3s ease;
	}
	.wp-archive__thumb:hover img{
		transform: scale(1.05);
	}
	.wp-archive__thumb a:hover,
	.wp-archive__thumb a:hover img{
		opacity: 1 !important;
	}
}
@media screen and (min-width: 768px){
	.wp-archive__list{
		grid-template-columns: repeat(auto-fill, minmax(330px, 1fr));
		gap: 30px;
	}
	.wp-archive__cats{
		margin-top: 8px;
	}
	.wp-archive__ttl{
		margin-top: 8px;
		-webkit-line-clamp: 3;
	}
	.wp-section .more-btn{
		margin-top: 40px;
	}
}
@media screen and (max-width: 767px){
	.wp-archive__list{
		grid-template-columns: 1fr;
		gap: 30px 10px;
	}
	.wp-archive__cats{
		margin-top: 5px;
	}
	.wp-archive__cats li a{
		font-size: 12px;
	}
	.wp-archive__ttl{
		margin: 8px 0 5px;
		-webkit-line-clamp: 2;
		font-size: 12px;
	}
	.wp-section .more-btn{
		margin-top: 30px;
	}
}

/* 商品紹バナー */
.product-banner .wp-block-gallery{
	display: grid;
	width: var(--inner-w);
	margin-inline: auto;
}
.product-banner .wp-block-image{
	width: 100% !important;
}
@media screen and (min-width: 768px){
	.product-banner .wp-block-gallery{
		grid-template-columns: repeat(4,1fr);
		gap: 15px !important;
	}
}
@media screen and (max-width: 767px){
	.product-banner .wp-block-gallery{
		grid-template-columns: repeat(2,1fr);
		gap: 10px !important;
	}
}

/* かりゆしウェディング月別フォト */
:root{
  --w-red:#b81d2c;
  --w-ink:#2c2622;
  --w-body:#4b443e;
  --w-sub:#8c8278;
  --w-line:#e7decf;
  --w-gold:#c4a04e;
  --w-gold-d:#a07f33;
  --w-gold-l:#f3e9cf;
  --w-bg:#fbf8f1;
  --w-ff:"Noto Sans JP",system-ui,sans-serif;
  --w-ff-deco:"Cormorant Garamond","Times New Roman",serif;
}


.wmonthly{
  font-family:var(--w-ff);
  color:var(--w-ink);
  max-width:880px;
  margin:0 auto;
  padding:48px 24px 64px;
  -webkit-font-smoothing:antialiased;
}
.wmonthly *{box-sizing:border-box;}
.wmonthly a{text-decoration:none;color:inherit;}

/* 見出し */
.wsec{text-align:center;margin:0 0 6px;}
.wsec__en{
  font-family:var(--w-ff-deco);
  font-size:17px;letter-spacing:.42em;text-transform:uppercase;
  color:var(--w-gold-d);margin-left:.42em;
}
.wsec__jp{font-size:27px;font-weight:800;letter-spacing:.08em;color:var(--w-ink);margin:8px 0 0;}
.wsec__rule{display:flex;align-items:center;justify-content:center;gap:13px;margin:15px 0 0;}
.wsec__rule::before,.wsec__rule::after{content:"";width:78px;height:1px;background:linear-gradient(90deg,transparent,var(--w-gold));}
.wsec__rule::after{background:linear-gradient(90deg,var(--w-gold),transparent);}
.wsec__rule i{color:var(--w-gold);font-style:normal;font-size:15px;transform:translateY(-1px);}
.wsec__lead{
  text-align:center;font-size:13.5px;line-height:1.95;color:var(--w-body);
  margin:16px auto 32px;max-width:620px;text-wrap:balance;
}

/* グリッド */
.warchive{display:grid;grid-template-columns:repeat(4,1fr);gap:26px 22px;}
.wmonth{position:relative;display:block;cursor:pointer;}
.wmonth__frame{position:relative;border-radius:8px;overflow:hidden;box-shadow:0 10px 26px -16px rgba(40,30,20,.5);}
.wmonth__frame::after{
  content:"";position:absolute;inset:7px;border:1px solid rgba(255,255,255,.7);
  border-radius:4px;pointer-events:none;z-index:3;transition:inset .25s,border-color .25s;
}
.wmonth:hover .wmonth__frame::after{inset:5px;border-color:var(--w-gold);}

/* 写真プレースホルダー（実画像は <img> に差し替え） */
.wmonth__ph{
  aspect-ratio:3/4;display:flex;align-items:center;justify-content:center;
  color:#b7ab97;font-family:ui-monospace,Menlo,monospace;font-size:11px;letter-spacing:.12em;
  background:repeating-linear-gradient(45deg,#ece4d6 0 9px,#f4eee3 9px 18px);
  transition:transform .5s ease;
}
.wmonth__ph--sky{background:repeating-linear-gradient(45deg,#cdeef5 0 9px,#e2f7fb 9px 18px);color:#88b6c2;}
.wmonth__ph span{background:rgba(255,255,255,.7);padding:4px 10px;border-radius:4px;}
.wmonth:hover .wmonth__ph{transform:scale(1.06);}
/* 実画像を使う場合は .wmonth__ph の代わりに：
   <img class="wmonth__img" src="..." alt="">  */
.wmonth__img{width:100%;aspect-ratio:3/4;object-fit:cover;display:block;transition:transform .5s ease;}
.wmonth:hover .wmonth__img{transform:scale(1.06);}

.wmonth__veil{position:absolute;inset:0;z-index:2;background:linear-gradient(180deg,rgba(20,12,8,.06) 38%,rgba(20,12,8,.66));}
.wmonth__no{position:absolute;left:14px;bottom:8px;z-index:3;color:#fff;line-height:.9;text-shadow:0 2px 12px rgba(0,0,0,.45);}
.wmonth__no b{font-family:var(--w-ff-deco);font-size:52px;font-weight:600;letter-spacing:.02em;}
.wmonth__no span{font-family:var(--w-ff-deco);font-size:14px;letter-spacing:.28em;display:block;margin:0 0 2px 3px;color:var(--w-gold-l);}
.wmonth__season{
  position:absolute;top:12px;right:12px;z-index:3;font-size:10.5px;font-weight:700;letter-spacing:.1em;
  color:#fff;background:rgba(20,12,8,.42);backdrop-filter:blur(2px);
  border:1px solid rgba(255,255,255,.4);padding:4px 10px;border-radius:100px;
}
.wmonth__new{
  position:absolute;top:12px;left:12px;z-index:4;display:inline-flex;align-items:center;gap:5px;
  font-size:11px;font-weight:800;letter-spacing:.08em;color:#4a3a12;
  background:linear-gradient(135deg,#f6e3a8,var(--w-gold));padding:5px 12px;border-radius:100px;
  box-shadow:0 4px 10px -4px rgba(160,127,51,.7);
}
.wmonth__new svg{width:12px;height:12px;}

.wmonth__cap{padding:13px 4px 0;}
.wmonth__head{display:flex;align-items:baseline;justify-content:space-between;gap:8px;}
.wmonth__title{font-size:15px;font-weight:800;letter-spacing:.02em;color:var(--w-ink);line-height:1.45;border-bottom:2px solid transparent;transition:color .15s,border-color .15s;}
.wmonth:hover .wmonth__title{color:var(--w-red);border-color:var(--w-gold);}
.wmonth__oldname{
  flex:none;white-space:nowrap;font-size:11px;font-weight:700;color:var(--w-gold-d);letter-spacing:.1em;
  padding:2px 8px;border:1px solid var(--w-gold-l);border-radius:100px;
  background:color-mix(in srgb,var(--w-gold) 8%,#fff);transform:translateY(-1px);
}
.wmonth__desc{margin:8px 0 0;font-size:12px;line-height:1.85;color:var(--w-body);text-wrap:pretty;
  display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;}

@media (max-width:900px){.warchive{grid-template-columns:repeat(2,1fr);}}
@media (max-width:620px){
  .warchive{grid-template-columns:repeat(2,1fr);gap:18px 14px;}
  .wmonth__no b{font-size:40px;}
  .wsec__jp{font-size:22px;}
}

/* スタッフ別 */
.sdirectory{
  font-family:var(--w-ff);
  color:var(--w-ink);
  max-width:1040px;
  margin:0 auto;
  padding:48px 24px 64px;
  -webkit-font-smoothing:antialiased;
}
.sdirectory *{box-sizing:border-box;}
.sdirectory a{text-decoration:none;color:inherit;}

/* 見出し */
.sdir-head{text-align:center;margin:0 0 8px;}
.sdir-head__en{
  font-family:var(--w-ff-deco);font-size:30px;font-weight:700;letter-spacing:.1em;
  text-transform:uppercase;color:var(--w-red);line-height:1;
}
.sdir-head__jp{
  display:inline-flex;align-items:center;gap:10px;margin-top:10px;
  font-size:12px;letter-spacing:.22em;color:var(--w-sub);
}
.sdir-head__jp::before,.sdir-head__jp::after{content:"";width:26px;height:1px;background:var(--w-line);}
.sdir-lead{text-align:center;font-size:13.5px;line-height:1.9;color:var(--w-body);margin:14px auto 32px;max-width:620px;text-wrap:balance;}

/* グリッド（列数は grid-template-columns を 3⇄4 で変更） */
.sdir{display:grid;grid-template-columns:repeat(4,1fr);gap:15px;}

.scard{
  position:relative;display:flex;flex-direction:column;align-items:center;text-align:center;
  background:#fff;border:1px solid var(--w-line);border-radius:14px;padding:15px;
  cursor:pointer;transition:transform .16s,box-shadow .16s,border-color .16s;
}
.scard:hover{transform:translateY(-4px);box-shadow:0 20px 36px -22px rgba(40,30,20,.55);border-color:#ddd0b8;}

/* アバター（役職カラーのリング） */
.scard__ava{position:relative;width:96px;height:96px;border-radius:50%;display:grid;place-items:center;margin-bottom:16px;--ring:var(--w-red);}
.scard__ava::before{
  content:"";position:absolute;inset:-4px;border-radius:50%;z-index:0;transition:inset .2s;
  background:conic-gradient(from 220deg,var(--ring),color-mix(in srgb,var(--ring) 35%,#fff),var(--ring));
}
.scard:hover .scard__ava::before{inset:-6px;}
.scard__ava[data-role="manager"]{--ring:var(--w-gold);}
.scard__ava[data-role="staff"]{--ring:var(--w-teal);}

.scard__inner{position:relative;z-index:1;width:88px;height:88px;border-radius:50%;overflow:hidden;background:#fff;display:grid;place-items:center;}
.scard__photo{width:100%;height:100%;object-fit:cover;display:block;}

/* 役職チップ */
.scard__rolebadge{
  position:absolute;bottom:2px;left:50%;transform:translateX(-50%);z-index:2;
  font-size:10px;font-weight:800;letter-spacing:.06em;color:#fff;background:var(--ring);
  padding:3px 11px;border-radius:100px;white-space:nowrap;border:2px solid #fff;
  box-shadow:0 3px 8px -3px rgba(0,0,0,.4);
}

/* 新着マーク */
.scard__new{position:absolute;top:10px;right:10px;display:inline-flex;align-items:center;gap:5px;font-size:10px;font-weight:800;letter-spacing:.06em;color:var(--w-red);}
.scard__new::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--w-red);box-shadow:0 0 0 3px color-mix(in srgb,var(--w-red) 18%,#fff);}

.scard__name{font-size:15px;font-weight:800;letter-spacing:.02em;color:var(--w-ink);line-height:1.35;transition:color .15s;}
.scard:hover .scard__name{color:var(--w-red);}
.scard__yomi{display:block;font-family:var(--w-ff-deco);font-size:11px;letter-spacing:.22em;color:var(--w-sub);margin-top:4px;text-transform:uppercase;}

/* 最新の記事 */
.scard__latest{margin-top:15px;padding-top:15px;border-top:1px dashed var(--w-line);width:100%;}
.scard__llabel{display:inline-flex;align-items:center;gap:5px;font-size:10px;font-weight:800;letter-spacing:.1em;color:var(--w-gold-d);}
.scard__llabel svg{width:11px;height:11px;}
.scard__ltitle{margin:7px 0 0;font-size:12.5px;font-weight:600;line-height:1.62;color:var(--w-body);text-wrap:pretty;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}

/* スタッツ */
.scard__stats{display:flex;align-items:center;justify-content:center;gap:11px;margin-top:13px;font-size:11px;color:var(--w-sub);}
.scard__stats .sdot{width:3px;height:3px;border-radius:50%;background:var(--w-line);}
.scard__stats b{color:var(--w-body);font-weight:700;font-variant-numeric:tabular-nums;}
.scard__stats .pv{display:inline-flex;align-items:center;gap:5px;color:var(--w-red);font-weight:700;}
.scard__stats .pv svg{width:12px;height:12px;}
.scard__stats .pv__u{font-weight:500;opacity:.7;font-size:10px;}

@media (max-width:900px){.sdir{grid-template-columns:repeat(3,1fr);}}
@media (max-width:520px){.sdir{grid-template-columns:repeat(2,1fr);gap: 10px;}}


/* --------------------お知らせ一覧------------------- */
.wp-news li{
	display: grid;
	grid-template-columns: auto 1fr;
	align-items: center;
}
.wp-news__ttl a{
	overflow: hidden;
	-webkit-line-clamp: 1;
	-webkit-box-orient: vertical;
	display: -webkit-box;
}
.wp-news li:not(:last-child){
	border-bottom: 1px solid var(--c-black);
}
@media screen and (min-width: 768px){
	.wp-news li{
		padding: 10px 0;
		gap: 15px;
	}
}
@media screen and (max-width: 767px){
	.wp-news li{
		padding: 8px 0;
		gap: 10px;
	}
}
/* --------------------ページャー----------------- */
.wp-pager__list {
  display: flex;
  justify-content: center;
  gap: 8px;
  list-style: none;
  padding: 0;
  margin: 40px 0 0;
}

.wp-pager .page-numbers {
  display: grid;
  place-items: center;
  min-width: 36px;
  height: 36px;
  padding: 0 10px;
  border: 1px solid #ddd;
	border-radius: 4px;
  text-decoration: none;
}

.wp-pager .current {
  background: var(--RED01);
  color: #fff;
  border-color: var(--RED01);
}
/* --------------------スタッフ別のブログ------------------- */
.wp-staffsArchives{
	display: grid;
}
.wp-staffsArchives h3{
	font-weight: bold;
	color: var(--RED01);
}
.wp-staffsArchives p{
	overflow: hidden;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	display: -webkit-box;
}
@media screen and (min-width: 768px){
	.wp-staffsArchives{
		grid-template-columns: repeat(5,1fr);
		gap: 20px 10px;
	}
	.wp-staffsArchives h3{
		font-size: 14px;
		margin-top: 7px;
	}
	.wp-staffsArchives p{
		font-size: 12px;
	}
}
@media screen and (max-width: 767px){
	.wp-staffsArchives{
		grid-template-columns: repeat(3,1fr);
		gap: 20px 5px;
	}
	.wp-staffsArchives h3{
		font-size: 13px;
		margin-top: 5px;
	}
	.wp-staffsArchives p{
		font-size: 11px;
	}
}

/* staff-detail */
.staff-photo{
	border-radius: 8px;
	overflow: hidden;
	border: 4px solid #fff;
	box-shadow: 0 6px 18px -12px rgba(40, 30, 20, .5);
}
.staff-photo img{
	display: block;
	aspect-ratio: 1/1;
	object-fit: cover;
}
.staff-name__name{
	font-weight: bold;
}
.staff-name__position{
	color: var(--c-gray-500);
}
.staff-new-archive a{
	border-left: 5px solid var(--RED01);
}
.staff-eclink a{
    display: inline-flex;
    align-items: center;
    gap: 10px;
    margin-top: 18px;
    background: var(--RED01);
    color: var(--WHITE);
    font-size: 13.5px;
    font-weight: 700;
    letter-spacing: .04em;
    padding: 12px 22px;
    border-radius: 100px;
    transition: transform .12s, background .15s;
    box-shadow: 0 8px 18px -10px var(--RED01);
}
.staff-eclink a svg{
	width: 14px;
	aspect-ratio: 1/1;
}
.staff-comment{
	border-top: 1px dashed var(--c-gray-200);
}
@media (hover: hover){
	.staff-eclink a:hover{
		background-color: #b81d2c;
	    transform: translateY(-1px);
			opacity: 1;
	}
}
@media screen and (min-width: 768px){
	.staff-detail{
		display: grid;
		grid-template-columns: 200px 1fr;
		align-items: flex-start;
		gap: 10px 30px;
	}
	.staff-photo{
		grid-row: span 2;
	}
	.staff-name{
		display: flex;
		align-items: baseline;
		flex-wrap: wrap;
		gap: 10px;
		margin-bottom: 10px;
	}
	.staff-name__name{
		font-size: 25px;
	}
	.staff-new-archive{
		margin-bottom: 8px;
	}
	.staff-new-archive a{
		font-size: 18px;
		padding-left: 15px;
	}
	.staff-comment{
		padding-top: 20px;
		margin-top: 27px;
		font-size: 14px;
	}
}
@media screen and (max-width: 767px){
	.staff-detail{
		display: grid;
		gap: 20px;
	}
	.staff-photo{
		width: 150px;
		margin-inline: auto;
	}
	.staff-name{
		display: flex;
		flex-direction: column;
		gap: 5px;
		margin-bottom: 10px;
	}
	.staff-name__name{
		font-size: 18px;
	}
	.staff-new-archive a{
		font-size: 16px;
		padding-left: 10px;
	}
	.staff-comment{
		padding-top: 15px;
		margin-top: 20px;
		font-size: 13px;
	}
}
/* --------------------シングル------------------- */
.wp-single__ttl{
	font-weight: 500;
	margin-bottom: 10px;
	line-height: 1.5;
}
.wp-single__meta{
	display: flex;
	flex-wrap: wrap;
	gap: 10px 15px;
	padding-bottom: 15px;
	border-bottom: 1px solid var(--c-beige-400);
}
.wp-single__meta > *{
	width: fit-content;
}
.wp-single__time{
	margin-left: auto;
	display: flex;
	gap: 10px;
}
.wp-single__time time{
	font-size: 14px;
	color: var(--c-gray-500);
}
.wp-single__time time span{
	color: var(--c-black);
	letter-spacing: 0.02em;
}
.wp-single__views{
	display: grid;
	grid-template-columns: 14px auto auto;
	gap: 3px;
	align-items: center;
	color: var(--c-black);
	font-size: 12px;
}
.wp-single__views span{
	color: var(--RED01);
}
.wp-single__tags{
	margin-top: 0;
}
.wp-single__tags li a{
	font-size: 13px;
}
#wp-single__link{
	display: flex;
	position: relative;
}
#wp-single__link a{
	color: var(--c-black);
}
#wp-single__link__previous{
	margin-right: auto;
}
#wp-single__link__next{
	margin-left: auto;
	text-align: right;
}
#wp-pagenaviContainer-link{
	margin-left: auto;
}
.wp-single__link__toArchive{
	text-align: center;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
}
#wp-single__link span{
	font-weight: 300;
	color: var(--theme-c-main);
	display: flex;
	align-items: center;
	justify-content: flex-end;
	font-size: var(--fz-12);
	letter-spacing: 0;
	gap: 5px;
	position: relative;
}
#wp-single__link span::after{
	content: "";
	display: inline-block;
	--this-mask: var(--data-icon-slide-arrow) no-repeat center center;
	mask: var(--this-mask);
	-webkit-mask: var(--this-mask);
	background-color: var(--theme-c-main);
	aspect-ratio: 1;
	width: 8px;
}
#wp-single__link__previous span{
	flex-direction: row-reverse;
}
#wp-single__link__next span{
	justify-content: flex-end;
}
#wp-single__link__next span::after{
	transform: scale(-1, 1);
}
#wp-single__link p{
	font-family: var(--ff-serif);
	overflow: hidden;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	display: -webkit-box;
}
.wp-single__sort{
	display: grid;
	grid-template-columns: auto 1fr;
	align-items: center;
	gap: 15px 15px;
	padding-bottom: var(--spc-50);
}
.wp-single__sort dt{
	color: var(--theme-c-main);
}
@media screen and (min-width: 768px){
	.news-article{
		max-width: 770px;
	}
	.wp-single__meta{
		margin-bottom: 15px;
	}
	.wp-single__ttl{
		font-size: 25px;
		margin-bottom: 20px;
	}
	.wp-single__time{
		font-size: 16px;
	}
	.wp-single__content{
		margin-bottom: 60px;
	}
	#wp-single__link > *{
		width: 200px;
	}
	#wp-single__link a{
		font-size: var(--fz-16);
	}
	#wp-single__link p{
		margin-top: 5px;
	}
}
@media screen and (max-width: 767px){
	.wp-single__meta{
		margin-bottom: 10px;
	}
	.wp-single__ttl{
		font-size: 20px;
	}
	.wp-single__time{
		font-size: 14px;
	}
	.wp-single__content{
		margin-bottom: 40px;
	}
	#wp-single__link > *{
		width: 120px;
	}
	#wp-single__link a{
		font-size: 13px;
	}
	#wp-single__link p{
		margin-top: 5px;
	}
}

.relnav {
    display: grid;
    grid-template-columns: 1fr auto 1fr;
		align-items: center;
    gap: 14px;
    margin: 48px 0 14px;
}

.relnav a {
    display: flex;
    align-items: center;
    gap: 14px;
    border: 1px solid var(--c-beige-400);
    border-radius: 10px;
    padding: 16px 18px;
    background: #fff;
    transition: all .15s;
}

.relnav__label {
    font-size: 11px;
    font-weight: 700;
    letter-spacing: .12em;
    color: var(--RED01);
    display: flex;
    align-items: center;
    gap: 7px;
    width: fit-content;
		white-space: nowrap;
}
.relnav svg{
	width: 15px;
	height: 15px;
}
.relnav__prev svg {
    transform: rotate(180deg);
}
.relnav__t {
    font-size: 13px;
    font-weight: 600;
    flex: 1;
    line-height: 1.55;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.relnav__list a {
    border: 0;
    background: var(--RED01);
    color: #fff;
    border-radius: 100px;
    padding: 10px 20px;
    font-size: 12px;
    font-weight: 700;
    white-space: nowrap;
}

.relnav__next  {
    justify-content: flex-end;
}

@media screen and (max-width: 767px){
	.relnav{
		display: flex;
		flex-wrap: wrap;
		gap: 10px 0;
	}
	.relnav > a{
		flex-direction: column;
		width: 49%;
		gap: 5px;
		padding: 10px;
	}
	a.relnav__prev{
		order: 1;
	}
	a.relnav__next{
		order: 2;
		flex-direction: column-reverse;
		margin-left: auto;
	}
	.relnav__list{
		order: 3;
		margin-inline: auto;
	}
}

.divider {
    height: 1px;
    background: var(--c-beige-400);
    margin: 46px 0;
    position: relative;
}

.divider::after {
    content: "❁";
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    background: #fff;
    color: var(--RED01);
    padding: 0 14px;
    font-size: 14px;
}


.profile__cap {
    display: flex;
    align-items: center;
    gap: 9px;
    font-size: 14px;
    font-weight: 800;
    letter-spacing: .08em;
    color: var(--RED01);
    margin: -4px 0 18px;
    padding-bottom: 13px;
    border-bottom: 2px solid var(--RED01);
}
.profile__cap svg{
	width: 17px;
	aspect-ratio: 1/1;
}



.clear {
  clear: both;
}

.clearfix:after, .clearFix:after {
  content: "";
  display: block;
  width: 100%;
  height: 0;
  clear: both;
}

.w100 {
  max-width: 100%;
  height: auto;
}

.w100p {
  width: 100%;
  height: auto;
}

.m0 {
  margin: 0 !important;
}

.mb0 {
  margin-bottom: 0 !important;
}

.mb5 {
  margin-bottom: 5px !important;
}

.mb10 {
  margin-bottom: 10px !important;
}

.mb15 {
  margin-bottom: 15px !important;
}

.mb20 {
  margin-bottom: 20px !important;
}

.mb25 {
  margin-bottom: 25px !important;
}

.mb30 {
  margin-bottom: 30px !important;
}

.mb35 {
  margin-bottom: 35px !important;
}

.mb40 {
  margin-bottom: 40px !important;
}

.mb45 {
  margin-bottom: 45px !important;
}

.mb50 {
  margin-bottom: 50px !important;
}

.mb60 {
  margin-bottom: 60px !important;
}

.mb70 {
  margin-bottom: 70px !important;
}

.mb80 {
  margin-bottom: 80px !important;
}

.mb90 {
  margin-bottom: 90px !important;
}

.mb100 {
  margin-bottom: 100px !important;
}

.mb110 {
  margin-bottom: 110px !important;
}

.mb120 {
  margin-bottom: 120px !important;
}

.mt0 {
  margin-top: 0 !important;
}

.mt5 {
  margin-top: 5px !important;
}

.mt10 {
  margin-top: 10px !important;
}

.mt15 {
  margin-top: 15px !important;
}

.mt20 {
  margin-top: 20px !important;
}

.mt25 {
  margin-top: 25px !important;
}

.mt30 {
  margin-top: 30px !important;
}

.mt35 {
  margin-top: 35px !important;
}

.mt40 {
  margin-top: 40px !important;
}

.mt45 {
  margin-top: 45px !important;
}

.mt50 {
  margin-top: 50px !important;
}

.mt60 {
  margin-top: 60px !important;
}

.mt70 {
  margin-top: 70px !important;
}

.mt80 {
  margin-top: 80px !important;
}

.mt90 {
  margin-top: 90px !important;
}

.mb100 {
  margin-bottom: 100px !important;
}

.mb120 {
  margin-bottom: 120px !important;
}

.mb140 {
  margin-bottom: 140px !important;
}

.mr5 {
  margin-right: 5px !important;
}

.mr10 {
  margin-right: 10px !important;
}

.mr20 {
  margin-right: 20px !important;
}

.mr0 {
  margin-right: 0 !important;
}

.ml0 {
  margin-left: 0 !important;
}

.ml5 {
  margin-left: 5px !important;
}

.ml10 {
  margin-left: 10px !important;
}

.ml20 {
  margin-left: 20px !important;
}

.ml30 {
  margin-left: 30px !important;
}

.ml40 {
  margin-left: 40px !important;
}

.lh100 {
  line-height: 100%;
}

.lh150 {
  line-height: 150%;
}

.p0 {
  padding: 0 !important;
}

.p10 {
  padding: 10px;
}

.p20 {
  padding: 20px;
}

.pt0 {
  padding-top: 0 !important;
}

.pt5 {
  padding-top: 5px !important;
}

.pt10 {
  padding-top: 10px !important;
}

.pt20 {
  padding-top: 20px !important;
}

.pt30 {
  padding-top: 30px !important;
}

.pt40 {
  padding-top: 40px !important;
}

.pt50 {
  padding-top: 50px !important;
}

.pt60 {
  padding-top: 60px !important;
}

.pt70 {
  padding-top: 70px !important;
}

.pt80 {
  padding-top: 80px !important;
}

.pt90 {
  padding-top: 90px !important;
}

.pt100 {
  padding-top: 100px !important;
}

.pr0 {
  padding-right: 0 !important;
}

.pr10 {
  padding-right: 10px !important;
}

.pr15 {
  padding-right: 15px !important;
}

.pr20 {
  padding-right: 20px !important;
}

.pr10 {
  padding-right: 10px !important;
}

.pr30 {
  padding-right: 30px !important;
}

.pl0 {
  padding-left: 0 !important;
}

.pl10 {
  padding-left: 10px !important;
}

.pl15 {
  padding-left: 15px !important;
}

.pl20 {
  padding-left: 20px !important;
}

.pl10 {
  padding-left: 10px !important;
}

.pl30 {
  padding-left: 30px !important;
}

.pb0 {
  padding-bottom: 0 !important;
}

.pb10 {
  padding-bottom: 10px !important;
}

.pb20 {
  padding-bottom: 20px !important;
}

.pb30 {
  padding-bottom: 30px !important;
}

.pb40 {
  padding-bottom: 40px !important;
}

.pb50 {
  padding-bottom: 50px !important;
}

.pb60 {
  padding-bottom: 60px !important;
}

.pb70 {
  padding-bottom: 70px !important;
}

.pb80 {
  padding-bottom: 80px !important;
}

.pb90 {
  padding-bottom: 90px !important;
}

.pb100 {
  padding-bottom: 100px !important;
}

.txt--lead {
  margin-bottom: 15px;
  color: #333;
  font-size: 1.8rem;
  font-weight: bold;
  line-height: 1.67;
}
.txt--bold {
  font-weight: bold;
}
.txt--up {
  font-size: 1.125em;
}
.txt--small {
  font-size: 0.875em;
  line-height: 1.4em;
}
.txt--1-5 {
  font-size: 1.5em !important;
  line-height: 1.6 !important;
}
.txt--left {
  text-align: left;
}
.txt--center {
  text-align: center;
}
.txt--right {
  text-align: right;
}
.txt--ffs {
  -webkit-font-feature-settings: "palt";
  font-feature-settings: "palt";
}
.txt--justify {
  text-align: justify;
  text-justify: inter-ideograph;
}
.txt--lh1 {
  line-height: 1 !important;
}
.txt--text {
  color: #28333b;
}
.txt--red {
  color: #b6232a;
}
.txt--white {
  color: #fff;
}
.txt--negative-indent {
  text-indent: -0.5em;
}
.txt--gothic {
  font-family: "noto-regular", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Verdana, "ＭＳ Ｐゴシック", sans-serif;
}

.midTex {
  font-size: 1.2em;
}

.moreMidTex {
  font-size: 1.35em;
  line-height: 1.5em;
}

.hiMidTex {
  font-size: 1.5em;
  line-height: 1.3em;
}

.bigTex {
  font-size: 2em;
  line-height: 1em;
}

.smallTex {
  font-size: 0.8em;
}

.img--right {
  float: right;
  margin: 0 0 30px 30px;
}
.img--left {
  float: left;
  margin: 0 30px 30px 0;
}
.img--bd {
  border: 1px #d7d7d7 solid;
}
.img--of {
  object-fit: cover;
  font-family: "object-fit:cover;";
}
.img--of--contain {
  object-fit: contain;
  font-family: "object-fit:contain;";
}
.img--of--pos-left {
  object-fit: cover;
  object-position: left center;
  font-family: "object-fit:cover; object-position:left center;";
}

.display--none {
  display: none;
}
.display--block {
  display: block;
}
.display--ib {
  display: inline-block;
}

.hover--opacity {
  opacity: 1;
  -webkit-backface-visibility: hidden;
  -moz-backface-visibility: hidden;
  -ms-backface-visibility: hidden;
  backface-visibility: hidden;
  -webkit-transition: opacity 0.2s;
  -o-transition: opacity 0.2s;
  transition: opacity 0.2s;
}
.hover--opacity.hover {
  opacity: 0.7;
}
.hover--underline:hover {
  text-decoration: underline;
}

.ind {
  text-indent: 1em;
}

.listLike {
  text-indent: -1em;
  padding-left: 1em;
}

.listLike1-5 {
  text-indent: -1.3em;
  padding-left: 1.3em;
}

.centerImg {
  display: block;
  margin: 0 auto;
}

.rightImg {
  display: block;
  float: right;
  margin: 0 0 10px 15px;
}

.leftImg {
  display: block;
  float: left;
}

.ws-nw {
  display: inline-block;
  white-space: nowrap;
}

.md-none {
  display: block;
}
.md-visible {
  display: none;
}
.md-visible--inline {
  display: none;
}

.sm-none {
  display: block;
}
.sm-visible {
  display: none;
}

.xs-none {
  display: block !important;
}
.xs-none--inline {
  display: inline;
}
.xs-visible {
  display: none !important;
}
.xs-visible--inline {
  display: none;
}

@media screen and (max-width: 999px) {
  .md-visible {
    display: block;
  }
  .md-visible--inline {
    display: inline;
  }
  .md-m0 {
    margin: 0 !important;
  }
  .md-mb0 {
    margin-bottom: 0 !important;
  }
  .md-mb5 {
    margin-bottom: 5px !important;
  }
  .md-mb10 {
    margin-bottom: 10px !important;
  }
  .md-mb15 {
    margin-bottom: 15px !important;
  }
  .md-mb20 {
    margin-bottom: 20px !important;
  }
  .md-mb25 {
    margin-bottom: 25px !important;
  }
  .md-mb30 {
    margin-bottom: 30px !important;
  }
  .md-mb35 {
    margin-bottom: 35px !important;
  }
  .md-mb40 {
    margin-bottom: 40px !important;
  }
  .md-mb50 {
    margin-bottom: 50px !important;
  }
  .md-mb60 {
    margin-bottom: 60px !important;
  }
  .md-mt0 {
    margin-top: 0 !important;
  }
  .md-mt10 {
    margin-top: 10px !important;
  }
  .md-mt15 {
    margin-top: 15px !important;
  }
  .md-mt20 {
    margin-top: 20px !important;
  }
  .md-mt30 {
    margin-top: 30px !important;
  }
  .md-mt40 {
    margin-top: 40px !important;
  }
  .md-mt50 {
    margin-top: 50px !important;
  }
  .md-mr0 {
    margin-right: 0 !important;
  }
  .md-pb30 {
    padding-bottom: 30px !important;
  }
  .md-pt0 {
    padding-top: 0 !important;
  }
  .md-pt5 {
    padding-top: 5px !important;
  }
  .md-pt10 {
    padding-top: 10px !important;
  }
  .md-pt20 {
    padding-top: 20px !important;
  }
  .md-pt30 {
    padding-top: 30px !important;
  }
  .md-pt40 {
    padding-top: 40px !important;
  }
  .md-pt50 {
    padding-top: 50px !important;
  }
  .md-pt60 {
    padding-top: 60px !important;
  }
  .md-pt70 {
    padding-top: 70px !important;
  }
  .md-pb0 {
    padding-bottom: 0px !important;
  }
  .md-pb5 {
    padding-bottom: 5px !important;
  }
  .md-pb10 {
    padding-bottom: 10px !important;
  }
  .md-pb20 {
    padding-bottom: 20px !important;
  }
  .md-pb30 {
    padding-bottom: 30px !important;
  }
  .md-pb40 {
    padding-bottom: 40px !important;
  }
  .md-pb50 {
    padding-bottom: 50px !important;
  }
  .md-pb60 {
    padding-bottom: 60px !important;
  }
  .md-pb70 {
    padding-bottom: 70px !important;
  }
  .md-pl10 {
    padding-left: 10px !important;
  }
  .md-pl15 {
    padding-left: 15px !important;
  }
  .md-pl20 {
    padding-left: 20px !important;
  }
  .md-pl10 {
    padding-left: 10px !important;
  }
  .md-pl30 {
    padding-left: 30px !important;
  }
}
@media screen and (max-width: 749px) {
  .hover--opacity:hover {
    opacity: 1;
  }
  .hover--opacity.hover {
    opacity: 0.7;
  }
  .txt--1-5 {
    font-size: 1.2em !important;
  }
  .txt--up {
    font-size: 1.05em;
  }
  .txt--lead {
    font-size: 1.7rem;
    line-height: 1.6;
  }
  .xs--txt--right {
    text-align: right;
  }
  .xs--txt--center {
    text-align: center;
  }
  .xs--txt--left {
    text-align: left;
  }
  .xs--display--inline {
    display: inline;
  }
  .xs-m0 {
    margin: 0 !important;
  }
  .xs-mb0 {
    margin-bottom: 0 !important;
  }
  .xs-mb5 {
    margin-bottom: 5px !important;
  }
  .xs-mb10 {
    margin-bottom: 10px !important;
  }
  .xs-mb15 {
    margin-bottom: 15px !important;
  }
  .xs-mb20 {
    margin-bottom: 20px !important;
  }
  .xs-mb25 {
    margin-bottom: 25px !important;
  }
  .xs-mb30 {
    margin-bottom: 30px !important;
  }
  .xs-mb35 {
    margin-bottom: 35px !important;
  }
  .xs-mb40 {
    margin-bottom: 40px !important;
  }
  .xs-mb50 {
    margin-bottom: 50px !important;
  }
  .xs-mb60 {
    margin-bottom: 60px !important;
  }
  .xs-mt0 {
    margin-top: 0 !important;
  }
  .xs-mt10 {
    margin-top: 10px !important;
  }
  .xs-mt15 {
    margin-top: 15px !important;
  }
  .xs-mt20 {
    margin-top: 20px !important;
  }
  .xs-mt30 {
    margin-top: 30px !important;
  }
  .xs-mt40 {
    margin-top: 40px !important;
  }
  .xs-mt50 {
    margin-top: 50px !important;
  }
  .xs-mr0 {
    margin-right: 0 !important;
  }
  .xs-pb30 {
    padding-bottom: 30px !important;
  }
  .xs-pt0 {
    padding-top: 0 !important;
  }
  .xs-pt5 {
    padding-top: 5px !important;
  }
  .xs-pt10 {
    padding-top: 10px !important;
  }
  .xs-pt20 {
    padding-top: 20px !important;
  }
  .xs-pt30 {
    padding-top: 30px !important;
  }
  .xs-pt40 {
    padding-top: 40px !important;
  }
  .xs-pt50 {
    padding-top: 50px !important;
  }
  .xs-pt60 {
    padding-top: 60px !important;
  }
  .xs-pt70 {
    padding-top: 70px !important;
  }
  .xs-pb0 {
    padding-bottom: 0px !important;
  }
  .xs-pb5 {
    padding-bottom: 5px !important;
  }
  .xs-pb10 {
    padding-bottom: 10px !important;
  }
  .xs-pb20 {
    padding-bottom: 20px !important;
  }
  .xs-pb30 {
    padding-bottom: 30px !important;
  }
  .xs-pb40 {
    padding-bottom: 40px !important;
  }
  .xs-pb50 {
    padding-bottom: 50px !important;
  }
  .xs-pb60 {
    padding-bottom: 60px !important;
  }
  .xs-pb70 {
    padding-bottom: 70px !important;
  }
  .xs-pl10 {
    padding-left: 10px !important;
  }
  .xs-pl15 {
    padding-left: 15px !important;
  }
  .xs-pl20 {
    padding-left: 20px !important;
  }
  .xs-pl10 {
    padding-left: 10px !important;
  }
  .xs-pl30 {
    padding-left: 30px !important;
  }
  .xs-none {
    display: none !important;
  }
  .xs-none--inline {
    display: none;
  }
  .xs-visible {
    display: block !important;
  }
  .xs-visible--inline {
    display: inline !important;
  }
}


.post-single-body p, #tinymce p {
  word-break: break-all;
}
.post-single-body img, #tinymce img {
  max-width: 100%;
  height: auto;
}
.post-single-body img[src*=uploads]:not([width="0"]), #tinymce img[src*=uploads]:not([width="0"]) {
  display: block;
  max-width: 71%;
  margin: 1em auto;
}
.post-single-body a, #tinymce a {
  text-decoration: underline;
}
.post-single-body a:hover, #tinymce a:hover {
  text-decoration: none;
}


.post-single-body h2:not(.l-heading):not(.l-freeTtl){
	font-size:140%!important;
	margin:5% 0 ;
    padding: .5em .7em;
    border-left: 5px solid #a32328;
    border-bottom: 3px solid #ded6d6;
    background-color: #fef6f6;
    color: #333333;
}
.wp-embedded-content {
	width:100%;
}
@media screen and (max-width: 767px){
.post-single-body h6 a{
    display: flex;
    justify-content: center;
    align-items: center;
    width: 85%;
    margin:2% auto 5%;
    padding: .9em 2em;
    border: none;
    box-shadow: 0 2px 3px rgb(0 0 0 / 25%), 0 2px 3px -2px rgb(0 0 0 / 15%);
    background-color: #a32328;
    color: #fff;
    font-weight: 600;
    font-size: 1em;
	border-radius: 90px;
	text-decoration:none;
}
}
@media screen and (min-width: 768px){
.post-single-body h6 a{
    display: flex;
    justify-content: center;
    align-items: center;
    width: 40%;
    margin:2% auto 5%;
    padding: .9em 2em;
    border: none;
    box-shadow: 0 2px 3px rgb(0 0 0 / 25%), 0 2px 3px -2px rgb(0 0 0 / 15%);
    background-color: #a32328;
    color: #fff;
    font-weight: 600;
    font-size: 1em;
	border-radius: 90px;
	text-decoration:none;
}
}

.post-single-body h6 a:hover {
    background-color: #a6131a;
}

.post-single-body h6 a::after {
    transform: rotate(45deg);
    width: 5px;
    height: 5px;
    margin-left: 10px;
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
    content: '';
}
.post-single-body h3{
    color: #a32328;
	font-size:140%!important;
	margin:9% 0 2.5%;
}
.post-single-body h3::before {
    background-color: #a32328;
}

.post-single-body h3::after {
    bottom: -11px;
    background-color: #fff;
}
.maru1 {
    position: relative;
    max-width: 400px;
    margin: 0 auto;
    padding: 1em calc(1.5em + 9px);
    border-top: 1px solid #a32328;
    border-bottom: 1px solid #a32328;
    color: #333;
}

.maru1::before,
.maru1::after {
    position: absolute;
    width: 1px;
    top: 50%;
    transform: translateY(-50%);
    height: calc(100% + 20px);
    background-color: #a32328;
    content: '';
}

.maru1::before {
    left: 9px;
}

.maru1::after {
    right: 9px;
}

/* 目次 */
#singleContent #toc_container{
	padding: 0;
	border-radius: 10px;
	border-color: var(--c-beige-400);
	overflow: hidden;
	margin-top: 30px;
}
#singleContent #toc_container .toc_title{
	background-color: var(--c-beige-200);
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 7px;
	font-weight: 800;
	font-size: 18px;
	color: var(--c-black);
	padding-block: 12px;
}
#singleContent #toc_container .toc_title::before{
	content: "";
	display: inline-block;
	--this-mask: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGhlaWdodD0iMjRweCIgdmlld0JveD0iMCAtOTYwIDk2MCA5NjAiIHdpZHRoPSIyNHB4IiBmaWxsPSIjZTNlM2UzIj48cGF0aCBkPSJNMzMxLjE1LTYxMS42MnEtOS4wOCAwLTE1LjIzLTYuNDYtNi4xNS02LjQ3LTYuMTUtMTUuMTkgMC04LjcyIDYuMTUtMTQuOTIgNi4xNS02LjE5IDE1LjIzLTYuMTloNDYzLjQ3cTkuMDggMCAxNS4yMyA2LjQxIDYuMTUgNi40MiA2LjE1IDE1LjEzIDAgOC43Mi02LjE1IDE0Ljk3dC0xNS4yMyA2LjI1SDMzMS4xNVptMCAxNTNxLTkuMDggMC0xNS4yMy02LjY2LTYuMTUtNi42Ny02LjE1LTE1LjY5dDYuMTUtMTUuMjJxNi4xNS02LjE5IDE1LjIzLTYuMTloNDYzLjQ3cTkuMDggMCAxNS4yMyA2LjN0Ni4xNSAxNS42MXEwIDkuMzItNi4xNSAxNS41OS02LjE1IDYuMjYtMTUuMjMgNi4yNkgzMzEuMTVabTAgMTUycS05LjA4IDAtMTUuMjMtNi40Ni02LjE1LTYuNDctNi4xNS0xNS4xOSAwLTguNzIgNi4xNS0xNC45MiA2LjE1LTYuMTkgMTUuMjMtNi4xOWg0NjMuNDdxOS4wOCAwIDE1LjIzIDYuNDEgNi4xNSA2LjQyIDYuMTUgMTUuMTMgMCA4LjcyLTYuMTUgMTQuOTd0LTE1LjIzIDYuMjVIMzMxLjE1Wk0xNzEuOTktNjA0cS0xMi4xMyAwLTIwLjA2LTguNDVRMTQ0LTYyMC45IDE0NC02MzMuMXEwLTExLjU1IDcuOTQtMTkuNzMgNy45NC04LjE3IDIwLjU3LTguMTcgMTAuNjMgMCAxOC41NiA4LjIgNy45MyA4LjE5IDcuOTMgMjAuMzEgMCAxMS41OS04LjA3IDIwLjA0LTguMDYgOC40NS0xOC45NCA4LjQ1Wm0wIDE1MS4yM3EtMTIuMTMgMC0yMC4wNi03LjktNy45My03LjkxLTcuOTMtMTkuODMgMC0xMS4zIDcuOTQtMjAuMjkgNy45NC04Ljk4IDIwLjU3LTguOTggMTAuNjMgMCAxOC41NiA5LjExIDcuOTMgOS4xMSA3LjkzIDIxLjA0IDAgMTEuMDYtOC4wNyAxOC45Ni04LjA2IDcuODktMTguOTQgNy44OVptMCAxNTIuNzdxLTEyLjEzIDAtMjAuMDYtOC40NS03LjkzLTguNDUtNy45My0yMC45MyAwLTExLjgzIDcuOTQtMTkuNzMgNy45NC03Ljg5IDIwLjU3LTcuODkgMTAuNjMgMCAxOC41NiA4LjIzIDcuOTMgOC4yMyA3LjkzIDE5LjUgMCAxMi4zNy04LjA3IDIwLjgyLTguMDYgOC40NS0xOC45NCA4LjQ1WiIvPjwvc3ZnPg==) no-repeat center center / 100%;
	mask: var(--this-mask);
	-webkit-mask: var(--this-mask);
	background-color: var(--RED01);
	aspect-ratio: 1/1;
	width: 22px;
}
#singleContent #toc_container p.toc_title+ul.toc_list{
	margin-top: 0;
	padding: 15px 25px;
}
#singleContent div#toc_container p.toc_title a,
#singleContent div#toc_container ul.toc_list a{
	color: var(--c-black);
	font-weight: bold;
}
#singleContent #toc_container .toc_list li{
	padding-block: 7px;
}
/* #singleContent #toc_container .toc_list{
	counter-reset: original-counter;
}
#singleContent #toc_container .toc_list > li > a::before{
	counter-increment: original-counter;
	content: counter(original-counter);
	font-family: "Cormorant Garamond", "Times New Roman", serif;
	font-size: 20px;
	font-weight: 700;
	color: var(--RED01);
	display: inline-block;
	margin-right: 5px;
} */
#singleContent #toc_container .toc_list > li:not(:last-child){
	border-bottom: 1px dashed var(--c-beige-400);
}
@media (hover: hover){
	#singleContent #toc_container .toc_list a{
		transition: all .3s;
	}
	#singleContent #toc_container .toc_list a:hover{
		color: var(--RED01);
		opacity: 1;
		text-decoration: none;
	}
}