@charset "UTF-8";
/* CSS変数 */
/*=========================================================*/

/* common */

/*=========================================================*/
/*------------------------*/
/* 共通設定__変更の場合は報告を! */
/*------------------------*/
/*-----------------------*/
/* 無効化 */
/*-----------------------*/
/*メールを無効*/
a[href^="mail"]{
	pointer-events: none;
}
/*PCでの電話番号の自動発信を無効*/
/* 960px  */
@media(min-width:960px) {
    a[href^="tel:"]{
      pointer-events: none;
    }
}
/* アウトラインを無効化 */
input:focus,
textarea:focus
{
	outline: none;
}
/* Android/iOSのタップ時のデフォルト設定無効化 */
@media(any-hover: none){
	a{
		-webkit-tap-highlight-color:rgba(0,0,0,0);
		cursor:pointer;
	}
}
/*-----------------------*/
/* リンク */
/*-----------------------*/
a{
	transition: opacity .4s ease-in-out;
}
.common-hover{
	opacity: 0.4;
}
/*-----------------------*/
/* 注釈 */
/*-----------------------*/
.attention{
	font-size: var(--txt-sm);
	display: flex;
	align-items: flex-start;
}
.attention::before{
	content: "※";
	font-size: var(--txt-sm);
}
/*-----------------------*/
/* スクロールバー
/*-----------------------*/
/* 表示されるスクロールバーをデザインに合う形にする */
/* ::-webkit-scrollbar{
	width: 12px;
	height: 12px;
	background: var(--c-scroll-bar);
} */
/*スクロールバーのレール*/
/* ::-webkit-scrollbar-track {
	background: var(--c-scroll-bar);
	border: none;
	border-radius: 12px;
} */
/*スクロールバーの動く部分*/
/* ::-webkit-scrollbar-thumb{
	background-color: var(--color-scroll-bar-body);
    border-radius: 12px;
	box-shadow: none;
} */
/* ::-webkit-scrollbar-thumb:hover{
	background-color: var(--color-scroll-bar-strong);
} */
/*-------------------------------*/
/* Tablet 959px */
/*------------------------------*/
@media(max-width: 959px){
}/*Tablet END*/
/*-------------------------------*/
/* Smartphone 559px */
/*------------------------------*/
@media(max-width:559px){
}/*Smartphone END*/


/*----------------------------*/
/* 以下、共通設定__変更禁止項目 */
/* 	▽	▽	▽	▽	▽	▽ */
/*------------------------*/
/*表示・非表示*/
.none-pc{display:none;}/*pcでのみ非表示*/
.none-tab{display: block;}/*タブレットでのみ非表示*/
.none-sm{display: block;}/*スマホでのみ非表示*/
.none-tab-sm{display:block;}/*タブレットとスマホで非表示*/
.none-pc-tab{display:none;}/*pcとタブレットで非表示*/
.none-pc-sm{display:none;}/*pcとスマホで非表示*/
/*------------------------*/
/*上・下付き文字*/
.sup{vertical-align: super;}
.sub{vertical-align: sub;}
/*------------------------*/
/*ボーダー設定*/
hr{
	width: 100%;
	border: none;
	background: #dedede;
	height: 1px;
}
/*------------------------*/
/*リンクテキスト*/
a{text-decoration: none;}
a:link {color: var(--c-link);}
a:visited {color: var(--c-link);}
/* @media(any-hover: hover){
	a:link {color: var(--c-link);}
	a:visited {color: var(--c-link);}
	a:hover {color: var(--c-link--hover);text-decoration: none;}
	a:active {color: var(--c-link--hover);text-decoration:none;}
} */
/*------------------------*/
/* コピー禁止 */
.copy-guard{pointer-events: none;}
/*------------------------*/
/* コンテンツのTABフォーカスを指定 */
/* *:focus{} */
/*-------------------------------*/
/* Tablet 959px */
/*------------------------------*/
@media(max-width: 959px){
/*表示・非表示*/
.none-pc{display:block;}/*pcでのみ非表示*/
.none-tab{display: none;}/*タブレットでのみ非表示*/
.none-sm{display: block;}/*スマホでのみ非表示*/
.none-tab-sm{display:none;}/*タブレットとスマホで非表示*/
.none-pc-tab{display:none;}/*pcとタブレットで非表示*/
.none-pc-sm{display:block;}/*pcとスマホで非表示*/
}/*Tablet END*/
/*-------------------------------*/
/* Smartphone 559px */
/*------------------------------*/
@media(max-width:559px){
/*表示・非表示*/
.none-pc{display:block;}/*pcでのみ非表示*/
.none-tab{display: block;}/*タブレットでのみ非表示*/
.none-sm{display: none;}/*スマホでのみ非表示*/
.none-tab-sm{display:none;}/*タブレットとスマホで非表示*/
.none-pc-tab{display:block;}/*pcとタブレットで非表示*/
.none-pc-sm{display:none;}/*pcとスマホで非表示*/
}/*Smartphone END*/



/*=========================================================*/

/* reset */

/*=========================================================*/
/*------------------------*/
/*リセット__変更禁止*/
/*------------------------*/
li { list-style: none; }
sup { vertical-align: text-top; }
sub { vertical-align: text-bottom; }
table {border-collapse: collapse;border-spacing: 0;}
/*font size*/
h1{ font-size: calc(16rem/16); font-weight: normal; }
h2{ font-size: calc(16rem/16); font-weight: normal; }
h3{ font-size: calc(16rem/16); font-weight: normal; }
h4{ font-size: calc(16rem/16); font-weight: normal; }
h5{ font-size: calc(16rem/16); font-weight: normal; }
h6{ font-size: calc(16rem/16); font-weight: normal; }
/*=========================================================*/

/* root */

/*=========================================================*/
:root{
	/* ================== */
	/* カラー */
	--c-main: #1b1b1b;
	--c-main-soft: #797979;
	--c-main-pale: #e5e5e5;

	--c-logo-bk: #231815;

	--c-gray: #5e5e5e;
	--c-gray-soft: #afafaf;
	--c-gray-pale:#dedede;
	
	--c-accent: #E3606E;
	--c-base: #ffffff;

	--c-bk: #333333;
	--c-bk-strong:#1b1b1b;
	--c-white:#ffffff;

	/* テキストリンク */
	--c-link: #006EAD;
	--c-link--hover: #C25700;

	/* scroll bar */
	--c-scroll-bar: #4b6572;
	--c-scroll-bar-body: #053A5C;

	/* ================== */
	/* px to rem // 16px = 1rem = (16rem / 16) */
	/* ================== */
	/* テキスト */
	/* フォント */
	--baseFonts: "Helvetica Neue",Arial,"Hiragino Kaku Gothic ProN","Hiragino Sans",Meiryo,sans-serif;
	/* フォントウェイト */
	--bold: bold;
	--medium: 500;
	--normal: normal;
	/* 基準値 min-width320px max-width1280px */
	/* 10px to 12px */
	--txt-xs: clamp(0.625rem, 0.583rem + 0.21vw, 0.75rem);
	/* 12px to 14px */
	--txt-sm: clamp(0.75rem, 0.708rem + 0.21vw, 0.875rem);
	/* 15px to 16px */
	--txt-reg: clamp(0.938rem, 0.917rem + 0.1vw, 1rem);
	/* 17px to 18px */
	--txt-md: clamp(1.063rem, 1.042rem + 0.1vw, 1.125rem);
	/* 20px to 24px */
	--txt-lg: clamp(1.25rem, 1.167rem + 0.42vw, 1.5rem);
	/* 26px to 32px */
	--txt-xl: clamp(1.625rem, 1.5rem + 0.63vw, 2rem);
	/* 32px to 40px */
	--txt-2xl: clamp(2rem, 1.833rem + 0.83vw, 2.5rem);
	/* 38px to 100px */
	--txt-3xl: clamp(2.375rem, 1.083rem + 6.46vw, 6.25rem);

	/* line-height */
	--lh-xs:1.2;
	--lh-sm:1.4;
	--lh-reg:1.5;
	--lh-md:1.7;
	--lh-lg:2;

	/* ================== */
	/* オブジェクト */
	/* margin//主に上下 */
	--mp-tb-xs: calc(24rem/16);
	--mp-tb-sm: calc(32rem/16);
	--mp-tb-reg: calc(40rem/16);
	--mp-tb-md: calc(56rem/16);
	--mp-tb-lg: calc(64rem/16);
	--mp-tb-xl: calc(80rem/16);
	--mp-tb-2xl: calc(160rem/16);

	/* スペース//主に左右 */
	--mp-lr-xs: min(2vw,calc(24rem/16));
	--mp-lr-sm: min(2vw,calc(32rem/16));
	--mp-lr-reg: min(4vw,calc(40rem/16));
	--mp-lr-md: min(4vw,calc(56rem/16));
	--mp-lr-lg: min(7vw,calc(64rem/16));

	/* width */
	--max-width: calc(1280rem/16);
	--fx-width: min(
		calc(100% - calc(var(--mp-lr-reg) * 2)),
		var(--max-width)
	);
	/* ツラ合わせ設定
	window幅 - コンテンツ幅 / 2 = 片側の余白値 */
	--head-match-mp: max(
		var(--mp-lr-reg),
		calc(calc(100% - var(--max-width))/2)
	);

	/* height */
	--height-100vh: calc(var(--vh, 1vh) * 100);

	/* ================== */
	/* イージング */
	/* linear */
	/* 均等 */
	--linear:cubic-bezier(0.0, 0.0, 1.0, 1.0);

	/* easeInSine */
	--easeInSine:cubic-bezier(.47, 0, .745, .715);
	/* easeOutSine */
	--easeOutSine:cubic-bezier(.39, .575, .565, 1);
	/* easeInOutSine */
	--easeInOutSine:cubic-bezier(.445, .05, .55, .95);

	/* easeInQuad */
	--easeInQuad:cubic-bezier(.55, .085, .68, .53);
	/* easeOutQuad */
	--easeOutQuad:cubic-bezier(.25, .46, .45, .94);
	/* easeInOutQuad */
	--easeInOutQuad:cubic-bezier(.455, .03, .515, .955);

	/* easeInCubic */
	--easeInCubic:cubic-bezier(.55, .055, .675, .19);
	/* easeOutCubic */
	--easeOutCubic:cubic-bezier(.215, .61, .355, 1);
	/* easeInOutCubic */
	--easeInOutCubic:cubic-bezier(.645, .045, .355, 1);

	/* easeInQuart */
	--easeInQuart:cubic-bezier(.895, .03, .685, .22);
	/* easeOutQuart */
	--easeOutQuart:cubic-bezier(.165, .84, .44, 1);
	/* easeInOutQuart */
	--easeInOutQuart:cubic-bezier(.77, 0, .175, 1);

	/* easeInQuint */
	--easeInQuint:cubic-bezier(.755, .05, .855, .06);
	/* easeOutQuint */
	--easeOutQuint:cubic-bezier(.23, 1, .32, 1);
	/* easeInOutQuint */
	--easeInOutQuint:cubic-bezier(.86, 0, .07, 1);

	/* easeInExpo */
	--easeInExpo:cubic-bezier(.95, .05, .795, .035);
	/* easeOutExpo */
	--easeOutExpo:cubic-bezier(.19, 1, .22, 1);
	/* easeInOutExpo */
	--easeInOutExpo:cubic-bezier(1, 0, 0, 1);

	/* easeInCirc */
	--easeInCirc:cubic-bezier(.6, .04, .98, .335);
	/* easeOutCirc */
	--easeOutCirc:cubic-bezier(.075, .82, .165, 1);
	/* easeInOutCirc */
	--easeInOutCirc:cubic-bezier(.785, .135, .15, .86);

	/* 戻る動き//慣性スクロールのバウンドみたいな感じ */
	/* easeInBack */
	--easeInBack:cubic-bezier(.6, -0.28, .735, .045);
	/* easeOutBack */
	--easeOutBack:cubic-bezier(.175, .885, .32, 1.275);
	/* easeInOutBack */
	--easeInOutBack:cubic-bezier(.68, -0.55, .265, 1.55);
}
/* Dark Mode */
/* @media(prefers-c-scheme: dark) {
	:root{
		--c-main:#0d517b;
		--c-main-soft: #1e6388;
		--c-main-pale: #3385a5;
		--c-main-strong:#022239;

		--c-accent: #c96b74;
		--c-base: #c2c2c2;
	}
} */
/*-------------------------------*/

