/*
Theme Name: OG3.6
Author: WATANABE Takeshi
Version: 3.6

@media screen and (max-width:980px) {}
@media screen and (max-width:768px) {}
@media screen and (max-width:480px) {}
*/

:root {
	--base:		#fffffe; /* 70% */
	--main:		#ee8800; /* 25% */
	--sub:		#fdefde; /* 明るめ */
	--blue: #3375cc;/* テキストリンク */
	--red: #ff6666;/* バッジ */
	--orange: #ff8a00;/* バッジ */
	--accent:	#ee8800; /* 5% */
	--gray:		#f7f7f7;
	--text:		#333333;
	--subtext:#666666;/* 補足テキスト・ターシャリボタン */
	--link:		#3278c8;
	--box:   rgb(255 255 255 / 0.7);/* ボックスの背景 */
	--border:	#dcd9d9;
	--radius:	8px;
	--shadow: 0px 4px 8px 0px rgb(0 0 0 / 50%); /* 下方にドロップシャドウ */
	--shadow2: 0 0 32px rgb(0 0 0 / 10%); /* 均等に拡散 */
}
.basecolor	{background-color: var(--base);}
.maincolor	{background-color: var(--main);}
.subcolor	{background-color: var(--sub);}
.accentcolor{background-color: var(--accent);}
.graycolor	{background-color: var(--gray);}
.textcolor	{color: var(--text);}
.linkcolor	{color: var(--link);}

.color_base		{color: var(--base);}
.color_main		{color: var(--main);}
.color_sub		{color: var(--sub);}
.color_accent	{color: var(--accent);}
.color_gray		{color: var(--gray);}
.color_text		{color: var(--text);}
.color_link		{color: var(--link);}

.bg_base		{background-color: var(--base);}
.bg_main		{background-color: var(--main);}
.bg_sub			{background-color: var(--sub);}
.bg_accent		{background-color: var(--accent);}
.bg_gray		{background-color: var(--gray);}

.radius		{border-radius: var(--radius);}

/* Color Setting
-------------------------------------------------------------- */
.maincolor		{color: #ee8800;color:rgba(238,136,0,.9);}
.textcolor,
.textcolor a	{color: #474747;}
.textcolor:hover{text-decoration: none;}
.linkcolor		{color: #6699c4;}
.headingcolor	{color: #474747;}
.bordercolor	{border: solid 1px #e3e3e3;}
.bgcolor		{background-color: #f1f1f1;}

/* Class Override
-------------------------------------------------------------- */
/* リンク色を「.entry-content a」などで指定するとエントリ内にボタンなどのA要素があったときにコントロールしにくい */
a {
	color: #3278c8;
}
a:hover,a:active {
	text-decoration: underline;
}
.archive-grid a,
.archives-text a,
.footer-item-list a,
.archives_cols a,
footer a{
	color: #474747;
}
.archive-grid a:hover,
.archives-text a:hover,
.footer-item-list a:hover,
.archives_cols a:hover,
footer a:hover{
	text-decoration: none;
}

main ul.flex{
	margin-top: 1rem;
}
main ul.flex li figure{
	margin-top: 0rem;
}

/* a.btn {
	color:#ee8800;
	border:solid 1px #ee8800;
	border-radius: 4px;
}
a.btn:hover {
	color:#fff;
	background:#ee8800;
}
a.btn.invert {
	background:#ee8800;
	border:solid 1px #ee8800;
}
a.btn.invert:hover,
a.btn.white:hover {
		color:#ee8800;
} */
table tr{
	font-size: 0.9em;
	border-bottom: solid 1px var(--border);
}
table tr:first-child{
	border-top: solid 1px var(--border);
}
table th{
	background-color: var(--sub); /* must for sticky */
	background-color: var(--gray); /* must for sticky */
}
table tbody th{
	min-width: 100px;
}
hr.hr:after {
	background: #ee8800;
}
#pagenation .page-numbers{
	border:solid 1px #ee8800;
}
#pagenation a{
	color:#ee8800;
}
#pagenation a:hover,
#pagenation .current {
	background-color: #ee8800;
}
.icon{
	background-color: #ee8800;
}
/* .totop {
    bottom: 50px;
} */
.sns-icons{
	gap: 8px;
	justify-content: flex-start;
}

/* チャットボット
-------------------------------------------------------------- */
#chatplusview img:not([alt]),
#chatplusview img[alt=""] {
    outline: 0px solid gold;
}
.page-id-6538 #chatplusview,
.page-id-2 #chatplusview{
	display: none;
}

/* 日付部分
-------------------------------------------------------------- */
.postdate{
	color:#999;
	font-size: 0.85em;
}
.postdate:before{/* 日付部分 */
	content: "\f017";/* 時計 */
	content: "\f040";/* 鉛筆 背景なし */
	font-family: FontAwesome;
	font-weight: normal;
	font-style: normal;
	display: inline-block;
	padding-right: 5px;
}


/* パンくずリスト
-------------------------------------------------------------- */
.breadcrumbs{
	padding: 10px 0;
	font-size: 0.75em;
	background-color: var(--sub);
}
.breadcrumbs span[typeof="ListItem"]{
	margin: 0 8px;
}
.breadcrumbs span[typeof="ListItem"]:first-of-type{
	margin-left: 0;
}
.breadcrumbs a{
	color: var(--text);
	opacity: .5;
}
.breadcrumbs a:hover{
	text-decoration: underline;
}

/* ページネイション
-------------------------------------------------------------- */
#pagenation{
    margin-top: 1em;
    font-size: 0.8em;
    font-weight: 600;
}
#pagenation .page-numbers{
    display: inline-block;
    margin: 0 8px 8px 0;
    width: 40px;
    height: 40px;
    line-height: 40px;
    text-align: center;
    background-color:#fff;
    border:solid 1px #ee8800;
}
#pagenation .prev,
#pagenation .next{
    width: 64px;
    height: 40px;
}
#pagenation a{
    color:#ee8800;
}
#pagenation a:hover,
#pagenation .current {
	text-decoration: none;
    background-color: #ee8800;
    color:#fff;
}

/* = メールフォーム（問い合わせ＆見積もりフォーム）
-------------------------------------------------------------- */
#mailform{
	position: relative;
}
#mailform table th{
	white-space: nowrap;
	width: 200px;
}
#mailform .must	{
	color:#ff6666;
	padding-left: 5px;
	font-size:0.8em;
	font-weight:normal;
}
#mailform .flex{ /* テキストのみの選択項目 */
	margin: 0 0 0 -32px!important;
	flex-basis:100%!important;
}
#mailform .flex	div.option-text{ /* テキストのみの選択項目 */
	margin: 0 0 0 32px!important;
	flex-basis:100%!important;
}
#mailform .flex	div.option-img{ /* 画像を含む選択項目 */
	margin: 0 0 32px 32px!important;
	flex-basis:calc(33.33% - 32px)!important;
}
#mailform .flex	div.option-img img{
	margin:0 0 5px!important;
	display: block;
	width: 100%;
}
@media screen and (max-width:480px) {
	#mailform table,
	#mailform table caption,
	#mailform table thead,
	#mailform table tbody,
	#mailform table tr,
	#mailform table th,
	#mailform table td{
		display: block;
		width: 100%;
		margin: 0;
		padding: 0;
		border: none;
		background: none;
	}
	#mailform table th{
		padding-top: 30px;
		margin-bottom: 10px;
		font-weight: bold;
	}
	#mailform table td{
		padding-bottom: 30px;
		border-bottom: solid 1px #ddd;

	}
}