/* Tablet 959px */

/*------------------------------*/
@media(max-width: 959px){
:root{
	/* ================== */
	/* オブジェクト */
	/* margin */
	--mp-tb-xs: calc(24rem/16);
	--mp-tb-sm: calc(24rem/16);
	--mp-tb-reg: calc(32rem/16);
	--mp-tb-md: calc(40rem/16);
	--mp-tb-lg: calc(56rem/16);
	--mp-tb-xl: calc(64rem/16);
	--mp-tb-2xl: calc(120rem/16);
	}
}/*Tablet END*/
/*-------------------------------*/

/* Smartphone 559px */

/*------------------------------*/
@media(max-width:559px){
:root{
	/* ================== */
	/* オブジェクト */
	/* margin */
	--mp-tb-xs: calc(24rem/16);
	--mp-tb-sm: calc(24rem/16);
	--mp-tb-reg: calc(24rem/16);
	--mp-tb-md: calc(32rem/16);
	--mp-tb-lg: calc(40rem/16);
	--mp-tb-xl: calc(56rem/16);
	--mp-tb-2xl: calc(80rem/16);
	}
}/*Smartphone END*/




/*=========================================================*/

/* base */

/*=========================================================*/
/*-- font-size-----

	1rem = 16px

------------------*/
/*-----------------------*/

/* レイアウト  */

/*-----------------------*/
body {
	padding: 0;
	margin: 0;

	font-family: var(--baseFonts);
	font-size: var(--txt-md);
	font-weight: var(--normal);
	line-height: var(--lh-md);
	letter-spacing: 0.05em;
	color: var(--c-main);

	background-color: var(--c-base);

	width:100%;
	height: 100%;
	min-height: 100vh;

    display: flex;
    flex-direction: column;
}
#layout{
	width: 100%;
	flex-grow: 1;
}
/*-----------------------*/
/* コンテンツ//
sectionあるいは直下の要素==>
.content__wrapper
.contentMax
*/
/*-----------------------*/
#content{
	width: 100%;
	margin: 0 auto;
}
.content__wrapper{
	width: 100%;
    margin-top: var(--mp-tb-2xl);
}
.content__fx-wrapper{
	width: var(--fx-width);
	margin-left: auto;
	margin-right: auto;
}



/*=========================================================*/

/* ヘッダー

/*=========================================================*/
/* headerの高さ */
:root{
	--header-height: calc(90rem/16);
	--header-height-is-change: calc(64rem/16);
	/* is clamp setting / max 240px min 160px / max-vw 1280px min-vw 320px */
	/* --header-logo-size: clamp(10rem, 8.333rem + 8.33vw, 15rem);
	--header-logo-size--fb: 200px; */

	/* is clamp setting / max 320px min 200px / max-vw 1280px min-vw 320px */
	--header-logo-size: clamp(12.5rem, 10rem + 12.5vw, 20rem);
	--header-logo-size--fb: 300px;

	--logo-scale: scale(1);
	--logo-scale-is-change: scale(0.8);
}
@media(max-width:959px){
    :root{
		--header-height: calc(80rem/16);
        --header-logo-size--fb: 240px;
    }
}
@media(max-width: 559px){
	:root{
		--header-height: calc(64rem/16);
		--header-logo-size--fb: 180px;
	}
}
#header{
	width: 100%;
	height: var(--header-height);
	background-color: var(--c-white);

	display: flex;
	align-items: center;
	justify-content: flex-end;

	position: fixed;
	top: 0;
	left: 0;

	z-index: 10;
}
/*-----------------------------*/
/* ナビアニメーション headerの高さ */
@media(min-width: 960px){
	#header.is-change{
		height: var(--header-height-is-change);
		position: fixed;
		top: 0;
		left: 0;

		animation-duration: 1s;
		animation-timing-function: var(--easeOutSine);
		animation-fill-mode: forwards;
		z-index: 10;
	}
	#header.is-change[data-is-change="true"]{
		animation-name: header-shrink;
	}
	#header.is-change[data-is-change="false"]{
		animation-name: header-expand;
	}
	@keyframes header-shrink{
		from{
			height: var(--header-height);
			
		}
		to{
			height: var(--header-height-is-change);
		}
	}
	@keyframes header-expand{
		from{
			height: var(--header-height-is-change);
		}
		to{
			height: var(--header-height);
		}
	}
	#header.is-change #header-logo{
		animation-duration: 1s;
		animation-timing-function: var(--easeOutSine);
		animation-fill-mode: forwards;
		z-index: 10;
	}
	#header.is-change[data-is-change="true"] #header-logo{
		animation-name: logo-shrink;
	}
	#header.is-change[data-is-change="false"] #header-logo{
		animation-name: logo-expand;
	}
	@keyframes logo-shrink{
		from{
			transform: var(--logo-scale);
		}
		to{
			transform: var(--logo-scale-is-change);
		}
	}
	@keyframes logo-expand{
		from{
			transform: var(--logo-scale-is-change);
		}
		to{
			transform: var(--logo-scale);
		}
	}

	#header.is-change .header-tel{
		position: absolute;
		right: 0;
		top: var(--header-height-is-change);

		animation-duration: 1s;
		animation-timing-function: var(--easeOutSine);
		animation-fill-mode: forwards;
		z-index: 10;
	}
	#header.is-change[data-is-change="true"] .header-tel{
		animation-name: header-tel-shrink;
	}
	#header.is-change[data-is-change="false"] .header-tel{
		animation-name: header-tel-expand;
	}
	@keyframes header-tel-shrink{
		from{
			height: var(--header-height);
			top: var(--header-height);
		}
		to{
			height: var(--header-height-is-change);
			top: var(--header-height-is-change);
		}
	}
	@keyframes header-tel-expand{
		from{
			height: var(--header-height-is-change);
			top: var(--header-height-is-change);
		}
		to{
			height: var(--header-height);
			top: var(--header-height);
		}
	}
}
/* アンカーページ遷移時のヘッダーずれ対策 */
:target{
	scroll-margin-top: calc(var(--header-height) + 24px);
}
/* ロゴ */
#header-logo{
	width: calc(var(--header-logo-size--fb) + calc(2 * var(--mp-lr-reg)));
	width: calc(var(--header-logo-size) + calc(2 * var(--mp-lr-reg)));
	height: 100%;
	display: flex;
	align-items: center;
	margin-right: auto;
}
#header-logo > a{
	width: 100%;
	height: 100%;
	padding: 0 var(--mp-lr-reg);
	display: flex;
	align-items: center;
	transition: opacity .4s var(--easeOutSine);
}
#header-logo > a > img{
	width: 100%;
	height: auto;
}
/* hover設定 */
@media(any-hover:hover){
	#header-logo > a:hover,
	#header-logo > a:focus{
		opacity: 0.5;
	}
}



/*-----------------------*/

/* ナビゲーション */