/* 商品ページの見積もりボタン固定表示 */
@media screen and (max-width:959px) {
	#btn_mtmr{
		/* position: fixed;
    	bottom: 30px;
		left: 0;
		width: 100%;
		padding: 20px; */
		/* margin-top: 1rem; */
		/* display: none; */
	}
	#btn_mtmr button.btn{
		/* box-shadow: 0 0px 10px rgba(0,0,0,.2); */
		/* padding: 0.5em 2em; */
	}
}


/* ボタン
-------------------------------------------------------------- */
/* a.btn_mtxx{
	position: relative;
	line-height: 1.0;
	display: inline-block;
	padding: 16px 40px;
	font-weight: bold;
	transition:0.2s ease;
	z-index: 1;
	text-align: center;
    border-radius: 5px;
    color: #ffffff;
    box-shadow: 0 3px 0 0 #52C11F, 0 4px 4px -1px rgba(0, 0, 0, 0.6), 0 4px 6px 1px rgba(0, 0, 0, 0.3), 0 1px 2px 1px transparent inset, 0 18px 32px -2px rgba(255, 255, 255, 0.1) inset;
    background-color: #52C11F;
    background-image: linear-gradient(rgba(0,0,0,.0), rgba(0,0,0,.5));
    background-image: linear-gradient(rgba(255,255,255,.5), rgba(255,255,255,.0));
}
a.btn_mtxx:hover{
	text-decoration: none;
    background-image: linear-gradient(-45deg, #0B44EF, #007dfa);
} */


/* Container
-------------------------------------------------------------- */
html {
	overflow-y: scroll;
	scroll-behavior: smooth;
}
body {
	background-color: var(--base);
	color: var(--text);
	font-size: 17px;
	font-family: "Helvetica Neue","Segoe UI","Hiragino Kaku Gothic ProN",メイリオ,Meiryo,arial,sans-serif;
}
/* body.category {
	background-color: #fdfdfd;
} */
#page{
	width: 100%;
}
#content{
	padding-bottom: 100px;
}
.home #content{
	padding-bottom: 0px;
}
.container{
	width: 940px;
	width: 960px;
	margin-left: auto;
	margin-right: auto;
}
.container_mid{
	width: 640px;
	margin-left: auto;
	margin-right: auto;
}
.container_full{
	width: calc(100% - 64px);
	margin-left: auto;
	margin-right: auto;
}
#sidebar{
	width: 260px;
	border: solid 1px green;
}
@media screen and (max-width:959px) {
	.container,
	.container_mid{
		width: calc(100% - 64px);
		max-width: 640px;
	}
	main #sidebar{
		max-width: initial;
		padding-left: 0;
	}
	#sidebar{
		width: 100%;
		margin-top: 80px;
	}
}


/* ヘッダ
-------------------------------------------------------------- */
header{
	width: 100%;
	color: var(--main);
	background-color: #fff;
	border-top:solid 6px var(--main);
}
header #header-wrap{
	display: flex;
	flex-wrap: nowrap; /* 子要素を折り返えさない */
	height: 80px;
	align-items: center;
	justify-content: space-between;
}
header #header-wrap > div{
	/*border:solid 1px red;*/
}
header #header-logo{
	flex-basis: 290px;
	flex: 0 1 auto;
}
header #header-logo img{
	display: block;
	max-width:240px;
	/*height: 80px;*/
}
header #header-nav-wrap {
	flex: 1 1 auto;
	padding: 0 0px;
	/*font-size: 0.9em;*/
	/*border:solid 1px blue;*/
}
header #header-text{
	flex: 1 1 auto;
	padding: 0 20px;
	line-height: 20px;
	font-weight: bold;
	color: #474747;
	/*border:solid 1px silver;*/
}
header #header-text .header-text-title{
	font-size: 1.2em;
}
header #header-text .header-text-description{
	font-size: 0.85em;
	opacity:0.6;
}
header #header-info{
	flex: 0 1 auto; /* flex-grow flex-shrink flex-basis */
	text-align: center;
}
header #header-info .tel{
	color:#ee8800;
	line-height: 1.2;
	text-align: right;
}
.contact_bnn { /* 問い合わせバナー */
	text-align: center;
	padding: 8px;
	background-color: #fafafa;
	background-color: #ffffff;
	z-index: 9;
	font-weight: bold;
	margin-bottom: 20px;
	/*color: #ee8800;*/
	border:solid 1px #bbb;
	border:solid 3px #ee8800;
	/*border-radius: 4px;*/
}
.contact_btn a{ /* 問い合わせボタン */
	display: block;
	padding: 6px 16px;
	background-color: #ff8a00;
	background-color: #ee8800;
	color: #fff!important;
	text-align: center;
	text-decoration: none!important;
	font-weight: bold;
	border-radius: 4px;
}
.contact_btn a:hover{
	opacity: 0.7;
}
/*.contact_btn a:before{
	content: "\f0e0";
	font-family: FontAwesome;
	font-weight: normal;
	font-style: normal;
	display: inline-block;
	padding: 0 7px 0 0;
	opacity: 1;
}*/

@media screen and (max-width:980px) {
	header #header-info{
		display: block;
		display: none;
		width: calc(100% - 20px);
		padding: 10px;
		position: fixed;
		left: 0;
		bottom: 0;
		background: #fff;
		z-index: 9;
	}
}