/*-----------------------*/
/* コンテナ */
#nav__wrapper,
#nav__inner{
	height: 100%;
	display: flex;
	align-items: center;
}
/* ナビアイテム */
#header .nav__item{
	height: 100%;
}
#header .nav__item > a{
	height: 100%;
	padding: 0 2.3em;

	font-size: var(--txt-reg);
	font-family: var(--alphabet);
	letter-spacing: 0.2em;
	color: var(--c-main);

	display: flex;
	align-items: center;
	justify-content: center;

	transition: opacity .4s var(--easeOutSine);
}
#header .nav__item.hp-btn{
	background-color: var(--c-main);
	height: 100%;
}
#header .nav__item.hp-btn > a{
	line-height: 1.2;
    text-align: center;
	height: 100%;
	width: 240px;
	font-size: var(--txt-reg);
	font-family: var(--alphabet);
	letter-spacing: 0.2em;
	color: var(--c-white);
	background-color: var(--c-main);
	border: solid 1px var(--c-main);

	display: flex;
	align-items: center;
	justify-content: center;

	transition: background-color .4s var(--easeOutSine),
	color .4s var(--easeOutSine),
	opacity .4s var(--easeOutSine);
}
/* 区切り線 */
#header .nav__item{
	position: relative;
}
#header .nav__item::before{
	content: "";
	display: block;
	width: 1px;
	height: 40%;
	background-color: var(--c-main);

	position: absolute;
	top: 50%;
	left: 0;
	transform: translateY(-50%);
}
#header .nav__item.hp-btn:before{
	content: none;
}
/* hover設定 */
@media(any-hover:hover){
	.nav__item > a:hover,
	.nav__item > a:focus{
		opacity: 0.4;
	}
	#header .nav__item.hp-btn > a:hover,
	#header .nav__item.hp-btn > a:focus{
		opacity: 1;
		color: var(--c-main);
		background-color: var(--c-white);
	}
}
/* -------------------- */
/* バーガーボタン */
/*----------------------*/
/* オープンボタン */
#nav-open-button{
	width: 64px;
	height: auto;
	align-self: stretch;
	display: none;

	justify-content: center;
	flex-direction: column;
	align-items: center;
	gap: 7px 0;

	transform-origin: center center;
}
#nav-open-button .nav-open-button__line{
	display: block;
	width: 48%;
	height: 2px;
	background-color: var(--c-main);
	transition: transform .4s var(--easeOutSine);
}
/* クローズボタン */
#nav-close-button{
	width: 64px;
	height: 64px;
	display: none;

	justify-content: center;
	flex-direction: column;
	align-items: center;

	transition: opacity .4s var(--easeOutSine);
	transform-origin: center center;

	z-index: 11;
}
.nav-close-button__inner{
	width: 100%;
	height: 100%;
	background-color:  transparent;

	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;

	position: relative;
}
.nav-close-button__line{
	width: 40%;
	height: 2px;
	border-radius: 1px;
	background-color: var(--c-main);

	position: absolute;
	top: 50%;
	left: 50%;
}
.nav-close-button__line.-top{
	transform: translate(-50%,-50%);
}
.nav-close-button__line.-bottom{
	transform: translate(-50%,-50%);
}

/* 店名と電話番号 */
.header-tel{
	height: var(--header-height);
	width: 240px;
	background-color: rgba(255, 255, 255, .7);
	backdrop-filter: blur(10px);
	-webkit-backdrop-filter: blur(10px);

	font-size: var(--txt-md);
	color: var(--c-bk);
	
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;

	position: absolute;
	right: 0;
	top: var(--header-height);
}
/* 受付時間 */
.header-tel p{
	line-height: 1.2;
}
/* 電話番号 */
.header-tel_number{
	font-family: "Roboto Slab", serif;
	font-optical-sizing: auto;
	text-decoration: none;
	font-size: var(--txt-lg);
	font-weight: 700;
	font-style: normal;
	color: var(--c-main) !important;
	line-height: var(--lh-sm);
}
.header-tel .header-tel_number > span{
	font-size: var(--txt-md);
}
.header-tel .header-tel_time{
	font-feature-settings: "palt";
	font-size: var(--txt-reg);
	letter-spacing: 0.07em;
	line-height: 1;
}


/*-------------------------------*/

/* Tablet iPad Pro */

/*------------------------------*/
@media (min-device-width: 1024px) and (max-device-width: 1366px) and (orientation: portrait),
       (min-device-width: 1024px) and (max-device-width: 1366px) and (orientation: landscape) {

	#header .nav__item > a{
		padding: 0 1em;
	}
}



/*-------------------------------*/

/* Tablet 959px */

/*------------------------------*/
@media(max-width: 959px){
	/* -------------------- */
	/* バーガーボタン */
	#nav-open-button,
	#nav-close-button{
		display: flex;
	}
	#nav-close-button{
		position: absolute;
		top: 0;
		right: 0;
		z-index: 11;
	}
	/* ナビゲーション コンテナ */
	/* ナビアイテム */
	#nav__wrapper,
	#nav__inner{
		display: none;
		padding: 104px 0;
		width: calc(320rem / 16);
		max-width: calc(100% - 14vw);
		height: 100%;
		min-height: 100vh;

		position: fixed;
		top: 0;
		right: 0;
		z-index: 10;
	}
	#nav__inner{
		overflow: auto;
		background-color: var(--c-white);
	}
	#nav__inner .nav__item{
		width: 100%;
		height: auto;
	}
	#nav__inner .nav__item > a{
		width: 100%;
		padding: calc(24rem/16) min(4vw, calc(64rem/16));
		display: flex;
		align-items: center;
		justify-content: flex-start;
	}
	#nav__inner .nav__item.hp-btn{
		width: calc(100% - calc(min(4vw, calc(64rem/16))*2));
		height: auto;
		margin: 0 auto;
		margin-top: calc(24rem/16);
	}
	#nav__inner .nav__item.hp-btn > a{
		width: 100%;
		padding: 1.5em min(4vw, calc(64rem/16));

		display: flex;
		align-items: center;
		justify-content: center;
	}
	/* 区切り線 削除 */
	#header .nav__item::before{
		content: none;
	}
	/* カバー */
	#nav__wrapper.is-open #nav__cover{
		width: 100%;
		height: 100vh;
		min-height: 100vh;
		min-height: var(--height-100vh);
		background-color: rgba(0, 0, 0, .2);
		backdrop-filter: blur(6px) saturate(110%);
		-webkit-backdrop-filter: blur(6px) saturate(110%);

		position: fixed;
		top: 0;
		left: 0;
		z-index: -9;
		cursor: pointer;
	}
	/* オープン/クローズアニメーション */
	/*------------------*/
	/* オープン */
	/*------------------*/
	body.nav-open{
		overflow: hidden;
	}
	#nav__wrapper.is-open,
	#nav__wrapper.is-open #nav__inner{
		display: block;
	}
	/* ボタン アニメーション */
	body.nav-open #nav-open-button .nav-line-icon.-top{
		transform: rotate(-45deg);
	}
	body.nav-open #nav-open-button .nav-line-icon.-bottom{
		transform: rotate(45deg);
	}
	body.nav-open #nav-open-button .nav-line-icon.-center{
		opacity: 0;
	}
	#nav__wrapper.is-open[aria-hidden="false"] .nav-close-button__line.-top{
		animation-name: nav-close-icon-top;
		animation-duration: .4s;
		animation-timing-function: var(--easeOutSine);
		animation-fill-mode: forwards;
	}
	#nav__wrapper.is-open[aria-hidden="false"] .nav-close-button__line.-bottom{
		animation-name: nav-close-icon-bottom;
		animation-duration: .4s;
		animation-timing-function: var(--easeOutSine);
		animation-fill-mode: forwards;
	}
	@keyframes nav-close-icon-top {
		from{
			transform: translate(-50%,-50%) rotate(0);
			opacity: 0;
		}
		to{
			transform: translate(-50%,-50%) rotate(-45deg);
			opacity: 1;
		}
	}
	@keyframes nav-close-icon-bottom {
		from{
			transform: translate(-50%,-50%) rotate(0);
			opacity: 0;
		}
		to{
			transform: translate(-50%,-50%) rotate(45deg);
			opacity: 1;
		}
	}
	/* ナビ アニメーション */
	#nav__wrapper.is-open[aria-hidden="false"] #nav__inner{
		animation-name: navOpen;
		animation-duration: .4s;
		animation-timing-function: var(--easeOutSine);
		animation-fill-mode: forwards;
	}
	@keyframes navOpen{
		from{
			opacity: 0;
		}
		to{
			opacity: 1;
		}
	}
	#nav__wrapper.is-open[aria-hidden="false"] #nav__cover{
		animation-name: coverOpen;
		animation-duration: .4s;
		animation-timing-function: var(--easeOutSine);
		animation-fill-mode: forwards;
	}
	@keyframes coverOpen{
		from{
			background-color: rgba(0, 0, 0, 0);
			backdrop-filter: blur(0px) saturate(100%);
			-webkit-backdrop-filter: blur(0px) saturate(100%);
		}
		to{
			background-color: rgba(0, 0, 0, .2);
			backdrop-filter: blur(6px) saturate(110%);
			-webkit-backdrop-filter: blur(6px) saturate(110%);
		}
	}
	/* ナビゲーションリストのアニメーション */
	#nav__wrapper.is-open[aria-hidden="false"] .nav__item{
		animation-name: navItemSlide;
		animation-duration: .4s;
		animation-delay: .4s;
		animation-timing-function: var(--easeOutSine);
		animation-fill-mode: both;
	}
	#nav__wrapper.is-open[aria-hidden="false"] .header-tel{
		animation-name: navItemSlide;
		animation-duration: .4s;
		animation-delay: .4s;
		animation-timing-function: var(--easeOutSine);
		animation-fill-mode: both;
	}
	#nav__wrapper.is-open[aria-hidden="false"] .themes-menu{
		animation-name: navItemSlide;
		animation-duration: .4s;
		animation-delay: .4s;
		animation-timing-function: var(--easeOutSine);
		animation-fill-mode: both;
	}
	#nav__wrapper.is-open[aria-hidden="false"] .nav__item:nth-child(2){
		animation-delay: .45s;
	}
	#nav__wrapper.is-open[aria-hidden="false"] .nav__item:nth-child(3){
		animation-delay: .5s;
	}
	#nav__wrapper.is-open[aria-hidden="false"] .nav__item:nth-child(4){
		animation-delay: .55s;
	}
	#nav__wrapper.is-open[aria-hidden="false"] .nav__item:nth-child(5){
		animation-delay: .6s;
	}
	#nav__wrapper.is-open[aria-hidden="false"] .header-tel{
		animation-delay: .65s;
	}
	#nav__wrapper.is-open[aria-hidden="false"] .themes-menu{
		animation-delay: .7s;
	}
	@keyframes navItemSlide{
		from{
			opacity: 0;
			filter: blur(6px);
			transform: translateX(-10px);
		}
		to{
			opacity: 1;
			filter: blur(0);
			transform: translateX(0);
		}
	}
	/*------------------*/
	/* クローズ */
	/*------------------*/
	/* ボタン アニメーション */
	#nav__wrapper[aria-hidden="true"] .nav-close-button__line.-top{
		animation-name: nav-close-icon-top-is-close;
		animation-duration: .4s;
		animation-timing-function: var(--easeOutSine);
		animation-fill-mode: forwards;
	}
	#nav__wrapper[aria-hidden="true"] .nav-close-button__line.-bottom{
		animation-name: nav-close-icon-bottom-is-close;
		animation-duration: .4s;
		animation-timing-function: var(--easeOutSine);
		animation-fill-mode: forwards;
	}
	#nav__wrapper[aria-hidden="true"] #nav-close-button{
		opacity: 0;
	}
	@keyframes nav-close-icon-top-is-close {
		from{
			transform: translate(-50%,-50%) rotate(-45deg);
		}
		to{
			transform: translate(-50%,-50%) rotate(0);
			opacity: 0;
		}
	}
	@keyframes nav-close-icon-bottom-is-close {
		from{
			transform: translate(-50%,-50%) rotate(45deg);
		}
		to{
			transform: translate(-50%,-50%) rotate(0);
			opacity: 0;
		}
	}
	/* ナビ アニメーション */
	#nav__wrapper[aria-hidden="true"] #nav__inner{
		animation-name: navClose;
		animation-duration: .4s;
		animation-timing-function: var(--easeOutSine);
		animation-fill-mode: forwards;
	}
	@keyframes navClose{
		from{
			opacity: 1;
		}
		to{
			opacity: 0;
		}
	}
	#nav__wrapper[aria-hidden="true"] #nav__cover{
		animation-name: coverClose;
		animation-duration: .4s;
		animation-timing-function: var(--easeOutSine);
		animation-fill-mode: forwards;
	}
	@keyframes coverClose{
		from{
			background-color: rgba(0, 0, 0, .2);
			backdrop-filter: blur(6px) saturate(110%);
			-webkit-backdrop-filter: blur(6px) saturate(110%);
		}
		to{
			background-color: rgba(0, 0, 0, 0);
			backdrop-filter: blur(0px) saturate(100%);
			-webkit-backdrop-filter: blur(0px) saturate(100%);
		}
	}
	/* 電話番号・受付時間 */
	.header-tel{
		position: static;
		margin: 0 auto;
		margin-top: 0.5em;
	}

}
/*-------------------------------*/