/* ナビゲーション
-------------------------------------------------------------- */
header #site-navigation {
	/*background-color: #ffffff;*/
}
header #site-navigation ul{
	display: flex; /* IE10以上 */
	    gap: 16px;

	flex-wrap: nowrap; /* 子要素を折り返えさない */
	justify-content: flex-end; /* 右揃え */
	/* justify-content: center; */ /* 中央揃え */
	    align-items: center;

}
header #site-navigation ul li:not(:last-child){ /*区切り線*/
	/* border-right:solid 1px rgba(0,0,0,.3); */
}
header #site-navigation ul li{
	flex: 0 1 auto;
	line-height: 1;
}
header ul li a{
	display: block;
	/* padding: 0px 10px; */
	font-size: 0.85em;
	font-size: 0.80em;
	font-weight: bold;
	color: #474747;
}
header #site-navigation ul li a[title]:after{
	content: attr(title);
	display: block;
	font-size: 0.8em;
	font-weight: bold;
	opacity: 0.4;
	display: none;
}
header ul li a:hover,
header ul li.current-menu-item a{
	background-color:rgba(255,255,255,.3);
}
header #site-navigation ul li.current-menu-item a:hover{
	cursor:default;
}
/* header #site-navigation input,
header #site-navigation label{
	display: none;
} */
@media screen and (max-width:980px) {
	#site-navigation {
		padding: 0;
		border-top: none;
	}
	/* ハンバーガアイコン */
	#site-navigation .menu-trigger,
	#site-navigation .menu-trigger span {
		transition: .5s;
		box-sizing: border-box;
	}
	#site-navigation .menu-trigger {
		display: block;
		position: relative;
		width: 18px;
		height: 16px;
		margin: 0 auto 0;
		margin: 0 0 0 auto; /* 右寄せ */
	}
	#site-navigation .menu-trigger span { /* バー */
		display: inline-block;
		position: absolute;
		left: 0;
		width: 100%;
		height: 2px;
		background-color: #ee8800;
		border-radius: 4px;
	}
	.scrolled #site-navigation .menu-trigger span { /* バー */
		/*background-color: #676767;*/
		/*background-color: #fff;*/
	}
	#site-navigation .menu-trigger span:nth-of-type(1) {top: 0;}
	#site-navigation .menu-trigger span:nth-of-type(2) {top: calc(16px / 2 - 1px);}
	#site-navigation .menu-trigger span:nth-of-type(3) {top: calc(16px - 2px);}
	#site-navigation .menu-trigger.active span:nth-of-type(1) {transform: translateY(7px) rotate(-45deg);}
	#site-navigation .menu-trigger.active span:nth-of-type(2) {opacity: 0;}
	#site-navigation .menu-trigger.active span:nth-of-type(3) {transform: translateY(-7px) rotate(45deg);}

	#site-navigation .menu-items > ul{/* メニュー・クローズ時 */
		position: absolute;
		top: 80px; /* = header height */
		right: 0;
		display: block;
		width: 100%;
		height: 0px;
		padding: 0;
		border: none;
		overflow: hidden;
		transition: .5s;
		opacity: 0;
	}
	#site-navigation .menu-trigger.active + .menu-items > ul {/* メニュー・アクティブ時 */
		height: auto;
		height: calc(100vh - 80px - 30px - 40px); /* = header height , padding */
		padding: 30px;
		opacity: 1;
		background-color:rgba(0,0,0,.5);
		background-color:rgba(255,255,255,.95);
		box-shadow: 0 3px 10px rgba(0,0,0,0.2);
		transition: .5s;
		z-index: 99;
	}
	.scrolled #site-navigation .menu-trigger.active + .menu-items > ul {/* メニュー・アクティブ時・スクロール時 */
	    /*background-color:rgba(255,255,255,.9);*/
	}

	#site-navigation .menu-items > ul li{
		display: block;
		padding: 1em 0;
		/* text-align: center; */
		border: none;
	}
}


/* フッタ
-------------------------------------------------------------- */
footer {
	background-color: var(--gray);
	background-color: var(--sub);
	font-size: 0.75em;
}
footer .container{
	padding: 60px 0;

}
footer h2{
	padding-bottom: 8px;
	font-weight: bold;
	font-size: 1rem;
	border-bottom: solid 1px var(--border);
	border-bottom: solid 1px var(--main);
}
footer h3{
	margin-top: 24px;
	margin-bottom: 8px;
	font-size: .9rem;
	font-weight: bold;
}
footer nav{
	margin: 0;
}
footer nav a:hover{
	text-decoration: underline;
}
footer nav ul li a:hover{
	opacity: 0.5;
}
footer nav ul li a:before{
	display: none;
	content: "\f105";/* angle-right */
	font-family: "Font Awesome 5 Free";
	font-style: normal;
	font-variant: normal;
	font-weight: bold;
	text-rendering: auto;
	padding-right: 6px;
}
footer #footer-logo{
	margin: 0 0 1em;
}

footer #copyright{
	color: #fff;
	background-color: #ee8800;
	padding: 20px;
	margin-top: 1em;
	font-size: 0.8em;
	font-weight: bold;
	text-align: center;
}

@media screen and (max-width:768px) {
	footer {
		font-size: 1em;
	}
	footer #footer-logo{
		margin: 3em 0 0;
	}
	footer #copyright{
		margin-top: 2em;
		text-align: center;
	}

}

#sidebar{
	/* position: relative;
	font-size: 0.9em;
	font-size: 0.85em; */
	background-color:#f1f1f1;
}
#sidebar .sidenav{
	margin: 0 0 20px;
	/*box-shadow: 0 3px 10px rgba(0,0,0,.05);*/
	/*border: solid 1px #e3e3e3;*/
}
#sidebar h2{
	margin-bottom: 10px;
	padding: 8px 8px;
	background-color: #f1f1f1;
	color: #333;
	font-size: 0.9em;
	/*text-align: center;*/
	/*border-top: solid 1px #333;*/
	/*border-bottom: solid 1px #333;*/
}
#sidebar h2:not(:first-child) {
	margin-top: 4em;
}
#sidebar h2:before {
	content: "\f0d7";
	font-family: "Font Awesome 5 Free";
	font-style: normal;
	font-variant: normal;
	font-weight: bold;
	text-rendering: auto;
	padding-right: 8px;
}

#sidebar ul.tn-list{
	font-weight: bold;
	font-size: 0.95rem;
	border-top: solid 1px #e3e3e3;
}
#sidebar ul.tn-list li{
	border-bottom: solid 1px #e3e3e3;
}
#sidebar ul.tn-list li{
	/* padding-top: 0px; */
}
#sidebar ul.tn-list li a{
	display: block;
	line-height: 1.4;
	padding: 4px 0;
}
#sidebar ul.tn-list li a{
	display: flex;
	flex-wrap: nowrap; /* 子要素を折り返えさない（デフォルト） */
	align-items: center; /* 「中央揃え」です */
}
#sidebar ul.tn-list li a:hover{
	opacity: 0.5;
}
#sidebar ul.tn-list li .img{
	flex-basis: 40px;
	flex-shrink: 0;
	margin-right: 12px;
}
#sidebar ul.tn-list li .img img{
	display: block;
	width: 40px;
}


.footer-item-list ul.tn-list{
	/* font-weight: bold; */
	font-size: 0.8em;
	/* border-top: solid 1px #e3e3e3; */
}
.footer-item-list ul.tn-list li{
	border-bottom: solid 1px #e3e3e3;
}
.footer-item-list ul.tn-list li{
	/* padding-top: 0px; */
}
.footer-item-list ul.tn-list li a{
	display: block;
	line-height: 1.4;
	padding: 4px 0;
}
.footer-item-list ul.tn-list li a{
	display: flex;
	flex-wrap: nowrap; /* 子要素を折り返えさない（デフォルト） */
	align-items: center; /* 「中央揃え」です */
}
.footer-item-list ul.tn-list li a:hover{
	opacity: 0.5;
}
.footer-item-list ul.tn-list li .img{
	flex-basis: 30px;
	flex-shrink: 0;
	margin-right: 12px;
}
.footer-item-list ul.tn-list li .img img{
	display: block;
	width: 30px;
}