/* Tablet 959px */

/*------------------------------*/
@media(max-width:959px){
	/* バーガーボタン */
	#nav-open-button{
		width: 48px;
		gap: 5px 0;
	}
	#nav-close-button{
		width: 48px;
		height: 48px;
		z-index: 11;
	}
	/* ナビゲーション コンテナ */
	/* ナビアイテム */
	#nav__wrapper,
	#nav__inner{
		padding: 80px 0;
	}
	/* カテゴリーメニュー */
	.themes-menu{
		width: 100%;
	}
	.themes-menu .widget_block{
		width: 100%;
	}
	.themes-menu .widget_block .wp-block-heading{
		margin-top: 2em;
		padding-left: min(4vw, calc(64rem / 16));
		padding-bottom: 0.3em;
		border-bottom: solid 1px var(--c-gray);
	}
	/* リスト */
	.themes-menu .widget_block ul{
		width: 100%;
	}
	.themes-menu .widget_block ul li{
		width: 100%;
		padding: calc(14rem / 16) min(4vw, calc(64rem / 16));
	}
	.themes-menu .widget_block ul li + li{
		border-top: solid 1px var(--c-gray-pale);
	}
	.themes-menu .widget_block ul li > a{
		display: block;
		width: 100%;
		color: var(--c-main);
	}
	
}




/*=========================================================*/

/* フッター

/*=========================================================*/
/* ページトップへ戻る */
#page-top-scroll{
	z-index: 20;
	width: 60px;
	height: 100px;

	position: fixed;
	right: -60px;
	bottom: 20px;

 	transition: transform .4s var(--easeOutSine); /* スピード調整はここ */
}
#page-top-scroll > a{
	width: 100%;
	height: 100%;
	background-color: var(--c-main);
	border: solid 1px var(--c-main);

	font-size: var(--txt-md);
	font-family: "Roboto Slab", serif;
	font-optical-sizing: auto;
	color: var(--c-white);
	letter-spacing: 0.15em;

	display: flex;
	align-items: flex-end;
	justify-content: center;
	padding-bottom: 1em;

	transition:
	background-color .4s var(--easeOutSine),
	color .4s var(--easeOutSine)
	;
	cursor: pointer;

	position: relative;
}
#page-top-scroll > a > svg{
	position: absolute;
	top: 16px;
	left: 50%;
	transform: translateX(-50%);

	height: 24px;
	fill: var(--c-white);

	transition: top .4s var(--easeOutSine);
}
/* ホバー */
#page-top-scroll > a.link-hover{
	background-color: var(--c-white);
	color: var(--c-main);
}
#page-top-scroll > a.link-hover > svg{
	top: 6px;
	fill: var(--c-main);
}
/*-----------------------*/
/* is-change設定 */
/*-----------------------*/
	#footer__wrapper.is-change #page-top-scroll{
		position: fixed;
		right: 0;
		bottom: 20px;

		animation-duration: .4s;
		animation-timing-function: var(--easeOutSine);
		animation-fill-mode: forwards;
		z-index: 1;
	}
	#footer__wrapper.is-change[data-is-change="true"] #page-top-scroll{
		animation-name: scroll-show;
	}
	#footer__wrapper.is-change[data-is-change="false"] #page-top-scroll{
		animation-name: scroll-away;
	}
	@keyframes scroll-away{
		from{
			opacity: 1;
		}
		to{
			opacity: 0;
		}
	}
	@keyframes scroll-show{
		from{
			opacity: 0;
		}
		to{
			opacity: 1;
		}
	}
/*-------------------------------*/
/* コンテナ */
/*------------------------------*/
#footer__wrapper{
	width: 100%;
	margin-top: var(--mp-tb-2xl);
	padding: 0 var(--mp-lr-reg);
	padding-bottom: var(--mp-tb-reg);
	background-color: var(--c-logo-bk);

	position: relative;
}
/*===========================================*/
/* gridインナー */
#footer__inner{
	height: 100%;
	margin: 0 auto;
	padding-top: var(--mp-tb-xl);

    display: grid;
    grid-template-columns: 1fr calc(200rem/16) 1fr;
    place-content: center;
    grid-template-areas:
    "nm-tel logo sitemap "
    "copy copy copy"
    ;
}
/* 店名と電話番号 */
.footer-tel{
    grid-area: nm-tel;
}
/* ロゴ */
#footerLogo{
    grid-area: logo;
	place-content: center;
}
/* サイトマップ */
.footer__sitemap-wrapper{
    grid-area: sitemap;
}
/* コピーライト */
#bottom-box{
    grid-area: copy;
}
/*===========================================*/
/*-------------------------------*/
/* footer 左側 */
/*-------------------------------*/
/* 店名と電話番号 */
.footer-tel{
	font-size: var(--txt-md);
	color: var(--c-white);
	margin-right: 1em;
	
	display: flex;
	flex-direction: column;
	justify-content: flex-start;
}
/* 店名 */
.footer-tel h3{
	font-size: var(--txt-xl);
	font-family: "Roboto Slab", serif;
	font-optical-sizing: auto;
	font-weight: var(--bold);
	line-height: var(--line-height-sm);
	color: var(--c-white);
	letter-spacing: 0.1em;
}
.footer-tel h3 > span{
	font-size: var(--txt-lg);
}
/* 受付時間 */
.footer-tel p{
	line-height: 1.2;
}
/* 電話番号 */
.footer-tel .footer-tel_number{
	text-decoration: none;

	font-size: var(--txt-xl);
	font-weight: 700;
	font-style: normal;
	line-height: var(--lh-reg);
	color: var(--c-white);
}
.footer-tel .footer-tel_number > span{
	font-size: var(--txt-md);
}
.footer-tel .footer-tel_time{
	font-feature-settings: "palt";
	font-size: var(--txt-reg);
	letter-spacing: 0.07em;
	line-height: 1;
}
/*-------------------------------*/
/* footer 真ん中 */
/*-------------------------------*/
/* ロゴ */
#footerLogo{
    width: calc(200rem / 16);
    margin: 0 auto;
}
#footerLogo > a
{
	width: 100%;
	transition: opacity .4s ease-in-out;
}
#footerLogo > a > img{
	width: 100%;
	height: auto;
}
#footerLogo a.link-hover{
	opacity: 0.5;
}
/* 住所 */
.place-address__wrapper{
	margin-top: 1em;
	width: 100%;
}
.place-address__wrapper p{
	font-size: var(--txt-reg);
	color: var(--c-white);
	line-height: 1.3;
}
/*-------------------------------*/
/* footer 右側 */
/*-------------------------------*/
/* サイトマップ */
#footer__sitemap{
	width: 100%;
	
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-end;
	gap: min(2vw,calc(24rem/16)) 0;
}
#footer__sitemap li{
	margin: 0 var(--mp-lr-xs);
}
#footer__sitemap li:last-of-type{
	margin-right: 0;
}
#footer__sitemap li > a{
	font-family: "Kosugi Maru", sans-serif;
	color: var(--c-white);
	font-size: var(--txt-reg);
}
/* コンタクトボタン */
.contact-square{
	margin-top: 2em;
	width: 100%;

	display: flex;
	justify-content: end;
	align-items: center;
}
.contact-square > a{
	line-height: 1.2;
    text-align: center;
	width: 240px;
	height: 56px;
	padding: 20px;
	border: solid 1px var(--c-white);

	font-family: "Kosugi Maru", sans-serif;
	font-size: var(--txt-reg);
	color: var(--c-main);
	background-color: var(--c-white);

	display: flex;
	align-items: center;
	justify-content: center;

	transition: 
	color .4s var(--easeOutSine),
	background-color .4s var(--easeOutSine);
}
/* hover */
#footer__inner .contact-square a.link-hover{
	background-color: var(--c-main);
	color: var(--c-white);
}
/* コピーライト */
#bottom-box{
	margin: 0 auto;
	margin-top: var(--mp-tb-xl);
}
#copyright{
	color: var(--c-white);
	font-size: var(--txt-sm);
}
/*-------------------------------*/