#footer-contact{
	text-align:center;
	background:url("images/footer-contact.jpg") no-repeat center bottom;
	background-size:cover;
}
#footer-contact .blackscreen{
	padding: 6em 0;
	background-color:rgba(0,0,0,0.2);
	background-color:#ebe9d6;/*Accent*/
}
#footer-contact h2.heading-center{
	color: #474747;/*Text*/
}
#footer-contact .number{
	font-size: 1.2em;
	margin-bottom: 1.2em;
}
#footer-contact .number div{
	display: inline-block;
	padding: 0 0.4em;
}

#footer-contact .number .tel:after{
/*	content: "｜";
	font-family: FontAwesome;
	font-weight: normal;
	font-style: normal;
	display: inline-block;
	padding: 0 6px;*/
}


/* = ページタイトル（共通）
-------------------------------------------------------------- */

 /* トップページのタイトル*/
.heading-center{ /* 日本語 */
	text-align: center;
	font-size: 1.8em;
	font-weight: bold;
	font-feature-settings : "palt";/*自動カーニング*/
	color: #ee8800;
	/*color: #474747;*/
	/*border:solid 1px blue;*/
}
.heading-center:before{ /* 英字 */
	content: attr(title);
	display: block;
	display: none;
	margin-bottom: 5px;
	line-height: 1;
    font-feature-settings : "palt";/*自動カーニング*/
	font-size: 18px;
	font-family: "游明朝","Yu Mincho","游明朝体","YuMincho","ヒラギノ明朝 Pro W3","Hiragino Mincho Pro","HiraMinProN-W3","HGS明朝E","ＭＳ Ｐ明朝","MS PMincho",serif;
}

/* アーカイブページのタイトル */
.heading-archive{
	/* padding: 0 0 0.8em;
	margin: 0 0 1em; */
    /*border-bottom: solid 1px #ee8800;*/
}
.heading-archive h1{
	text-align: center;
    font-feature-settings : "palt";/*自動カーニング*/
	font-size: 1.6em;
	font-weight: bold;
	margin: 0;
}
.archive-meta{ /*カテゴリの説明文*/
	padding: 10px 0;
	font-size: 0.9em;
	text-align: center;
}

/* 固定ページのタイトル */
.heading-page{
	text-align: center;
}
.heading-page{
    position: relative;
    /*border-bottom: solid 1px #ee8800;*/
	margin-bottom:1em;
}
.heading-page h1{
	margin: 0px 0 10px;
	line-height:1.4;
	font-size: 1.6em;
	font-weight: bold;
}

/* タイトル下のアンダーライン */
.heading-center:after,
.heading-archive:after,
.heading-page:after{
    content: '';
    display: block;
    width: 60px;
    height: 6px;
    margin: 1em auto 2em;
    background: #ee8800;
    border-radius: 10px;
    opacity: 0.8;
}
.heading-center:after{
    margin: 0.5em auto 1em;
}

/* シングルページ */
.heading-single{
    position: relative;
    /* padding: 10px 0 10px 24px; */
	margin: 2em 0;
}
.heading-single h1{
	position: relative;
	padding-bottom: .8em;
	border-bottom: solid 3px rgb(255,153,0,.4);
	line-height:1.4;
	font-weight: bold;
}
.heading-single h1:before{
	position: absolute;
	bottom: -3px;
	width: 22%;
	content: " ";
	display: block;
	border-bottom: solid 3px rgb(255,153,0,1);
}


/* = アーカイブページ（カテゴリアーカイブ、日付アーカイブ、タグアーカイブ、シングルページの関連記事）
-------------------------------------------------------------- */
.cat-children-nav{
	margin-bottom: 40px;
}

.archive-grid{
	font-size: 0.9em;
}
.archive-grid article{
	position: relative;
	transition: .2s;
	border: solid 1px #e3e3e3;
	background: #ffffff;
	box-shadow: 0 3px 5px rgba(0,0,0,.05);
}
.archive-grid article:hover{
	transform: translateY(-3px);
	box-shadow: 0 12px 12px -6px rgba(0,0,0,.1);
	box-shadow: 0px 3px 12px 3px rgba(0, 0, 0, 0.08);
}
.archive-grid .img img{
	display: block;
}
.archive-grid .text{
	padding: 20px;
}
.archive-grid .text h2,
.archive-grid .text h3{
	font-weight: bold;
	font-size: 1rem;
	margin-top: 0;
}
.archive-grid a:hover .img img{
}
.archive-grid time{
	font-size: 0.8em;
	opacity: 0.5;
}


.archives-item{ /*商品カテゴリ*/
	border-bottom:solid 1px #e3e3e3;
	padding: 2em 0;
}

/*サムネイル付きリスト*/
.archives-tn article{
	position: relative;
	transition: .2s;
	border: solid 1px #e3e3e3;
	background: #ffffff;
	box-shadow: 0 3px 5px rgba(0,0,0,.05);
	/* margin-bottom: 20px; */
}
.archives-tn article:hover{
	opacity: 0.8;
	transform: translateY(-3px);
	box-shadow: 0px 3px 12px 3px rgba(0, 0, 0, 0.08);
}
.archives-tn a,
.archives-tn img{
	display: block;
	text-decoration: none!important;
}
.archives-tn .flex{
	align-items: center;
}
.archives-tn .flex .text,
.archives-tn .flex .img{
	margin-bottom: 0;
}
.archives-tn .text{
	padding-right: 24px;
}
.archives-tn .text .title{
	font-size: 1.0em;
	font-weight: bold;
	color: #474747;
}
.archives-tn .text p{
	font-size: 0.9em;
}
@media screen and (max-width:768px) {
	.archives-tn .text{
		/*padding: 24px;*/
	}
}


.archives-text{ /*テキストのみのリスト*/
	/* font-size: 0.9em; */
	/*border-top:solid 1px #e3e3e3;*/
}
.archives-text article{
	position: relative;
	border-bottom:solid 1px #e3e3e3;
	/* margin-bottom: 10px; */
}
.archives-text article a{
	display: block;
	padding: 12px 2px;
	/* background-color: rgba(0,0,0,.05); */
}
.archives-text article a:hover,
.archives-text article a.current,
.archives-text article a.current:hover{
	background-color: rgba(0,0,0,.1);
}
.archives-text h2,
.archives-text h3{
	margin: 0;
	font-size: 1rem;
}
.archives-text time{
	display: block;
	font-size: 0.9em;
	opacity: 0.5;
}


/* = シングルページ・固定ページ
-------------------------------------------------------------- */
.box_wrap{
	display: flex;
	justify-content: space-between;
	margin-bottom: 4em;
}
.left_box,
.right_box{
	margin-bottom: 2em;
	/* border: solid 1px blue; */
}
.left_box{
	width: 640px;
	/* border: solid 1px red; */
}
.left_box p:last-child{
	margin-bottom: 0; /* left_box内の最後のpは下余白なし */
}
.right_box{
	width: auto;
	width: 260px;
}
.right_box .sticky{
	top: 20px;
	/* padding: 20px; */
	/* text-align: right; */
	/* fix bottom */
	/* display: flex;
	align-items: flex-end;
	justify-content: flex-end;
	top: 0px;
	height: calc(100vh - 20px);
	border: solid 1px blue; */
}
@media screen and (max-width:959px) {
	.box_wrap{
		display: block;
	}
	.left_box,
	.right_box{
		width: 100%;
	}
	.right_box .sticky{
		padding: 1em 0;
		text-align: left;
	}
}

.entry-content img {
    display: inline-block;
    box-shadow: none;
	border: solid 1px var(--border);
}
.heading1{
	position: relative;
	margin: 1.6em 0;
	padding-bottom: .4em;
	border-bottom: solid 3px var(--sub);
	line-height:1.4;
	font-weight: bold;
}
.heading1:before{
	position: absolute;
	bottom: -3px;
	width: 22%;
	content: " ";
	display: block;
	border-bottom: solid 3px var(--main);
}
.entry-content h2,
.heading2{
	/* margin: 4em 0 0.8em; */
	padding: 0 0 0.4em;
	border-bottom: solid 3px var(--main);
	font-weight: bold;
	/* font-size: 1.4em; */
}
.entry-content h3,
.heading3{
	/* margin: 2em 0 0.4em; */
	padding: 0 0 0 10px;
	border-left: solid 4px var(--main);
	font-weight: bold;
	/* font-size: 1.1em; */
}
.entry-content h4,
.heading4{
	font-size: 1.2em;
	font-weight: bold;
}
.entry-content .flex > div > h2,
.entry-content .flex > div > h3,
.entry-content h2:first-child /* 記事がh2で始まる場合 */
/* .entry-content h2 + h3 */{ /* h2直後のh3 */
	margin-top: 0;
}

dl.side_list{
	padding: 20px;
	background-color: var(--sub);
	font-size: 0.9em;
	border-radius: 10px;
	margin-top: 0;
	max-height: calc(100vh - 132px);
	overflow-y: auto;
	/* border: solid 2px var(--main); */
}
dl.side_list dt{
	font-size: 0.8em;
}
dl.side_list dd{
	font-weight: bold;
	/* white-space: nowrap; */
    /* overflow-x: auto; */
}
dl.side_list dt:not(:first-child){
	margin-top: 1em;
}
dl.side_list dd .toc_widget_list{
 	/* overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap; */
			/* border: solid 1px green; */

}

.post-footer{
	margin: 2em 0 0;
	padding: 1em 0;
	border-top: solid 1px #e3e3e3;
	border-bottom: solid 1px #e3e3e3;
	font-size: 0.9em;
	text-align: right;
	opacity: 0.7;
}
.post-date {
	/*position: absolute;*/
	/*right: 0;*/
	/*bottom: 0px;*/
	/*text-align: right;*/
	/*text-align: center;*/
	/*font-size: 0.8em;*/
	/*font-weight: bold;*/
	/*margin-top: 1em;*/
	margin-left: 2px;
	/*margin-bottom: 1em;*/
	/*border:solid 1px blue;*/
}


.single	.navigation{/* ナビゲーション 前の記事／次の記事 */
	margin: 10px 0;
}
.single	.navigation .previous,
.single	.navigation .next{
	display:block;
	width:50%;
}
.single	.navigation .previous a,
.single	.navigation .next a{
	display: block;
	padding: 10px;
	text-align: center;
	font-size: 0.9em;
	background-color: #fff;
	background-color:rgba(255,255,255,0.9);/* 白透過 */
}
.single	.navigation .previous a{
	margin-right:5px;
}
.single	.navigation .next a{
	margin-left:5px;
}
.single	.navigation .previous a:hover,
.single	.navigation .next a:hover{
	background-color: #222;
}

/* 関連記事 */
.similar{
	margin-top: 8em;
	padding: 8%;
	background-color:#f1f1f1;
	/*font-size: 0.9em;*/
	/*border:solid 10px #eeeeee;*/
}
.similar h2{
	font-size: 1.2em;
	/*text-align:center;*/
	font-weight: bold;
	margin-bottom: 1em;
	padding-bottom: 10px;
    border-bottom:solid 1px #474747;
}


/* = トップページ
-------------------------------------------------------------- */
.home #aboutsite h1{
	text-align: center;
	margin-bottom: 0.5em;
	font-size: 1.6em;
}
.home #aboutsite h1 span{
	display: block;
}
.home #aboutsite p{
	/* font-weight: bold; */
}
@media screen and (max-width:768px) {
	.home #aboutsite h1{
		font-size: 1.2em;
	}
	.home #aboutsite p{
		font-weight: normal;
	}
}

.home #content section:not(:first-child){
	padding: 6em 0 0;
	padding: 3em 0 0;
	/*background-color: #f1f1f1;*/
}

.spec{
	text-align: center;
	margin-top: 10px;
}
.spec li{
	display: inline-block;
	background-color:rgba(0,0,0,.1);
	/*border:solid 1px #e3e3e3;*/
	padding: 4px 10px;
	margin: 10px 4px 0;
	font-size: 0.8em;
	/* font-weight: bold; */
	border-radius: 20px;
}
.home #support h2{
	margin-bottom: 1.2em;
	/*color: #fff;*/
}
.home #support p{
	/*font-weight: bold;*/
	/*color: #fff;*/
}


/* = よくある質問
-------------------------------------------------------------- */
h2.answer{
	font-size: 1.4em;
	font-weight: bold;
	margin-bottom: 1em;
    background:none;
}

h2.answer:before{
	content: "A.";
	display: inline-block;
	font-family: "游明朝","Yu Mincho","游明朝体","YuMincho","ヒラギノ明朝 Pro W3","Hiragino Mincho Pro","HiraMinProN-W3","HGS明朝E","ＭＳ Ｐ明朝","MS PMincho",serif;
    font-size: 2em;
    line-height: 1;
    font-weight: bold;
    color: #ee8800;/*Main*/
    padding-right: 0.4em;
}



/* = 印刷方法
-------------------------------------------------------------- */
.print-step h3{
	font-size: 1.4em;
	font-weight: bold;
}
.print-step > div h3:before{
	font-size: 2.0em;
	color: #ee8800;
	padding-right: 10px;
}

.print-step > div:nth-child(1) h3:before{content: "01.";}
.print-step > div:nth-child(2) h3:before{content: "02.";}
.print-step > div:nth-child(3) h3:before{content: "03.";}
.print-step > div:nth-child(4) h3:before{content: "04.";}
.print-step > div:nth-child(5) h3:before{content: "05.";}
.print-step > div:nth-child(6) h3:before{content: "06.";}
.print-step > div:nth-child(7) h3:before{content: "07.";}
.print-step > div:nth-child(8) h3:before{content: "08.";}
.print-step > div:nth-child(9) h3:before{content: "09.";}


/* = 商品ページ（商品スペック）
-------------------------------------------------------------- */

.item-spec dl{
	display:flex;
	flex-wrap: wrap;
	border: solid 1px rgba(0,0,0,.1);
	border-top: none;
	font-size: 0.9em;
}
.item-spec dl dt,
.item-spec dl dd{
	margin: 0;
	padding: 10px;
	line-height:1.5;
	vertical-align:middle;
	box-sizing: border-box;
}
.item-spec dl dt{
	width: 30%;
	margin-top: 0;
	background-color: rgba(0,0,0,.05);
	border-top: solid 1px rgba(0,0,0,.1);
	font-weight: normal;
}
.item-spec dl dd{
	width: 70%;
	background: #fff;
	border-left: solid 1px rgba(0,0,0,.1);
	border-top: solid 1px rgba(0,0,0,.1);
}
@media screen and (max-width:559px) {
	.item-spec dl{
		flex-flow: column nowrap;
	}
	.item-spec dl dt,
	.item-spec dl dd{
		width: 100%;
	}
	.item-spec dl dd{
		border-left: none;
	}
}