/* Tablet 959px */

/*------------------------------*/
@media(max-width: 959px){
	/*===========================================*/
	/* gridインナー */
	#footer__inner{
		place-content: center;
		grid-template-columns: 1fr;
		grid-template-areas:
		"nm-tel"
		"sitemap"
		"contact"
		"logo"
		"copy"
		;
	}
	/* 店名と電話番号 */
	.footer-tel{
		align-items: center;
		margin-right: 0;
	}
	.place-address__wrapper p{
		text-align: center;
	}
	/* サイトマップ */
	#footer__sitemap{
		border-top: solid 1px var(--c-white);
		border-bottom: solid 1px var(--c-white);
		padding-top: 1em;
		padding-bottom: 1em;
		margin-top: var(--mp-tb-md);
		justify-content: center;
	}
	/* お問い合わせ */
	.contact-square{
		margin-top: var(--mp-tb-md);
		justify-content: center;
	}
	/* ロゴ */
	#footerLogo{
		margin-top: var(--mp-tb-xl);
		grid-area: logo;
		place-content: center;
	}
	/* コピーライト */
	#bottom-box{
		grid-area: copy;
	}
	/*===========================================*/
	/*===========================================*/

}/*Tablet END*/
/*-------------------------------*/

/* Smartphone 559px */

/*------------------------------*/
@media(max-width:559px){
	/* ページトップへ戻る */
	#page-top-scroll{
		width: 48px;
		height: 64px;

		bottom: 1em;
	}
	#page-top-scroll > a{
		letter-spacing: 0.05em;
		padding-bottom: 0.4em;
	}
	#page-top-scroll > a > svg{
		height: 20px;
		top: 6px;
	}

	/* ロゴ */
	#footerLogo{
		width: calc(160rem/16);
	}
	/* サイトマップ */
	.footer__sitemap-wrapper{
		width: 100%;
	}
	#footer__sitemap{
		margin-top: var(--mp-tb-md);
		width: 100%;
		
		flex-direction: column;
		align-items: center;
		gap: 0;
	}
	#footer__sitemap li {
		margin: 0;
		width: 100%;
		height: 50px;
	}
	#footer__sitemap li:first-of-type{
		border-top: solid 1px var(--c-gray-light);
	}
	#footer__sitemap li + li{
		border-top: solid 1px var(--c-gray-light);
	}
	#footer__sitemap li:last-of-type{
		border-bottom: solid 1px var(--c-gray-light);
	}
	#footer__sitemap li > a{
		display: block;
		width: 100%;
		height: 100%;

		display: flex;
		justify-content: center;
		align-items: center;
	}
}



/*=========================================================*/

/* PARTS */

/*=========================================================*/
/* コンテナ */
/* ======▼ヒーロー画像▼====== */
#lower-hero{
	padding: 0 15vw;
	width: 100%;
	height: 24vw;	
	min-height: calc(240rem/16);
	max-height: calc(280rem/16);
	background-repeat: no-repeat;
	background-size: cover;

	margin-top: var(--header-height);

	display: flex;
	align-items: center;
	justify-content: center;

	position: relative;
}
/*------------------------*/
/* 下層ページのヒーロー画像 */
.terms-mainImg__wrapper{
    background-image: url(../images/terms/hero__terms.jpg);
    background-position: center;
	background-size: cover;
}
.hero-heading{
	display: inline-block;
    word-break: break-word; 
    overflow-wrap: anywhere;
    white-space: normal;

    background: rgba(255,255,255,0.85);
    -webkit-backdrop-filter: blur(5px);
    backdrop-filter: blur(5px);
    padding: 1em 1.5em;
    width: auto;
	font-size: var(--txt-xl);

    box-sizing: border-box;
    z-index: 2;
}
/* 英字 */
.hero-heading span:first-of-type{
	display: block;
	font-size: var(--txt-xl);
	font-family: "Roboto Slab", serif;
	font-optical-sizing: auto;
	color: var(--c-main-soft);
	line-height: 1;
	letter-spacing: 0.05em;
}
/* 日本語 */
.hero-heading span:nth-of-type(2){
	margin-top: 0.5em;
	display: block;
	font-size: var(--txt-xl);
	font-family: "Noto Serif JP", serif;
	font-optical-sizing: auto;
	font-weight: 700;
	color: var(--c-main);
	line-height: var(--lh-xs);

	width: 100%;

	position: relative;
}
.hero-heading span:nth-of-type(2)::after{
	content: "";
	display: block;

	height: 1px;
	background-color: var(--c-main-soft);

	position: absolute;
	top: 50%;
	right: 0;
	transform: translateY(-50%);
}
/* 利用規約 */
#lower-hero .hero-heading span:nth-of-type(2)::after{
	width: calc(100% - 4.5em);
}
/* ブログ一覧 */
#lower-hero #whole-list.hero-heading span:nth-of-type(2)::after{
	width: calc(100% - 5.5em);
}
/* テーマ別ブログ一覧 */
#lower-hero #category-list.hero-heading span:nth-of-type(2)::after{
	width: calc(100% - 9.5em);
}
/* 年別ブログ一覧 */
#lower-hero #date-list.hero-heading span:nth-of-type(2)::after{
	width: calc(100% - 7.5em);
}
/* ブログ詳細 */
#lower-hero #single-post.hero-heading span:nth-of-type(2)::after{
	width: calc(100% - 5.5em);
}
/* 検索結果一覧 */
#lower-hero #search-list.hero-heading span:nth-of-type(2)::after{
	width: calc(100% - 6.5em);
}
/*-------------------------------*/

/* Smartphone 559px */