/* = 商品ページ（制作実績）
-------------------------------------------------------------- */


#fixedbtn{
	position: fixed;
	top: 120px;
	right: 0px;
	ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
	z-index: 10;
}
#fixedbtn a{
	display: block;
	padding: 16px 10px;
	font-weight: bold;
	font-size: 0.85em;
	transition:0.2s ease;
	-webkit-appearance:none;
	text-decoration:none!important;
	border-top-left-radius : 8px;
	border-bottom-left-radius : 8px;
	/*background:#ffffff;*/
	background-color:rgba(255,255,255,.95);
	color: #ff8a00!important;
	border: solid 2px #ff8a00;
	border-right: none;
}
#fixedbtn a:hover{
	opacity: 0.5;
}
@media screen and (max-width:980px) {
	#fixedbtn{
		width: 300px;
		width: calc(100% - 160px);
		margin-left: auto;
		margin-right: auto;
		top: auto;
		bottom: 0px;
		/*right: 0px;*/
		left: 0px;
		ms-writing-mode: lr-tb;
		writing-mode: lr-tb;
		text-align: center;
	}
	#fixedbtn a{
		width: auto;
		padding: 12px 10px;
		border-radius: 0;
		border-top-left-radius : 8px;
		border-top-right-radius : 8px;
		border: solid 2px #ff8a00;
		border-bottom: none;
	}
	#fixedbtn a:hover{
		opacity: 1;
	}
}


/*.item-info{
	display: flex;
	justify-content: space-between;
}
.item-info .slider{
	width: 560px;
	flex-basis: 560px;
	width: 60%;
	flex-basis: 60%;
	margin-right: 20px;
}
.item-info .text{
	width: 340px;
	width: calc(40% - 20px);

}*/
@media screen and (max-width:768px) {
/*	.item-info{
		display: block;
	}
	.item-info .slider,
	.item-info .text{
		width: 100%;
		flex-basis: 100%;
	}*/
}

/* .swiper-wrap {
	margin-top: 20px;
} */
.swiper-container {
	width: 100%;
	max-width: 960px;
	height: 300px;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 10px!important;
}
.swiper-container img{
	display: block;
	width: 100%;
	margin-bottom: 0!important;
	border: none!important;
}
.swiper-slide {
	background-size: cover;
	background-position: center;
	box-sizing: border-box;
	border:solid 1px #e3e3e3;
}
.home .swiper-slide {
	border: none;
}
.swiper-button-white{
  /*text-shadow: rgba(0,0,0,.5);*/
  /* background-color:rgba(0,0,0,.3);
  background-size: 20px 20px!important;
  border-radius: 50px;
  width: 40px!important;
  height: 40px!important; */
}
.gallery-top{
	height: 80%;
	width: 100%;
}
.gallery-thumbs {
	height: 20%;
	box-sizing: border-box;
	padding: 10px 0;
}
.gallery-thumbs .swiper-slide {
	width: calc(100% / 6); /* サムネイルの表示数（slidesPerViewの値と合わせる） */
	height: 100%;
	opacity: 0.4;
	box-sizing: border-box;
}
.home .gallery-thumbs .swiper-slide {
	width: calc(100% / 4); /* サムネイルの表示数（slidesPerViewの値と合わせる） */
}
.gallery-thumbs .swiper-slide-thumb-active {
	opacity: 1;
	border:solid 2px var(--main);
}

.nouki .step1{
	flex: 0 1 auto;
	padding: 16px;
	background-color:rgba(238,136,0,.2);
}
.nouki .step2{
	flex: 0 1 auto;
	padding: 16px;
	background-color:rgba(238,136,0,.3);
}
.nouki .step3{
	flex: 1 0 auto;
	padding: 16px;
	background-color:rgba(238,136,0,.4);
}
.nouki .step4{
	flex: 0 1 auto;
	padding: 16px;
	background-color:rgba(238,136,0,.6);
}

.schedule-table{
	table-layout: fixed;
}
.schedule-table td:before {
	font-family: "Font Awesome 5 Free";
	font-style: normal;
	font-variant: normal;
	font-weight: bold;
	text-rendering: auto;
	display: block;
	font-size: 20px;
}
.schedule-table td.draft:before {
	content: "\f005";
	color: #f1c40f;
}
.schedule-table td.ship:before {
	content: "\f0d1";
	color: #3498db;
}
.schedule-table td.deliver:before {
	content: "\f015";
	color: #e74c3c;
}
.schedule-table td.progress:before {
	content: "\f141";
	content: "\f0da";
	content: "\f105";
	color: #e3e3e3;
	color: #cccccc;
}
.schedule-table td {
	font-weight: bold;
	font-size: 12px;
	text-align: center;
	padding: 5px 0;
}
.schedule-table td.draft,
.schedule-table td.ship,
.schedule-table td.deliver,
.schedule-table td.progress{
	background-color: #fcfbef;
}
.schedule-table td:nth-child(6),
.schedule-table td:nth-child(7),
.schedule-table td:nth-child(13){
	background-color: #ffeff5;
}
.schedule-table td span {
	display: block;
}
@media screen and (max-width:768px) {
	.schedule-table{
		table-layout: auto;
	}
	.schedule-table th,
	.schedule-table td {
		font-size: 10px;
	}
	.schedule-table td span {
		font-size: 10px;
	}
	.schedule-table td:before {
		font-size: 15px;
	}
}
@media screen and (max-width:480px) {
	.schedule-table{
		table-layout: auto;
	}
}


.entry-content .slider{
	margin-bottom: 1.6em;
}

.flex2,.flex3,.flex4,.flex6,.flex8{
	display: flex; /* IE10以上 */
	flex-wrap: wrap; /* 子要素を折り返す */
	margin-left: -3%;
	list-style:none;
}
.flex2 > *{margin:0 0px 3% 3%;flex-basis:calc(50.000% - calc(2 * 3% / 2));} /* 余白2列分 × 3% ÷ 2 */
.flex3 > *{margin:0 0px 3% 3%;flex-basis:calc(33.330% - calc(3 * 3% / 3));} /* 余白3列分 × 3% ÷ 3 */
.flex4 > *{margin:0 0px 3% 3%;flex-basis:calc(25.000% - calc(4 * 3% / 4));} /* 余白4列分 × 3% ÷ 4 */
.flex6 > *{margin:0 0px 3% 3%;flex-basis:calc(16.660% - calc(6 * 3% / 6));} /* 余白6列分 × 3% ÷ 6 */