/*------------------------------*/
@media(max-width:559px){
	/* 日本語 */
	.hero-heading span:nth-of-type(2){
		font-size: var(--txt-md);
	}
}/*Smartphone END*/
/*-----------------------*/
/* SVG
/*-----------------------*/
/* ロゴ */
.logo{
	fill: currentColor;
	/* 親要素のcolorを継承する//safariでfillのtransitionが効かない対策 */
}
/* burger */
.burger-icon{
	fill:none;
	stroke: currentColor;
	stroke-width:2;
	stroke-linecap:round;
	stroke-miterlimit:10;
}
.burger-close-icon{
	fill:none;
	stroke: currentColor;
	stroke-width:2;
	stroke-linecap:round;
	stroke-miterlimit:10;
}
/* arrow */
.arrow--style{
	display: block;
	fill: currentColor;
	width: var(--txt-md);
}
/*-----------------------*/
/* 画像
/*-----------------------*/
/* aspect設定 */
.ph-asp{
	width: 100%;
	position: relative;
}
.ph-asp::before{
	content: "";
	display: block;
}
.ph-asp16-9::before{
	padding-top: 56.25%;
}
.ph-asp3-2::before{
	padding-top: 66.666%;
}
.ph-asp4-3::before{
	padding-top: 75%;
}
.ph-asp img{
	width: 100%;
	height: 100%;
	object-fit: cover;
	position: absolute;
	top: 0;
	left: 0;
}
/*-----------------------*/
/* パーツ
/*-----------------------*/
/*---------------*/
/* テキスト設定 */
.txt{
	font-size: var(--txt-md);
	line-height: var(--lh-md);
	text-align: justify;
}
/*-----------------------*/
/*headline*/
/*-----------------------*/
.headline{
	font-size: var(--txt-xl);
	font-weight: var(--bold);
	line-height: var(--lh-sm);
	color: var(--c-main);
}
/* 英字 */
.headline span:first-of-type{
	display: block;
	font-size: var(--txt-3xl);
	font-family: "Roboto Slab", serif;
	font-optical-sizing: auto;
	color: var(--c-gray-pale);
	line-height: 1;
	letter-spacing: 0.05em;
}
/* 日本語 */
.headline span:nth-of-type(2){
	margin-top: 2em;
	display: block;
	font-size: var(--txt-xl);
	font-family: "Noto Serif JP", serif;
	font-optical-sizing: auto;
	font-weight: 700;
	color: var(--c-main);
	line-height: var(--lh-xs);

	width: 100%;

	position: relative;
}
.headline span:nth-of-type(2)::after{
	content: "";
	display: block;

	height: 1px;
	background-color: var(--c-main-soft);

	position: absolute;
	top: 50%;
	right: 0;
	transform: translateY(-50%);
}
/* ブログ */
#articles-blog .headline span:nth-of-type(2)::after{
	/* 文字数+1em分引く */
	width: calc(100% - 4em);
}
/* インスタグラム */
#articles-insta .headline span:nth-of-type(2)::after{
	/* 文字数+1em分引く */
	width: calc(100% - 8em);
}
/*-----------------------*/
/*subhead*/
/*-----------------------*/
.subhead{
	font-size: var(--txt-lg);
	font-weight: var(--bold);
	line-height: var(--lh-sm);
	color: var(--c-main);

	display: flex;
	flex-direction: column;
}
/* 英字 */
.subhead span:first-of-type{
	font-size: var(--txt-xl);
	font-family: "Roboto Slab", serif;
	font-optical-sizing: auto;
	color: var(--c-main-soft);
	line-height: 1;
	letter-spacing: 0.1em;
}
.subhead span:first-of-type span{
	font-size: var(--txt-reg);
}
/* 日本語 */
.subhead span:nth-of-type(2){
	margin-top: 0.5em;
	font-size: var(--txt-lg);
	font-family: "Noto Serif JP", serif;
	font-optical-sizing: auto;
	font-weight: 700;
	color: var(--c-main);
	line-height: var(--lh-xs);
}
/* テキストリンク */
.txtLink{
	color: var(--c-link);
	text-decoration: underline;
	transition:
		color .2s ease-in-out,
		text-decoration .2s ease-in-out
	;
}
.txtLink.txtLink-hover{
	color: var(--c-link--hover);
}
/*---------*/
/* button */
a.button{
	width: 100%;
	max-width: 280px;
	height: 48px;
	background-color: var(--c-main);
	border: 1px solid var(--c-main);

	color: white;
	font-size: var(--txt-reg);

	display: inline-flex;
	align-items: center;
	justify-content: center;

	position: relative;

	transition:
	color .4s var(--easeInSine),
	background-color .4s  var(--easeInSine)
	;
}
a.button > .scroll-arrow{
	width: 28px;
	fill: var(--c-white);

	position: absolute;
	top: 50%;
	right: 10px;
	transform: translateY(-50%);

	transition: transform .4s var(--easeInSine);
}
a.button > .ex-link{
	width: 20px;
	fill: var(--c-white);

	position: absolute;
	top: 50%;
	right: 14px;
	transform: translateY(-50%);

	transition: fill.4s var(--easeInSine),
	transform .4s var(--easeInSine);
}
/* instagramアイコン */
a.icon-btn{
	margin-top: 2em;
	color: var(--c-white);
	width: 220px;
	position: relative;

	display: flex;
	justify-content: space-between;
	align-items: center;

	transition: color .4s var(--easeOutSine);
}
a.icon-btn > img{
	display: inline-block;
	width: 28px;
	height: auto;

	transition: 
	transform .4s var(--easeOutSine),
	opacity .4s var(--easeOutSine);
}
/* instagramアイコンの線 */
a.icon-btn::after{
	content: "";
	display: block;

	width: 32px;
	height: 1px;
	background-color: var(--c-white);

	position: absolute;
	top: 50%;
	right: calc(28px + 14px);/* アイコン幅b + アイコン幅の半分の余白（ロゴガイドラインに則って） */
	transform-origin: left center;
	transform: translateY(-50%);

	transition: 
	background-color .4s var(--easeOutSine),
	transform .4s var(--easeOutSine);
}
/*------------------------------*/
/*hover設定*/
/*------------------------------*/
a.button.button-hover{
	color: var(--c-main);
	background-color: white;
}
a.button.button-hover > .scroll-arrow{
	fill: var(--c-main);
	transform: translateY(-20%);
}
a.button.button-hover > .ex-link{
	fill: var(--c-main);
	transform: translateY(-70%) translateX(20%);
}
/* instagramアイコン */
a.icon-btn.button-hover{
	color: var(--c-main-soft)
}
a.icon-btn.button-hover img{
	opacity: 0.7;
	transform: scale(0.9);
}
a.icon-btn.button-hover::after{
	animation: line-pulse 1s var(--easeOutSine) infinite;
	background-color: var(--c-white);
}
@keyframes line-pulse{
  0%  { transform:translateY(-50%) scaleX(0); }
  100%{ transform:translateY(-50%) scaleX(1); }
}
/*-------------------------------*/

/* Tablet 959px */

/*------------------------------*/
@media(max-width: 959px){
	/* 当店のこだわり */
	#home_commitment .headline span:first-of-type{
		padding-left: 0;
	}
	#home_commitment .headline span:nth-of-type(2){
		padding-left: 0;
	}
	#home_commitment .headline span:nth-of-type(2)::after{
		/* 文字数+1em分引く */
		width: calc(100% - 8em);
	}
}/*Tablet END*/
/*-------------------------------*/

/* Smartphone 559px */

/*------------------------------*/
@media(max-width:559px){
	.headline span:nth-of-type(2) {
    	margin-top: 0.5em;
	}
	/* メガネランド原田について 線 */
	#home_about .headline span:nth-of-type(2)::after {
		width: calc(100% - 9em);
	}
}/*Smartphone END*/



/*=========================================================*/

/* アニメーション */

/*=========================================================*/
.anime-scroll--hidden-x{
    overflow-x:hidden;
}
.anime-scroll--hidden-y{
    overflow-y:hidden;
}

/* 基本設定 */
.si{
	opacity: 0;
	transition:
	transform .8s var(--easeOutSine),
	opacity .8s var(--easeOutSine)
	;
}
/* 解除 */
.si.show{
	will-change: transform;
	opacity: 1;
	transform: none;
	filter: none;
}

/* --------------------- */
/* アニメーション */
/* ジワっと出現 */
.si--blur{
	opacity: 0;
	filter: blur(10px);
	transition:
    transform .8s var(--easeOutSine),
    opacity  .8s var(--easeOutSine),
    filter   .8s var(--easeOutSine);
}
/* ボーダーを伸ばす */
.si--border{
	opacity: 1;
}
span.si--border:nth-of-type(2)::after{
	transform: scaleX(0);
	transition: transform .4s var(--linear);
	transform-origin: left top;
	transition-delay: .4s;
}
span.si.show.si--border:nth-of-type(2)::after{
	transform: scaleX(1);
}
/* 縦ボーダーを伸ばす */
.si--v-border{
	opacity: 1;
}
.sub-heading__wrapper.si--v-border::after{
	transform: scaleY(0);
	transition: transform .4s var(--linear);
	transform-origin: left top;
}
.sub-heading__wrapper.si.show.si--v-border::after{
	transform: scaleY(1);
}
/* ワイプ */
@keyframes slideReveal {
  0% {
    clip-path: inset(0 100% 0 0);
  }
  100% {
    clip-path: inset(0 0 0 0);
  }
}
.si--wipe {
  clip-path: inset(0 50% 0 50%);
  opacity: 0;
  transition: none;
}
.si.show.si--wipe {
  animation: slideReveal 1.6s var(--easeOutSine) forwards;
}


/* --------------------- */
/* ディレイ--.si基準 */
@media(min-width: 560px){
	.si--delay_short{
		transition-delay: .1s;
	}
	.si--delay_mid{
		transition-delay: .2s;
	}
	.si--delay_mid-long{
		transition-delay: .3s;
	}
	.si--delay_long{
		transition-delay: .4s;
	}
	.si--delay_very-long{
		transition-delay: .5s;
	}
	.si--delay_longest{
		transition-delay: .6s;
	}
}



/*=========================================================*/

/* ブログページ ファーストビュー */

/*=========================================================*/
#mainImg{
    display: block;
    width: 100%;
    /* height: calc(var(--vh, 1vh) * 100); */
    height: 100vh;
    height: var(--height-100vh);
    min-height: 640px;
    overflow: hidden;
    isolation:isolate;

    position: relative;
}
#mainImg picture{
    width: 100%;
    height: 100%;
}
#mainImg img{
    width: 100%;
    height: 100%;
    object-fit: cover;
	object-position: 50% 100%;
}
#mainImg::after {
    content: '';
    position: absolute;
    inset: 0;
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);

    /* アニメーション */
    animation: clearBlur 1.6s var(--easeOutSine) forwards;
    z-index: 1;
}
@keyframes clearBlur {
    0% {
        backdrop-filter: blur(30px);
        -webkit-backdrop-filter: blur(30px);
        transform: scale(1.05); /* 少しズームすると自然 */
    }
    100% {
        backdrop-filter: blur(0px);
        -webkit-backdrop-filter: blur(0px);
        transform: scale(1);
    }
}
/* キャッチコピー */
.main-blog__caption {
    background: rgba(255,255,255,0.85);
    -webkit-backdrop-filter: blur(5px);
    backdrop-filter: blur(5px);
    padding: 1em 1.5em;
    width: auto; 

    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate3d(-50%, -50%, 0);

    box-sizing: border-box; /* paddingも含めてwidthを制御 */
    z-index: 2;
}
.main-blog__caption > h1{
    white-space: nowrap;
    overflow-wrap: normal;
	font-size: var(--txt-2xl);
	font-family: "Noto Serif JP", serif;
	font-optical-sizing: auto;
	font-weight: 700;
    letter-spacing: 0.1em;
	color: var(--c-main);

	text-align: center;
}
/* サブキャッチコピー */
.main-blog__caption > h1 span{
	white-space: nowrap;
    overflow-wrap: normal;
	font-size: var(--txt-lg);
	font-family: var(--baseFonts);
	font-weight: 400;

    letter-spacing: 0.1em;
	color: var(--c-gray);

	position: relative;

	padding-left: 0.8em;
	padding-right: 0.8em;
}
.main-blog__caption > h1 span::before{
	position: absolute;
	top: 50%;
	left: 0;
	transform: translateY(-50%);

	content: "";
	display: block;
	height: 100%;
	width: 1px;
	background-color: var(--c-gray);
}
.main-blog__caption > h1 span::after{
	position: absolute;
	top: 50%;
	right: 0;
	transform: translateY(-50%);

	content: "";
	display: block;
	height: 100%;
	width: 1px;
	background-color: var(--c-gray);
}
/*-------------------------------*/

/* Smartphone 559px */

/*------------------------------*/
@media(max-width:559px){
	/* キャッチ */
	.main-blog__caption > h1{
		font-size: var(--txt-lg);
	}
	/* サブキャッチ */
	.main-blog__caption > h1 span{
		margin-top: 1em;
		display: block;
		line-height: var(--lh-xs);
		font-size: var(--txt-reg);
	}
}/*Smartphone END*/


/*=========================================================*/

/* index.php */

/*=========================================================*/
.blog__box{
	margin-top: var(--mp-tb-xl);
	margin-left: auto;
	margin-right: auto;
	width: var(--fx-width);
	max-width: 100%;
}
/* リスト */
.blog__list{
	margin-top: var(--mp-tb-md);
	width: 100%;

	display: flex;
	flex-wrap: wrap;
	gap: 2em;
}
/* アイテム */
.blog__list > li{
	width: calc(calc(100% - 4em)/3);
	padding: 1em;
	box-sizing: border-box;
}
/* ボタンコンテナ */
.blog__btn-wrapper{
	margin-top: 2em;

	display: flex;
	justify-content: center;
	align-items: center;
}
/* メインヘディング */
#articles-blog .home-about__heading-wrapper{
	padding-left: var(--head-match-mp);
	width: calc(100% - var(--head-match-mp));
}
#articles-insta .home-about__heading-wrapper{
	padding-left: var(--head-match-mp);
	width: calc(100% - var(--head-match-mp));
}

/* フィルター機能 */
.post-card {
	opacity: 1;
	transform: none;
	transition: opacity .28s ease, transform .28s ease;
}
/* フェードアウト中 */
.post-card.is-hiding {
	opacity: 0;
	transform: scale(.98);
}
/* 完全非表示（アニメ後に付与） */
.post-card.is-hidden {
	display: none;
}
.blog-filter {
	display: flex;
	gap: .5rem;
	flex-wrap: wrap;
	margin-block: 1rem;
}
/* フィルターボタン */
.blog-filter button {
	padding: .5em .9em;
	border: 1px solid #ddd;
	background: #fff;
	cursor: pointer;

	transition:
	color .4s var(--easeInSine),
	background-color .4s  var(--easeInSine)
	;
}
.blog-filter button.is-active {
	border-color: var(--c-gray);
	font-weight: 700;
}
@media (prefers-reduced-motion: reduce) {
  .post-card { transition: none; }
}
.blog-filter button:hover{
	color: var(--c-white);
	background-color: var(--c-main);
}

/*=========================================================*/

/* 投稿内容 index.php */

/*=========================================================*/
.blog__post-inner{
	width: 100%;
}
/* 日付 */
.post-date{
	display: block;
	font-size: var(--txt-reg);
	color: var(--c-gray);
}
/* カテゴリー */
.post-category{
	margin-top: 0.5em;
	width: 100%;

	display: flex;
	flex-wrap: wrap;
	gap: 0.5em;
}
.post-category a{
	display: inline-block;
	height: 100%;
	font-size: var(--txt-sm);
	color: var(--c-main);
	padding: 0.2em 0.5em;
	border: solid 1px var(--c-gray);
	text-align: center;

	transition:
	color .4s var(--easeInSine),
	background-color .4s  var(--easeInSine)
	;
}
/* ヘディング */
a.post-heading{
	display: block;
	margin-top: 1em;
	margin-bottom: 1em;
	padding-left: 0.5em;
    border-left: solid 4px var(--c-main);
	color: var(--c-main);
	font-size: var(--txt-reg);
	font-weight: 700;
	font-family: "Noto Serif JP", serif;
	font-optical-sizing: auto;

	transition:
	color .4s var(--easeInSine);
}
/* サムネ */
.post-card .ph-asp{
	margin-top: 1em;
	box-shadow: 0 0 10px rgba(0, 0, 0, .3);

	transition:
	opacity .4s var(--easeInSine);
}
/* ホバー */
.post-category > a:hover{
	color: var(--c-white);
	background-color: var(--c-main);
}
a.post-heading:hover{
	color: var(--c-main-soft);
}
.post-card .ph-asp:hover{
	opacity: 0.5;
}
/*-------------------------------*/

/* Tablet 959px */

/*------------------------------*/
@media(max-width: 959px){
	/* アイテム */
	.blog__list > li{
		width: calc(calc(100% - 2em)/2);
	}
}/*Tablet END*/
/*-------------------------------*/

/* Smartphone 559px */

/*------------------------------*/
@media(max-width:559px){
	/* アイテム */
	.blog__list > li{
		width: 100%;
	}
}/*Smartphone END*/



/*=========================================================*/

/* ブログ一覧 template-news.php 記事共通 */

/*=========================================================*/
/* コンテナ */
#all-blog.content__fx-wrapper{
	margin-top: var(--mp-tb-xl);
}
.all-blog__inner{
	width: 100%;

	display: flex;
	flex-wrap: wrap;
	gap: 2em;
}
/* リスト */
.blog__all-list{
	width: 70%;
}
/* 記事 */
.post-all{
	width: 100%;
	height: fit-content;
	padding: 2em;
	box-shadow: 0 0 10px rgba(0, 0, 0, .3);

	box-sizing: border-box;
}
.post-all + .post-all{
	margin-top: 2em;
}
/* 画像 */
.post-all p a {
	display: block;
	width: 100%;
	height: auto;
	box-sizing: border-box;
}
.post-all p a > img{
	width: 100%;
	height: auto;
	padding: 1em;
}
/* ヘディング */
.post-all > h2{
	display: block;
	margin-top: 1em;
	margin-bottom: 1em;
	padding-left: 0.5em;
    border-left: solid 4px var(--c-main);
	font-size: var(--txt-lg);
	font-family: "Noto Serif JP", serif;
	font-optical-sizing: auto;
	font-weight: 700;
	color: var(--c-main);
}
/*=========================================================*/
/* ページネーション */
/*=========================================================*/
.pagenation__wrapper{
	margin-top: 1em;
	width: 100%;
}
.pagenation__wrapper a{
	color: var(--c-link);
	transition: color .4s var(--easeInSine);
}
/* 前へ */
.prev.page-numbers{
	margin-right: 0.5em;
}
/* 次へ */
.next.page-numbers{
	margin-left: 0.5em;
}
/* ホバー */
.pagenation__wrapper a:hover{
	color: var(--c-link--hover);
}
/*-------------------------------*/

/* Smartphone 559px */

/*------------------------------*/
@media(max-width:559px){
	/* リスト */
	.blog__all-list{
		width: 100%;
	}
	/* 記事 */
	.post-all{
		padding: 1.5em;
	}
}/*Smartphone END*/



/*=========================================================*/

/* サイドバー sidebar-archive-custom.php */

/*=========================================================*/
/* コンテナ */
.sidebar__wrapper{
	width: calc(30% - 2em);
}
.widget_block + .widget_block{
	margin-top: 1em;
}
.widget_block ul + ul{
	margin-top: 1em;
}
/* ヘディング */
.wp-block-heading{
	display: block;
	font-size: var(--txt-md);
	font-family: "Noto Serif JP", serif;
	font-optical-sizing: auto;
	font-weight: 700;
	color: var(--c-main);

	padding-bottom: 0.3em;
	margin-bottom: 0.5em;
	border-bottom: solid 1px var(--c-gray);
}
/* カテゴリーメニュー 親カテゴリー */
.widget_block ul li > a{
	color: var(--c-link);
	line-height: var(--lh-lg);
	transition: color .4s var(--easeInSine);
}
/* カテゴリーメニュー 子カテゴリー */
.widget_block ul.cat-list li ul.children{
	padding-left: 0.7em;
	border-left: solid 1px var(--c-gray-soft);
	margin-bottom: 1em;
}
.widget_block ul.cat-list li ul.children li > a{
	display: block;
	font-size: var(--txt-reg);
	line-height: 1.4;
}
/* 検索バー */
/* コンテナ */
.widget_search{
	width: 100%;
}
.wp-block-search{
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	gap: 0.3em;
}
/* インプット */
.wp-block-search__input{
	width: calc(100% - 120px - 0.3em);
	height: 48px;
	border: solid 1px var(--c-gray);
	box-sizing: border-box;
}
/* ボタン */
.wp-block-search__button{
	width: 120px;
	max-width: 100%;
	height: 48px;
	background-color: var(--c-main);
	border: 1px solid var(--c-main);

	color: white;
	font-size: var(--txt-reg);

	display: inline-flex;
	align-items: center;
	justify-content: center;

	position: relative;

	transition:
	color .4s var(--easeInSine),
	background-color .4s  var(--easeInSine)
	;
}
/* ホバー */
.wp-block-search__button:hover{
	color: var(--c-main);
	background-color: var(--c-white);
}
.widget_block ul li > a:hover{
	color: var(--c-link--hover)
}
/*=========================================================*/