.flex2 > *.col20{flex-basis:calc(20% - 3%);margin-bottom:0;}
.flex2 > *.col30{flex-basis:calc(30% - 3%);margin-bottom:0;}
.flex2 > *.col40{flex-basis:calc(40% - 3%);margin-bottom:0;}
.flex2 > *.col60{flex-basis:calc(60% - 3%);margin-bottom:0;}
.flex2 > *.col70{flex-basis:calc(70% - 3%);margin-bottom:0;}
.flex2 > *.col80{flex-basis:calc(80% - 3%);margin-bottom:0;}

/* .flex img,.flex p, */
.flex2 img,.flex2 p,
.flex3 img,.flex3 p,
.flex4 img,.flex4 p,
.flex6 img,.flex6 p{margin:0;}

@media screen and (max-width:980px) {
	.flex1lg	{margin-left:0px;}
	.flex1lg > *{flex-basis:100%;margin:0 0 2em;}
	.flex1lg > *.col20,
	.flex1lg > *.col30,
	.flex1lg > *.col40,
	.flex1lg > *.col60,
	.flex1lg > *.col70,
	.flex1lg > *.col80{flex-basis:100%;}
	.flex2lg > *{flex-basis:calc(50% - calc(2 * 3% / 2));}
	.flex3lg > *{flex-basis:calc(33.33% - calc(3 * 3% / 3));}
	.flex4lg > *{flex-basis:calc(16.66% - calc(6 * 3% / 6));}
}
@media screen and (max-width:768px) {
	.flex1md	{margin-left:0px;}
	.flex1md > *{flex-basis:100%;margin:0 0 0.4em;} /*margin-bottomを設定すると画像だけのレイアウトにした際に余計な余白が発生する*/
	.flex1md > *.col20,
	.flex1md > *.col30,
	.flex1md > *.col40,
	.flex1md > *.col60,
	.flex1md > *.col70,
	.flex1md > *.col80{flex-basis:100%;}
	.flex2md > *{flex-basis:calc(50% - calc(2 * 3% / 2));}
	.flex3md > *{flex-basis:calc(33.33% - calc(3 * 3% / 3));}
	.flex4md > *{flex-basis:calc(16.66% - calc(6 * 3% / 6));}
	.flex1md img{margin:0 auto 1em;} /*サムネイル付きの2カラムを一列に戻した際にセンタリングと下余白を設定*/
	.flex1md p,
	.flex2md p,
	.flex3md p,
	.flex4md p{margin:0 0 1.6em;}
}
@media screen and (max-width:480px) {
	.flex1sm	{margin-left:0px;}
	.flex1sm > *{flex-basis:100%;margin:0 0 0.4em;} /*margin-bottomを設定すると画像だけのレイアウトにした際に余計な余白が発生する*/
	.flex1sm > *.col20,
	.flex1sm > *.col30,
	.flex1sm > *.col40,
	.flex1sm > *.col60,
	.flex1sm > *.col70,
	.flex1sm > *.col80{flex-basis:100%;}
	.flex2sm > *{flex-basis:calc(50% - calc(2 * 3% / 2));}
	.flex3sm > *{flex-basis:calc(33.33% - calc(3 * 3% / 3));}
	.flex4sm > *{flex-basis:calc(16.66% - calc(6 * 3% / 6));}
	.flex1sm img{margin:0 auto 1em;} /*サムネイル付きの2カラムを一列に戻した際にセンタリングと下余白を設定*/
	.flex1sm p,
	.flex2sm p,
	.flex3sm p,
	.flex4sm p{margin:0 0 1.6em;}
}


/*　WP Table of Contents Plus（目次プラグイン）　※パソコンでは記事内の目次を非表示
-------------------------------------------------------------- */
#toc_container {
	display: none;
}
.toc_widget_list a{
	color: var(--text);
	font-weight: normal;
}
@media screen and (max-width:959px) {
	#toc_container {
		display: block;
	}
}


/*　CTAボタン - モバイル固定
-------------------------------------------------------------- */
.btn-design-editor{
	margin: 20px 0 0;
	z-index: 99;
}
.btn-mtmr-form{
	margin: 20px 0 0;
}
@media screen and (max-width:959px) {
	.btn-design-editor,
	.btn-mtmr-form{
		position: fixed;
		margin: 0;
		width: 50%;
		padding: 2px;
	}
	.btn-design-editor{
		left: 0;
		bottom: 0;
		padding-right: 1px;
	}
	.btn-mtmr-form{
		right: 0;
		bottom: 0;
		padding-left: 1px;
	}
	.btn-design-editor .btn,
	.btn-mtmr-form .btn{
		height: 70px;
		padding: 8px 8px;
		border-radius: 4px;
		border: solid 1px white;
	}
	.btn-design-editor .btn:hover,
	.btn-mtmr-form .btn:hover{
		background-color: white;
	}
	.side_list{
		display: none;
	}
}
@media screen and (max-width:480px) {
	.btn-design-editor .btn,
	.btn-mtmr-form .btn{
		height: 50px;
		font-size: 11px;
		padding: 0;
	}
	.btn-design-editor .btn i,
	.btn-mtmr-form .btn i{
		font-size: 12px;
	}
	.btn-design-editor .btn span.font80,
	.btn-mtmr-form .btn span.font80{
		font-size: 10px!important;
	}
}


details {
	padding: 0px 32px 0px;
	vertical-align: middle;
	border-top: solid 1px var(--border);
	border-bottom: solid 1px var(--border);
	transition: 0.2s;
}
details + details {
	margin-top: 0;
	border-top: none;
}
details[open] {
	padding-bottom: 32px;/* 後続のdatailタグとの区別を明確にするため長めに確保 */
}
details summary {
	position: relative;
	display: block; /* デフォルトアイコンを非表示（Safari以外） */
	padding: 16px 48px 16px 8px;
	margin: 0px -32px 0 -32px;
	padding: 16px 48px 16px 32px;
	transition: 0.1s;
}
details summary::-webkit-details-marker {
	display: none; /* Safariのデフォルトアイコン▶を非表示 */
}
details summary:hover {
	cursor: pointer;
	background-color: var(--gray);
}
details[open] summary {
	margin-bottom: 16px;
	background-color: var(--gray);
}
details summary::after {
	position: absolute;
	top: 50%;
	right: 16px;
	transform: translate(0%, -50%) rotate(0deg);
	display: block;
	content: "";
	width: 24px;
	height: 24px;
	background-color: transparent;
	background-image: url(images/icon/angle-down-solid.svg);
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
	background-size: 50%;
	border-radius: 100%;
	opacity: 0.5;
	transition: transform 0.2s;
}
details[open] summary::after {
	transform: translate(0%, -50%) rotate(180deg); /* 回転させるとSafari14でフォーカスした際に不自然なアウトラインができる */
}


/* ラジオボタン用の注釈テキスト（チェックが入ったときに表示・2023/8現在、FFはhasに未対応） */
label + .checked-text{
	margin-left: 1.8em;
	/* font-size: .8rem; */
	margin-bottom: 16px;
}
label:has(input) + .checked-text{
	transition: .2s;
	height: 0;
	overflow: hidden;
	margin-bottom: 0px;
}
label:has(input:checked) + .checked-text{
	height: auto;
	margin-top: 4px;
	margin-bottom: 16px;
	border: solid 1px var(--border);
	padding: 8px;
	border-radius: 4px;
}