/* searchform 記事が無い時 */

/*=========================================================*/
.searchform{
	width: 100%
}
.searchform div{
	width: 100%
}
/* インプット */
.searchform div #s{
	height: 48px;
	width: 280px;
	max-width: 100%;
	border: solid 1px var(--c-gray);
	padding: 0.5em 0.2em;
}
/* 検索ボタン */
.searchform div #searchsubmit{
	width: 120px;
	max-width: 100%;
	height: 48px;
	background-color: var(--c-main);
	border: 1px solid var(--c-main);

	color: white;
	font-size: var(--txt-reg);

	display: inline-flex;
	align-items: center;
	justify-content: center;

	position: relative;

	transition:
	color .4s var(--easeInSine),
	background-color .4s  var(--easeInSine)
	;
}
/* ホバー */
.searchform div #searchsubmit:hover{
	color: var(--c-main);
	background-color: var(--c-white);
}
/*-------------------------------*/

/* Smartphone 559px */

/*------------------------------*/
@media(max-width:559px){
	/* インプット */
	.searchform div #s{
		width: 400px;
		max-width: 100%;
	}
	/* 検索ボタン */
	.searchform div #searchsubmit{
		margin-top: 1em;
		width: 100%;
	}
}/*Smartphone END*/


/*=========================================================*/

/* テーマ別ブログ一覧 category.php */

/*=========================================================*/
/* コンテナ */
#category-blog.content__fx-wrapper{
	margin-top: var(--mp-tb-xl);
}
/* カテゴリーヘディング */
#category-blog-list .wp-block-heading{
	width: 100%;
    padding-bottom: 0.3em;
    margin-bottom: 0.5em;
    border-bottom: solid 1px var(--c-gray);
}
#category-blog-list .wp-block-heading a{
	display: inline-block;
    font-size: var(--txt-md);
    font-family: "Noto Serif JP", serif;
    font-optical-sizing: auto;
    font-weight: 700;
    color: var(--c-link);

	transition: color .4s var(--easeInSine);
}
#category-blog-list .wp-block-heading a + a{
	margin-left: 0.5em;
}
/* ホバー */
#category-blog-list .wp-block-heading a:hover{
	color: var(--c-link--hover);
}
/* アイテム */
#category-blog-list.blog__all-list li:first-of-type{
	margin-top: 1em;
}
#category-blog-list.blog__all-list li.post-all{
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 1em;
}
#category-blog-list.blog__all-list li.post-all + .post-all{
	margin-top: 1em;
}
/* サムネ */
#category-blog-list.blog__all-list li .ph-asp{
	width: 40%;
}
#category-blog-list.blog__all-list li .ph-asp > a{
	transition: opacity .4s var(--easeInSine);
}
#category-blog-list.blog__all-list li .ph-asp > a:hover{
	opacity: 0.5;
}
/* テキスト */
#category-blog-list.blog__all-list li .blog__txt-wrapper{
	width: calc(60% - 1em);
}
#category-blog-list.blog__all-list li .blog__txt-wrapper .post-heading{
	display: inline-block;
    margin-top: 1em;
	padding-left: 0.5em;
    border-left: solid 4px var(--c-main);
    color: var(--c-main);
    font-size: var(--txt-md);
    font-weight: 700;
    font-family: "Noto Serif JP", serif;
    font-optical-sizing: auto;
    transition: color .4s var(--easeInSine);
}
#category-blog-list.blog__all-list li .blog__txt-wrapper .post-heading:hover{
	color: var(--c-main-soft);
}
/*-------------------------------*/

/* Smartphone 559px */

/*------------------------------*/
@media(max-width:559px){
	/* アイテム */
	#category-blog-list.blog__all-list li.post-all{
		flex-direction: column;
	}
	/* サムネ */
	#category-blog-list.blog__all-list li .ph-asp{
		width: 100%;
	}
	/* テキスト */
	#category-blog-list.blog__all-list li .blog__txt-wrapper{
		width: 100%;
	}
}/*Smartphone END*/



/*=========================================================*/

/* 投稿年別ブログ一覧 date.php */

/*=========================================================*/
/* カテゴリー */
#date-list .post-all p.post-category a {
    display: inline-block;
    height: auto;
	width: auto;
    box-sizing: border-box;
}
#date-list .post-all p > img{
	width: 100%;
	height: auto;
	padding: 1em;
}



/*=========================================================*/

/* 個別ブログ single.php */

/*=========================================================*/
#single-post.content__fx-wrapper{
	margin-top: var(--mp-tb-xl);
}
#single-post .all-blog__inner .post-all{
	width: 70%;
	height: fit-content;
}
/* ヘディング */
#single-post .all-blog__inner .post-all .post-heading{
	display: block;
	margin-top: 1em;
	margin-bottom: 1em;
	padding-left: 0.5em;
    border-left: solid 4px var(--c-main);
	color: var(--c-main);
	font-size: var(--txt-lg);
	font-weight: 700;
	font-family: "Noto Serif JP", serif;
	font-optical-sizing: auto;
}
/*-------------------------------*/

/* Smartphone 559px */

/*------------------------------*/
@media(max-width:559px){
	#single-post .all-blog__inner .post-all{
		width: 100%;
	}
}/*Smartphone END*/



/*-------------------------------*/

/* 記事本文内の長い英数・URL・パス対策 */

/*------------------------------*/
.post-content a,
.post-content span a,
.post-content .wp-block-file__textlink,
.post-content p,
.post-content li,
.post-content dd,
.post-content blockquote {
  overflow-wrap: anywhere;     /* 任意位置で折り返す */
  word-break: normal;          /* 既定の単語境界は維持 */
  word-wrap: break-word;       /* 古いブラウザ向けのフォールバック */
}
.post-all a,
.post-all span a,
.post-all .wp-block-file__textlink,
.post-all p,
.post-all li,
.post-all dd,
.post-all blockquote {
  overflow-wrap: anywhere;     /* 任意位置で折り返す */
  word-break: normal;          /* 既定の単語境界は維持 */
  word-wrap: break-word;       /* 古いブラウザ向けのフォールバック */
}
/* 記事中の画像を親幅内に収める */
.post-content img,
.post-content figure img,
.post-all img,
.post-all figure img {
  display: block;        /* 行内隙間を消してレイアウト安定 */
  max-width: 100%;       /* 親幅を超えない */
}
/*-------------------------------*/

/* 記事本文内の画像はみ出し対策 */

/*------------------------------*/
/* キャプション付き画像（旧/新WPどちらも） */
.post-content .wp-caption,
.post-all .wp-caption,
.post-content .wp-block-image,
.post-all .wp-block-image {
  max-width: 100%;
}
/* ギャラリーや埋め込み媒体もはみ出さないように */
.post-content iframe,
.post-content video,
.post-content embed,
.post-content object,
.post-all iframe,
.post-all video,
.post-all embed,
.post-all object {
  max-width: 100%;
}
/* p直下（またはa経由）にある画像を親幅内に収める */
.post-content p > img,
.post-content p > a > img,
.post-all p > img,
.post-all p > a > img {
  max-width: 100%;
  display: block;          /* ベースラインの余白を消して安定 */
  margin: 1em auto;      /* お好みで中央寄せ＆下余白 */
  box-sizing: border-box;
}
/* 画像だけが入っているpの行間つぶし（対応ブラウザなら） */
.post-content p:has(> img:only-child),
.post-content p:has(> a:only-child > img:only-child),
.post-all p:has(> img:only-child),
.post-all p:has(> a:only-child > img:only-child) {
  line-height: 0;
}
/*-------------------------------*/

/* WP zoom ウィジェットのボタン */

/*------------------------------*/
#articles-insta .wpz-button{
	display: flex;
    align-items: center;
    justify-content: center;
    gap: 6px;

	width: 280px !important;
	max-width: 100% !important;
	height: 48px !important;

    cursor: pointer;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;
    font-size: var(--txt-md);
    font-weight: 500;
    text-decoration: none;
    text-transform: none;
    letter-spacing: normal;
    line-height: 18px;
    color: #fff;
    background-color: var(--c-bk-strong);
    padding: 8px 12px;
    border: solid 1px var(--c-bk-strong) !important;
    border-radius: 0 !important;
    margin: 2em auto !important;
    transition: all .4s var(--easeInOutSine) !important;
}
/*-------------------------------*/

/* WP zoom ウィジェットのグリッド */

/*------------------------------*/
/* アイテム */
#articles-insta .zoom-instagram-widget__items{
	display: grid !important;
    grid-template-columns: repeat(3, 1fr) !important;
}
/*-------------------------------*/

/* Tablet 959px */

/*------------------------------*/
@media(max-width: 959px){
	/* アイテム */
	#articles-insta .zoom-instagram-widget__items{
		grid-template-columns: repeat(2, 1fr) !important;
	}
}/*Tablet END*/
/*-------------------------------*/

/* Smartphone 559px */

/*------------------------------*/
@media(max-width:559px){
	#articles-insta .zoom-instagram-widget__items{
		grid-template-columns: repeat(1, 1fr) !important;
	}
}/*Smartphone END*/