/* プラグイン - Contact Form 7
-------------------------------------------------------------- */
/*自動生成されるpの余白をリセット*/
.wpcf7 p {
	margin: 0;
}
.wpcf7 dl dt {
	margin-top: 32px;
}
.wpcf7 dl dd {
	margin-top: 8px;
}
/* radioとcheckboxをブロック化 */
.wpcf7-radio .wpcf7-list-item,
.wpcf7-checkbox .wpcf7-list-item {
	display: block;
}
/* バリデート時に表示されるスクリーンリーダ用のエラーメッセージを非表示化 */
.wpcf7 .screen-reader-response {
	display: none;
}
.wpcf7 .must {
	display: flex;
	align-items: center;
}
.wpcf7 .must::after {
	content: "必須";
	display: inline-block;
	margin-left: 8px;
	padding: 6px 8px;
	line-height: 1;
	font-size: 13px;
	border-radius: 4px;
	color: white;
	color: var(--text);
	background-color: #ff6666;
	background-color: #ff9900;
	background-color: #ffe200;
}
/* エラーメッセージ */
.wpcf7-response-output,
.wpcf7-not-valid-tip:not(:empty) {
	display: block;
	margin-top: 8px;
	font-size: 0.9rem;
	color: red;
}
/* 住所の自動入力ボタン */
.wpcf7 .postal-search{
	padding: 16px;
	font-size: .8rem;
}

/* よくある質問リスト */
.faq-list {
	position: relative;
}
.faq-list .post-edit-link {
	top: 72px !important;
	right: 18px !important;
}
.faq-list summary {
	padding-left: 0;
	font-weight: bold;
}
.faq-searchform.searchform {
	border: solid 1px #333;
	background-color: #fff;
}



/* メニュー UI */
.toggle-menu-items {/* クローズ時 */
	position: absolute;
	top: 80px; /* = header height */
	left: 0;
	display: block; /* display:flex、flex-direction:column-reverseを解除 */
	width: 100%;
	background-color: #fff;
	background-color: var(--main);
	color: #fff;
	/* CloseEffect */
	height: 0;
	overflow: auto;
	visibility: hidden; /* フォーカスを当てない */
	opacity: 0;
	transition: all .2s ease;
}
.menu-trigger.active + .toggle-menu-items {/* アクティブ時 */
	padding: 32px 0;
	z-index: -1;/* グロナビのドロップダウンメニューより下層に配置 */
	z-index: 2;/* トップページのスライダーより上層に配置 */
	/* OpenEffect */
	height: calc(100vh - 120px); /* 100vh - header height */
	visibility: visible;
	opacity: 1;
	transition: height .8s linear(0, 0.0008, 0.003, 0.0068, 0.0121, 0.0189, 0.0272, 0.0371, 0.0484, 0.0613, 0.0756, 0.0915, 0.1089, 0.1278, 0.1482, 0.1702, 0.1936, 0.2186, 0.245, 0.273, 0.3025, 0.3335, 0.366, 0.4001, 0.4356, 0.4727, 0.5112, 0.5513, 0.5929, 0.636, 0.6806, 0.7268, 0.7744, 0.8236, 0.8742, 0.9264, 0.9801, 0.9828, 0.957, 0.9328, 0.91, 0.8888, 0.869, 0.8508, 0.8341, 0.8189, 0.8052, 0.7931, 0.7824, 0.7733, 0.7656, 0.7595, 0.7549, 0.7518, 0.7502, 0.7502, 0.7516, 0.7546, 0.759, 0.765, 0.7725, 0.7815, 0.792, 0.8041, 0.8176, 0.8327, 0.8492, 0.8673, 0.8869, 0.908, 0.9306, 0.9548, 0.9804, 0.9963, 0.9837, 0.9727, 0.9631, 0.9551, 0.9485, 0.9435, 0.94, 0.938, 0.9375, 0.9386, 0.9411, 0.9452, 0.9507, 0.9578, 0.9664, 0.9765, 0.9881, 0.9994, 0.9934, 0.9889, 0.986, 0.9845, 0.9846, 0.9862, 0.9893, 0.9939, 1); /* OutBounce */
	transition: .4s;
}
/* Toggle Menu内のメインメニュー */
.toggle-menu-items .main-menu,
.toggle-menu-items .sub-menu {
	display: flex;
	gap: 16px;
	gap: 8px;
	flex-direction: column;
	/* align-items: flex-start; */ /* これがないと内包するliのwidthが100%になっちゃう。なんで？ */
	font-size: 1.6rem;
	font-weight: bold;
	/* border: solid 1px red; */
}
.toggle-menu-items .sub-menu {
	margin: 16px 0 0 0;
	font-size: 1.0rem;
}
.toggle-menu-items .sub-menu li {
	display: flex;
	gap: 8px;
}
.toggle-menu-items .sub-menu li::before {
	content: "-";
	font-weight: normal;
}
.toggle-menu-items a {
	display: inline-block;
	color: var(--text);
	color: #fff;
}
/* フォーカス時の枠線が見切れるので位置調整 */
/* .toggle-menu-items a:focus {
	outline-offset: -2px;
} */
.toggle-menu-items .main-menu li.current-menu-item a::after,
.toggle-menu-items .main-menu li.current-cat a::after { /* カレントメニューのアイコン */
	border: solid 1px red;
	top: 0;
	left: 0;
	transform: translateX(-100%) translateY(10%) rotate(90deg) scale(0.8, 0.5);
}
/* 虫眼鏡アイコン */
.icon-search{ /* 虫眼鏡のレンズ */
	position: relative;
	border: none;
  background: none;
	translate: 0 -8px;
	scale: 0.8;
}
.icon-search span{
	position: absolute;
	top: -2px;/* グリップ分の高さ調整 */
	bottom: 0;
	left: 0;
	right: 0;
	margin: auto;
	display: inline-block;
	width: 16px;
	height: 16px;
	box-shadow: 0 0 0px 1.5px var(--text);
	backdrop-filter: drop-shadow(4px 4px 10px rgb(0 0 0 / .5));/* 縁取りをぼかして綺麗にする */
	rotate: -45deg;
	border-radius: 50%;
	background-color: transparent;
	transition: 0.3s;
}
.icon-search.active span { /* アクティブ時はレンズをフェイドアウト */
	top: 0;
	box-shadow: none;
}
.icon-search span::before,
.icon-search span::after{ /* 虫眼鏡のグリップ */
	content: "";
	position: absolute;
	top: auto;
	left: 0;
	right: 0;
	bottom: -8px;
	margin: auto;
	width: 2px;
	height: 8px;
	background-color: var(--text);
	border-radius: 2px;
	transition: 0.1s;
}
.icon-search.active span::before,
.icon-search.active span::after{ /* アクティブ時はクローズアイコンに変化 */
	top: 0;
	bottom: 0;
	width: 0px;
	height: 24px;
	border-radius: 4px;
	box-shadow: 0 0 0 .5px var(--text);
}
.icon-search.active span::after{
	rotate: 90deg;
}
