/**
 * Theme Name:     Lightning Child
 * Author:         Vektor,Inc.
 * Template:       lightning
 * Text Domain:	   lightning-child
 * Description:    Lightning is a very simple &amp; easy to customize theme which is based on the Bootstrap. It is also very friendly with custom post types and custom taxonomies. When you add a new one, the breadcrumbs will be adjusted and posts will look beautifully without editing or adding a template files.
 */

 body, html {
	overflow: visible;
 }
#breadcrumb,
#menu-item-121 {
	display: none;
}
.page_item.page-item-120 > a {
	display: none;
}
.site-header {
	box-shadow: none;
	padding: 1rem 0;
}
.main-section--base--on, .sub-section--base--on {
	background: none;
}
.main-section {
	max-width:830px;
	width: 75%;
}
.sub-section {
	width:22%;
}

.site-body-container:not(:has(.sub-section)) .main-section {
	max-width:1440px;
	width:100%;
}
.vk_post_taxonomy-manufacturer,
.vk_post_taxonomy-country {
	display: none;
}
.archive-header,
.entry-header {
	z-index: 9;
}
.vk_post_imgOuter.media-img  {
	z-index: 0;
}

/**
*
*
*全ページ共通スタイル
*
*
.noto-sans-jp-<uniquifier> {
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: <weight>;
  font-style: normal;
}
  .roboto-<uniquifier> {
  font-family: "Roboto", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
  font-variation-settings:
    "wdth" 100;
}
**/
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&display=swap');
.spShow {
	display: none !important;
}
@media screen and (min-width: 991px) {
	.pcCenter {
		text-align: center;
	}
	.container {
	padding: 0 0;
}
}
@media screen and (max-width: 990px) {
	/*スマホ用*/
	.pcShow {
		display: none !important;
	}
	.spShow {
		display: block !important;
	}
	.main-section {
		width: 100% !important;
	}
	.spCenter {
		text-align: center;
		margin: 3rem auto 1rem !important;
	}
	.home .container {
		padding: 0px;
	}
}
body:has(.childNav):before {
	content: "";
	width: 100%;
	height: 100vh;
	display: block;
	position: fixed;
	top: 0;
	left: 0;
	background: #0000006b;
	z-index: 100;
	pointer-events: none;
	opacity: 0;
	transition: .3s all;
}
body:has(.childNav.open):before {
	transform: translateY(0%);
	opacity: 1;
	pointer-events: all;
}
header,
#mainNav {
	position: relative;
	z-index: 102;
	background: #FFF;
  transition: top .3s ease;
}

/* スクロール後、固定される時だけ適用 */
#mainNav.is-fixed {
  position: fixed;
  top: -80px; /* いったん隠しておく。高さに合わせて調整 */
  left: 0;
  width:100%;
  z-index: 999;

}
#mainNav.is-fixed nav > div p {
	padding:1rem 0;
	cursor: pointer;
}
#mainNav.is-fixed.show {
  top: 0; /* ニュッと戻る */
}
.subMenu.is-fixed {
	position: fixed;
	top: 55px;
} 

header > div {
	max-width: 1140px;
	width: 96%;
	margin: 0 auto 0;
	font-size: 13px;
	font-family: "Noto Sans JP", sans-serif;
	display: flex;
	justify-content: space-between;
}
header h2 {
	padding: 0;
	margin-bottom: 0;
	border: none;
}
header h2 img {
	max-width: 230px;
}
#menu-header_nav2 a {
	display: block;
	padding: 4px 8px;
	border-right: 1px solid #CDCDCD;
}
#menu-header_nav2 li:last-of-type a {
	border-right: none;
}
#headNav .leftArea {
	display: grid;
	grid-template-columns: 50% 1fr;
	grid-template-rows: auto auto;
	width: calc(100% - 122px);
	gap: 12px 0;
}
#headNav .leftArea section {
	grid-row: 2;
	grid-column: 1/3;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: end;
}
#headNav h1 {
	margin-bottom: 0;
	align-self: end;
}
#headNav h1 a {
	transition: .3s all;
}
#headNav h1 a:hover {
	opacity: .6;
	
}
#headNav h1 span {
	font-size: 13px;
	font-weight: 500;
	display: inline-block;
	margin-left: 24px;
	vertical-align: bottom;
	line-height: 100%;
	color: #000;
}
#headNav h1 img {
	vertical-align: bottom;
}
#menu-header_nav2 {
	display: flex;
	border: 1px solid #CDCDCD;
	border-radius: 16px;
	overflow: hidden;
}
#menu-header_nav2 li {
	min-width: 120px;
	text-align: center;
	transition: .3s all;
}
#menu-header_nav2 li:hover {
	background:#511b1b;
}

#menu-header_nav2 li:hover a {
	color: #FFF;
}
#menu-header_nav2 li strong {
	font-weight: normal;
}
#headerGroup {
	/*position: sticky;
	top: 0;
	left: 0;
	z-index: 999;*/
}
.headContact p {
	margin-bottom: 0;
	text-align: right;
	font-size: 15px;
	color: #2e0a19;
	line-height: 150%;
}
.headContact img {
	width: 26px;
	margin-right: 1px;
	vertical-align: text-bottom;
}
#headNav a[href^="tel:"] {
	font-size: 32px;
	text-decoration: none;
	color: #000;
	font-weight: 700;
}
#headNav .rightArea {
	width: 105px;
	text-align: center;
	display: flex;
	align-items: center;
}
#headNav .rightArea a {
	display: flex;
	flex-direction: column;
	align-items: center;
	background: #6a0016;
	color: #FFF;
	padding: 10px;
	height: 100%;
	justify-content: center;
	border-radius: 8px;
	transition: .3s all;
}
#headNav .rightArea a:hover {
	opacity: .6;
}
#headNav .rightArea p {
	height: 90%;
	width: 100%;
	margin: 0;
}
#headNav .rightArea a img {
	width: 26px;
	margin-top: 4px
}
#mobileNav,
#fNav {
	display: none;
}

@media screen and (max-width:480px) {
		#headNav h1 img {
			max-width: 220px;
			width: 100%;
		}
		#headNav .rightArea a {
			font-size:12px;
		}
		.site-header {
			padding:.6rem 0;
		}
		.site-footer:after {
			display: none;
		}
}



/*****************************

コンテンツ幅

*****************************/
.sub-section--base--on {
	padding: 0;
	max-width:260px !important;
	left: 0 !important;
	position: relative !important;
	top: 0 !important;
}
.main-section--base--on {
	padding: 0;
}

/*****************************

サイドバー

*****************************/

.sub-section .widget .wp-block-list .wp-block-list li {
	position: relative;
	text-indent:20px;
}
.sub-section .widget .wp-block-list li:first-of-type {
	border-top: none;
}
.sub-section .widget .wp-block-list .wp-block-list li a {
	border-top:1px dashed #cdcdcd;
}
.sub-section .wp-block-list li:hover > a {
	background: #F3F3F3;
}
.sub-section .widget .wp-block-list .wp-block-list li::before {
	content: "";
	height: 1px;
	width: 20px;
	display: block;
	background:#6a0016;
	position: absolute;
	top: 50%;
	left:5px
}


@media(min-width: 990px) {
	a[href^="tel:"] {
		pointer-events: none;
	}
}

@media screen and (max-width: 1100px) {
	/*タブレット用*/
	#headNav h1 {
		flex-direction: column;
	}
	#headNav h1 span {
		margin-left: 0;
		display: block;
		margin-top: 4px
	}
	#menu-header_nav2 li {
		width: 115px;
	}
	#headNav .leftArea {
		width: 70%;
	}
}


@media screen and (max-width: 990px) {

	body {
		padding: 5rem 0;
	}
	.sub-section {
		width: 100%;
		margin: 0 auto;
	}
	.sub-section > aside{
		display: none;
	}
	.sub-section > aside:has(.calendars) {
		display: block;
	}
	#headerGroup {
		position: fixed;
		top: 0;
		z-index: 999;
		width:100%;
	}
	/*スマホ用*/
	#mainNav {
		display: none;
	}
	#vk-mobile-nav-menu-btn,
	.headContact {
		display: none;
	}

	#headNav h2 .spShow {
		font-size: 14px;
		font-weight: bold;

	}
	#navBtn {
		height: 30px;
		position: relative;
		text-align: center;
		top: 20px;
		right: 2vw;
		transition: .3s all;
		display: block;
	}
	#navBtn button {
		height: 30px;
		width: 35px;
		padding: 0;
		margin: 0;
		padding-block: 0;
		border: none;
		background: #FFF;
		padding-inline: 0;
	}
	#headNav .leftArea {
		gap: 0;
		line-height: 100%;
		grid-template-columns: 100%;
		display: flex;
		flex-direction: column-reverse;
		flex-wrap: wrap;
	}
	#navBtn button span {
		display: block;
		width: 100%;
		height: 3px;
		background: #000;
	}
	#navBtn button span:before,
	#navBtn button span:after {
		content: "";
		display: block;
		width: 35px;
		height: 3px;
		background: #000;
		bottom: 3px;
		position: absolute;
		transition: .3s all;
	}
	#navBtn button span:after {
		content: "";
		bottom: auto;
		top:3px;
	}
		#navBtn.active button span{
			background: none;
		}
	#navBtn.active button span:after {
		transform: rotate(45deg);
		top: 50%;
	}
	#navBtn.active button span:before {
		transform: rotate(-45deg);
		top: 50%;
	}
	#headNav .leftArea {
		width: 60%;
	}
	#headNav .rightArea {
		width:auto;
		margin-right: .5rem;
		margin-left: auto;
	}
	#headNav .rightArea a {
		padding: 10px 6px;
	}
	#headNav .rightArea p {
		max-width: 100px;
		margin-right: 1rem;
		margin-left: auto;
		height: 100%;
	}
	#navBtn {
		width: 55px;
	}
	#headNav .rightArea a img {
		width: 20px;
	}
#mobileNav {
    display: block;
	z-index: 1;
    width: 60%;
    top: 7.2rem;
    background-color: #FFF;
    max-width: 380px;
    box-shadow:0 10px 15px #e8e8e8;
    border-top: 5px solid #6a0016;
    position: fixed;
    z-index: 999;
    right: 0;
    transform: translateX(105%);
    transition: .5s;    
	padding-bottom: 8rem;
    height: calc(100% - 7.5rem); /* top分を引いておく */
    overflow-y: auto;            /* ←ここがポイント */
}

	body:has(.spShow.active) #mobileNav {
		transform: translateX(0);
	}
	.menuSection ul {
		display: flex;
		flex-wrap:wrap;
		justify-content: space-around;
		margin:0 auto 0 !important;
		margin-block: 0;
		padding-inline-start: 0;
		width: 94%;
		max-width:320px

	}
	.menuSection ul li {
		align-self: center;
		text-align: center;
		margin-bottom: 8px;
		width: calc(100% / 3);
		padding: 0 4px;

	}
	#mobileNav h2 {
		font-size: 17px;
		padding: 1rem;
		color: #6a0016;
		border-bottom: none;
		border-top: none;;
		margin-bottom: 0;
	}
   .infoSection ul {
		padding: 0;
   } 
   .infoSection li {
	padding:.7rem 1.5rem;
	border-bottom: 1px solid #dcdcdc;
	position: relative;
   }
   .infoSection li a{
	display: grid;
	grid-template-columns: 30px auto;
	font-size: 17px;
   }
   .material-symbols-outlined {
		width: 15px;
		height: 17px;
		color: #6a0016;
		font-size: 15px !important;
		vertical-align: middle;
		position: absolute;
		right: 1rem;
		top: 1rem;
	}
	.orderBtn a {
		display: flex;
		justify-content: center;		
		background: #6a0016;
		color: #FFF;
		padding: 1rem;
		margin: 1rem 1rem;
		text-align: center;
		align-items: center;
		border-radius: 10px;	
		font-size: 17px;	
		font-weight: 600;
	}
		.orderBtn a:hover {
			color: #FFF;
		}
	.orderBtn a img {
		display: block;
		margin-right: 8px;
	}
	#fNav {
		display: block;
		position: fixed;
		bottom: 0;
		left:0;
		padding:0 !important;
		margin: 0 auto;
		width: 100%;
background: #6a0016;;
		z-index: 999;
	}
	#fNav ul {
		list-style: none;
		display: flex;
		justify-content: space-between;
		background: #6a0016;
		width: 100%;
		padding-left:0;
		border-top:2px solid #cebfb6;
		border-bottom:2px solid #cebfb6;
		margin-block: 0;
		background:#cebfb6;
	}
	#fNav ul a {
		color: #FFF;
		display: block;
		height: 100%;
		font-size: 11px;
		line-height: 100%;
	}

	#fNav ul a img {
		display: block;
		margin: 0 auto 2px;
	}

	#fNav ul li:first-of-type a img {
		width: 30px;
		margin-top:2px;
	} 
	#fNav ul li:first-of-type a img,
	#fNav ul li:nth-of-type(3) a img,
	#fNav ul li:nth-of-type(5) a img {
		margin-bottom: 8px;
	}
	#fNav ul li:nth-of-type(2) a img {
		width: 28px;
		margin-bottom: 8px;
		margin-top: 4px;
	}
	#fNav ul li:nth-of-type(3) a img {
		width: 18px;
		margin:4px auto 8px;
	}
	#fNav ul li:nth-of-type(4) a img {
		width: 26px;
		margin-top: 1px;
		margin-bottom: 4px;
	}
	#fNav ul li:nth-of-type(5) a img {
		width: 24px;
		margin:5px auto 8px;
	}
	#fNav ul li {
		text-align: center;
		align-self: flex-start;
		width:25%;
		margin: 0;
		height: 100%;
		line-height: 100%;
		border-right:2px solid #cebfb6;
		min-height:65px;
		padding-top:8px;
		background:#6a0016;
		border-radius: 5px;
	}
	
	#fNav ul li:first-of-type {
		border-left:2px solid #cebfb6;
	}
	.vk_posts .postListText_title {
		width: 100%;
	}

}
@media screen and (max-width:480px) {
	#mobileNav {
    -webkit-overflow-scrolling: touch; /* iOSでスムーズスクロール */
	top:6.5rem;
}
	#headNav .rightArea {
		margin-right: 2px;
	}
	#mobileNav {
		width: 70%;
	}
	#navBtn {
		width: 52px;
	}
	#navBtn p {
		font-size: 12px;
		padding-top:0;
		margin-top: -3px;
	}
	#headNav .leftArea {
		justify-content: center;
	}
	#headNav .rightArea p {
		margin-right:.5rem;
	}
	#headNav h1 {
		line-height: 100%;
	}
	.home .site-body.site-body--base--on {
		padding-top: 0.5rem;
	}

}
/* mainNav */
#mainNav nav {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	max-width: 1140px;
	width: 90%;
	margin: 0 auto 0;
	position: relative;
	z-index: 100;

}
#mainNav nav > div {
	padding-left: 0 !important;
	margin-bottom: 0 !important;
	position: relative;
}
#mainNav nav > div p {
	padding: .7rem 0;
	margin-bottom: 0 !important;
	position: relative;
	z-index: 100;
}
#mainNav nav > div p:after {
	content: "";
	width: 100%;
	height: 2px;
	background: #6a0016;
	position: absolute;
	bottom: 0;
	transform: scaleX(0);
	transition: .3s all;
}
#mainNav nav > div:hover p:after {
	transform: scaleX(1);

}
#mainNav nav > div:nth-child(1) {
	flex: 0 0 12%;
}
#mainNav nav > div:nth-child(1) a {
	color: #333 !important;
}
/* TOP */
#mainNav nav > div:nth-child(2) {
	flex: 1.4;
}

/* デザインガラス */
#mainNav nav > div:nth-child(3) {
	flex: 1.1;
}

/* お客様事例 */
#mainNav nav > div:nth-child(4) {
	flex: 1.0;
}

/* サポート */
#mainNav nav > div:nth-child(5) {
	flex: 1.1;
}

/* お問い合わせ */
#mainNav nav > div .nonLink,
#mainNav nav > div > p > a {
	display: block;
	width: 100%;
	text-align: center;
	font-weight: 600;
	margin-block-end: 0;
	cursor: pointer;
}
#mainNav nav > div > p > a,
#mainNav nav > div .nonLink {
	border-right: 1px #DEDEDE solid;
}
#mainNav nav > div > p > a {
	border-left: 1px #DEDEDE solid;
	text-decoration: none;
}
#mainNav nav > div:has(.open) .nonLink > img {
	transform: rotate(180deg);

}
#mainNav nav .childNav {
	transform-origin: top;
	transform: scaleY(0);
	position: absolute;
	width: 100%;
	transition: transform 0.3s ease;
	z-index: 999;
	margin: 0 auto;
	background: #fff;
	padding-left: 0;
	font-size: 14px;
}
#mainNav nav .childNav.open {
	transform: scaleY(1);
	pointer-events: all;
}
#mainNav nav .childNav > li div span {
   	display: block;
	padding: .8rem .4rem;
	border-bottom: 1px solid #dedede;
	width: 90%;
	margin: 0 auto; 
}
#mainNav nav .childNav > li div span:last-of-type {
	position: absolute;
	width: auto;
	border-bottom: none;
	font-size:12px;
	right: 1rem;
	top: 5px;
}
#mainNav nav .childNav > li:hover div span:last-of-type {
	color: #6a0417 !important;
}
#mainNav nav .childNav > li:hover div span {
	color: #6a0417;
}

#mainNav nav .childNav li {
	opacity: 0;
	transform: translateY(-10px);
	transition: opacity 0.3s ease, transform 0.3s ease;
}
#mainNav nav .childNav li > a {
	display: block;
	padding: .8rem .5rem;
	border-bottom: 1px solid #dedede;
	width: 90%;
	margin: 0 auto;
}
#mainNav nav .childNav li > a:hover {
	color: #6a0417;
}
#mainNav nav .childNav li:last-of-type > a {
	border-bottom: none;
}
/* open状態のとき、一つずつ出現 */
#mainNav nav .childNav.open li {
	opacity: 1;
	transform: translateY(0);
}

/* 順番に出るようにdelayを設定 */
#mainNav nav .childNav.open li:nth-child(1) {
	transition-delay: 0.05s;
}
#mainNav nav .childNav.open li:nth-child(2) {
	transition-delay: 0.1s;
}
#mainNav nav .childNav.open li:nth-child(3) {
	transition-delay: 0.15s;
}
#mainNav nav .childNav.open li:nth-child(4) {
	transition-delay: 0.2s;
}
#mainNav nav .childNav.open li:nth-child(5) {
	transition-delay: 0.25s;
}
#mainNav nav .childNav.open li:nth-child(6) {
	transition-delay: 0.3s;
}
#mainNav nav .childNav.open li:nth-child(7) {
	transition-delay: 0.35s;
}
#mainNav nav .childNav.open li:nth-child(8) {
	transition-delay: 0.4s;
}
#mainNav nav ul:has(section)  {
    position: relative;
}
#mainNav nav ul:has(section) li {

}
#mainNav nav .childNav li section {
    position: absolute;
    flex-wrap: wrap;
    width: 760px;
    top: 0;
    left: 100%;
    display: none;
    padding: 1rem;
}
#mainNav nav .childNav > li div:hover section {
    display: flex;

}
#mainNav nav .childNav li section figure {
    width: 23%;
}

#mainNav nav .childNav.open section:after {
    content: "";
    width: 115vw;
    height:100%;
    left: -55vw;
    background: #FFF;
    top: 0;
    display: block;
    position: absolute;
 z-index: -1;      /* sectionより後ろに置きたいなら調整 */
}
.subMenu {
background:#FFF;
    position: absolute;
    z-index: 100;
}

.subMenu section {
    display: flex;
    pointer-events:none;
    flex-wrap:wrap;
    z-index: 999;
    height:0;
    overflow: hidden;

}
.subMenu section.view {
    display: flex;
	opacity:1;
    pointer-events:all;
	justify-content: flex-start;
	align-content: baseline;
}
.subMenu .group {
    position: relative;
	margin: 0 auto;
    pointer-events: none;
    z-index: 999;

}
.subMenu section.view {
    opacity: 1;
    height: auto;
    min-height: 300px;
    padding: 1rem;
	max-width: 1140px;
    width: 90%;
    margin: 0 auto;
}
.subMenu section figure {
    width: 22%;
	margin: 0 0 8px 3%;
    font-size: 14px;
	transition: .3s all;
}
.subMenu section figure img {
	height: 70px;
	object-fit: cover;
	width: 100%;
	box-sizing: border-box;
}
.subMenu section:nth-of-type(2) figure img {
	object-fit: contain;
	width: auto;
	margin: 0 auto;
	display: block;
	height: 68px;
}
.subMenu section figure span {
	width: 100%;
	border: 1px solid #cecece;
	display: block;
	max-height: 72px;
}
.subMenu section figure:hover {
	opacity:.7;
}

.subMenu section ul {
	list-style: none;
	display: flex;
	flex-wrap:wrap;
	width: 100%;
}
.subMenu section ul li {
	margin-right:2%;
	width:30%;
}
.subMenu section ul li a {
	display: block;
	    font-size: 14px;
	padding: .5rem;
	border-bottom: 1px solid #cebfb6;
	max-width:240px;
	text-decoration: none;
}
.subMenu section ul li a:hover {
	color: #6a0417;
}

/*


サイドバー


*/

.sub-section aside{
	margin-bottom: 1rem;
}
.sub-section h4.wp-block-heading {
	background: #FFF;
	font-size: 16px;
	color: #333;
	border-bottom: 2px solid #6a0016;
	border-radius: 0;
	position: relative;
	margin-bottom: 0;
	padding:0;
}
.sub-section h4.wp-block-heading a {
	display: block;
	padding:.7rem;;
	width:100%;
	position:relative;
	z-index: 9;

}
.sub-section h4.wp-block-heading:after {
 font-family: "Material Symbols Outlined";
  content: "\e5cc";
  color: #6a0016;
  font-size: 1.3rem;
  position: absolute;
  right: .5rem;
  font-weight: normal;
  top: 30%;
  z-index: 10;
  pointer-events: none;
}
.sub-section .wp-block-list {
	list-style: none;
	padding-left: 0;
	margin-top: .5rem;
}
.material-symbols-outlined{
  font-variation-settings:
  'FILL' 0,
  'wght' 400,
  'GRAD' 0,
  'opsz' 24
 }

.sub-section .wp-block-list a {
	font-size: 14px;
	display: block;
	text-decoration: none;

	padding: .7rem;
}
.sub-section .widget li {
	margin:0 auto;
}
.sub-section .widget li:nth-of-type(n + 2) a {
	border-top: 1px solid #cdcdcd;
}

.sub-section aside:has(.wp-block-heading) {
	margin-bottom: 0;
}
#zaikohyou {
	transition: .3s all;
	background:#6a0016;
	color:#FFF;
	border-radius:5px;
	text-align:center;
	padding:.7rem;
}
#zaikohyou:hover {
	background: #803a49;
}
#zaikohyou span {
	position:relative;
	letter-spacing: 1px;
}
#zaikohyou span:before {
	display: inline-block;
 font-family: "Material Symbols Outlined";
  content: "\e5cc";
  color:#FFF;
  font-size: 1rem;
  font-weight: normal;
  vertical-align: middle;
}
#zaikohyou img {
	max-width:45px;
	margin-left:5px;
	vertical-align:bottom;
}

/**************************************

*フッター footer

***************************************/
a:has(#pageTop) {
	scroll-behavior: smooth;
}
div:has(#pageTop) {
	max-width:1140px;
	margin:0 auto;
	width: 100%;
	text-align: right;
	position: fixed;
	display: block;
	bottom: -1px;
	z-index: 99;
	margin-left: calc(50% - 570px);
	pointer-events: none;
	opacity: 0;
	visibility: hidden;
	transition: opacity 0.3s, visibility 0.3s; 
}
/* フッターに到達した時 */
div:has(#pageTop).is-stopped {
  position: relative;
}
div:has(#pageTop).is-visible {
  opacity: 1;
  visibility: visible;
}

p:has(#pageTop) {
	margin:0 0 0 auto;
	line-height: 100%;
	max-width:175px;

}#pageTop {
	pointer-events: auto;
}
#pageTopSp {
	position: fixed;
	bottom: 65px;
	right: 0;
	z-index: 99;
	max-width:65px;
	scroll-behavior: smooth;
}
footer:has(#footerContact) {
	border-top: none;
}
footer:has(#footerContact) ul {
	list-style: none;
}
#footerContact {
	background: #f0edea;
	text-align: center;
	padding:2rem;
}
#footerContact h4,
#footerContact ul {
	width: 90%;
	max-width:1080px;
	background: none;
	margin: 0 auto;
}
#footerContact h4 {
	font-size: 32px;
}
#footerContact ul {
	display: flex;
	justify-content: space-between;
	flex-wrap:wrap;
}
#footerContact ul li {
	width: 23%;
}
#footerContact .textArea {
	font-size:18px;
	margin: 2rem auto 2rem;
	line-height: 180%;
}
#footerNav {
	background: url("kodama_inc/img/footer_bg.png") center;
	padding:3rem 0;
}
#footerNav h2 {
	color: #6a0016;
	font-size: 56px;
	font-weight: 600;
	letter-spacing: 2px;
	border: none;
	line-height: 100%;
}
#footerNav h2 span {
	display: block;
	font-weight: normal;
	font-size: 20px;
}
#footerNav .title {
	display: grid;
	grid-template-columns: repeat(2,auto);
	max-width:1240px;
	margin: 0 auto;
	width: 90%;
	align-items: center;
}
#footerNav .title ul {
	display: flex;
	list-style: none;
}
#footerNav .title ul li {
	margin-right:8px;
}
#footerNav .listGroup,
#footerNav .bnrGroup {
	display: flex;
	max-width:1240px;
	margin: 0 auto;
	width: 90%;
}
#footerNav .listGroup h5 {
	border-bottom:  1px solid #6a0016;
}
#footerNav .listGroup > div {
	width: 25%;
	margin-right: 5%;
}
#footerNav .listGroup ul {
	list-style: none;
	font-size:15px;
	padding-left: 0;
	line-height: 230%;
}
#footerNav .bnrGroup ul {
	display: flex;
	flex-wrap:wrap;
	padding-left:0;
}
#footerNav .bnrGroup ul li {
	margin-right: 2%;
}
#footerNav .bnrGroup ul li a {
	text-decoration: none;
}
#footerNav .bnrGroup section:first-of-type {
	width: 50%;
}
#footerNav .bnrGroup section:last-of-type {
	width: 45%;
}
#footerNav .bnrGroup section h6 {
	color: #6a0016;
}
#footerNav .bnrGroup section a {
	color: #6a0016;
	font-weight: 600;
	text-align: center;
	text-decoration: none;
}
#footerNav .bnrGroup section:first-of-type li {
	width: 33%;
	max-width:155px;
	padding:2px;

}
#footerNav .bnrGroup section:first-of-type li img {
	border: 3px solid #ffffff;
}
#footerNav .bnrGroup section:last-of-type li {
	width: 44%;
	max-width:220px;
	border: 1px solid #cdcdcd;
		background: #FFF;
}
#copyright {
	background: #6a0016;
	color: #FFF;
	padding: 1rem;
}
#copyright ul {
	font-size: 14px;
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
}
#copyright ul li {
	margin: 0 1rem;
}
#copyright ul li a {
		color: #FFF;
		text-decoration: none;
		border-bottom:1px solid #FFF;
		padding-bottom: 8px;
		display: block;
}
#scrollNav {
	position: fixed;
	bottom: 20vh;
	right: 0;
	background: #FFF;
	padding: 0 .8rem;
	box-shadow: 0 0 12px 0px #ddd;
	border-radius:5px;
}
#scrollNav ul {
	list-style: none;
	padding-left:0;
	text-align: center;
}
#scrollNav ul li:not(:first-of-type) {
	margin-top: .5rem;
}
#scrollNav ul img {
	max-width:28px;
	width:100%;
}
#scrollNav ul li:nth-of-type(2) img {
	width:22px
}
#scrollNav ul li:nth-of-type(3) img {
	width:24px
}
#scrollNav ul li:nth-of-type(4) img {
	width:22px
}
#footerNav .bnrGroup section a {
	font-size: 14px;
}
@media screen and (max-width:1200px) {


#footerNav .bnrGroup section:first-of-type {
	width: 50%;
}

#footerNav .bnrGroup section:last-of-type {
	width: 40%;
}


}
@media screen and (max-width:990px) {
div:has(#pageTop) {
	width:90%;
	margin:0 auto;
	text-align: center;
}
p:has(#pageTop) {
	margin:0 auto;
	line-height: 100%;
	max-width:130px;

}
#footerNav .bnrGroup section:first-of-type {
	width: 100%;
}

#footerNav .bnrGroup section:last-of-type {
	width: 100%;
}
#footerNav .bnrGroup section a {
	font-size: 12px;
}


#footerNav .bnrGroup {
	flex-wrap:wrap;
}
	#footerContact {
		display: none;
	}
	#footerNav .title {
		display: block;
	}
	#footerNav h2 {
		margin-bottom: 1rem;
		font-size: 40px;
	}
	#footerNav .listGroup h5 {
		border-bottom: none;
	}
	#block-50,#block-52,#block-57,#block-59{
		display: none;
	}
	#footerNav .listGroup > div {
		width: 100%;
		margin-right: 0;
	}
	#footerNav .listGroup {
		/*display: grid;*/
		grid-template-columns: 50% 50%;
		grid-template-rows: auto auto;
		margin-bottom: 2rem;
		display: none;
	}
	#footerNav .listGroup > div:nth-of-type(3) {
		grid-column: 1/3;
			width: 100%;
				display: grid;
		grid-template-columns: 50% 50%;
	}
	#block-58 h5 {
		margin-top: 0 !important;
	}
	#scrollNav {
		display: none;
	}
	#copyright ul li a {
		border-bottom: none;
	}
	#copyright ul li:last-of-type {
		width: 100%;
		text-align: center;
	}
	
}
@media screen and (max-width:480px) {
#footerNav h2 {
	font-size: 24px;
}
#footerNav h2 span {
	display: block;
	font-size: 15px;
}
#footerNav .title ul li img {
	max-width:40px;
}
#footerNav .listGroup h5,
#footerNav .bnrGroup section h6 {
	font-size:15px;
}
#footerNav .bnrGroup section:first-of-type li, #footerNav .bnrGroup section:last-of-type li {
	width: 32%;
}
#footerNav .bnrGroup section:first-of-type li:nth-of-type(3n),
#footerNav .bnrGroup section:last-of-type li:nth-of-type(3n) {
	margin-right: 0;
}
}



/**************************************

*共通パーツ（タイトル・ボタン）

***************************************/


h3.wp-block-heading {
	font-weight: bold;
	font-size: 20px;
	color: #2e0a19;
    border-bottom: none;
		letter-spacing: 2px;
}
h3.wp-block-heading:after {
	display: none !important;
}
h3.wp-block-heading img {
	vertical-align: top;
}
h4.wp-block-heading {
	letter-spacing: 2px;
}
.postListText_singleTermLabel {
	min-width:100px;
	margin-top:0 ;
}
.postListText_singleTermLabel_inner {
	padding:2px;
}
.postListText_date {
	margin-right:4px;
}
.postListText {
	display: flex;
	align-items:center;
}
.postListText_date {
	color: #6a0016;
}
.postListText_singleTermLabel_inner {
    background: #6a0016 !important;
}
.postListText_title a {
	text-decoration: none;
}
.vk_button.frontBtn .vk_button_link.btn,
.wp-block-vk-blocks-button .btnBnr {
	width: 90%;
	max-width:358px;
	background:#FFF
}
.bnrBtn {
	width: 90%;
	max-width:358px;	
	margin:0 auto;
}
.bnrBtn a {
	border: #cdcdcd;
	background:#FFF !important;
	width: 100% !important;
	padding:3px 0;
	border:1px solid #DDD !important;
}
.bnrBtn a:after {
	content: "";
	display: inline-block;
	margin-left: 5px;
	width: 13px;
	transform: rotate(275deg);
	height: 14px;
	background:url('kodama_inc/img/common/nav_arrow.png') no-repeat;
	background-size: contain;
}
a:hover {
	color: #000;
}
.bnrBtn a:hover {
	background:#6a0016 !important;
}
.site-body a img {
	transition: .3s all;
}
.site-body a:hover img {
	opacity:.7;
}
.ttlBar {
	background: #e2dad1;
	color: #2e0a19;
	font-weight: normal;
	font-size:20px;
	padding:.8rem 2rem;
}
.ttlBar.brown {
	background: #6a0016;
	color: #ffffff;
	font-weight: normal;
	font-size:20px;
	padding:.8rem 2rem;
}
.simpleTtl {
	border-bottom: #6a0016 2px solid;
	padding:.8rem 0;
	font-size:20px;
}
@media screen and (max-width:990px) {
	.postListText {
		flex-wrap: wrap;
	}
	.bnrBtn span {
		font-size: 16px;
	}
	.bnrBtn .vk_button .vk_button_link.btn {
		padding:.8rem 1rem;
		max-width: none;
		min-width:260px;
	}
	.simpleTtl {
		font-size: 18px;
		margin-bottom: 1rem;
	}
}
@media screen and (max-width:480px) {
	.ttlBar,
	.ttlBar.brown {
		font-size:18px;
		padding:.8rem 2rem;
		margin-bottom: .8rem;
	}
	.simpleTtl {
		font-size: 16px;
	}
}
/*
*ショールーム専用
*/
.showroom {
    color: #6a0016;
        position:relative;

}
.showroom.pcShow {

}

.showroom h2 {
    border: none;
    padding:0;
    font-family: "Google Sans Flex", sans-serif;
    margin-block: 0;
    font-optical-sizing: auto;
    font-weight: 400;
    letter-spacing: 2px;
    margin-bottom: 0;
    font-variation-settings:
    "slnt" 0,
    "wdth" 100,
    "GRAD" 0,
    "ROND" 0;
}
.showroom .wrapper {
    background: url(../../kodama_inc/img/spShowbg.jpg) no-repeat left top,#FFF;
    border: 1px solid #dfd7cf;
    border-radius:5px;
    background-size: auto 100%;
    padding: 1rem 2.5rem 1rem 80px;
    color: #6a0016;
    position:relative;  
}
.showroom h2 + p {
    margin-bottom: .8rem;
    font-size: 17px;
}
.showroom ul {
    list-style: none;
    padding-left: 0;
    margin: 0 auto;
}
.showroom .contact ul,
.showroom .open ul  {
    display: flex;
    flex-wrap:wrap;
}
.showroom .contact ul li,
.showroom .open ul li {
    width: 50%;
}
.showroom .contact ul li {
    font-size: 20px;
    margin-top: 0;
}
.showroom.spShow.contact ul li {
    font-size: 18px;
}
.showroom.spShow .contact,
.showroom.spShow .open {
    margin: 0 auto;

}
.showroom .contact ul li span {
    display: block;
    background: url(../../kodama_inc/img/common/icon_tel.png) no-repeat left center;
    background-size: auto 60%;
    font-family: "Google Sans Flex", sans-serif;
    padding-left: 40px;
    font-size: 28px;
    font-weight:500;
}
.showroom .open {
    font-family: "Google Sans Flex", sans-serif;
}
.showroom .open ul span {
    display: inline-block;
    background: #e2dad1;
    margin-right: 8px;
    padding:4px 8px;
    letter-spacing:2px;
    font-size: 17px;
}
.showroom.spShow .open {
    text-align: center;
}
.showroom.spShow .open ul {
    justify-content: center;
}
.showroom.spShow .open ul span {
    font-size: 15px;
}
.showroom .open ul li {
    font-size: 20px;
    letter-spacing:2px;
}
.showroom.spShow .open ul li {
    font-size: 16px;
    width: 46%;
}
.showroom .comment {
    margin-bottom: 0;
    font-weight: bold;
}
.showroom.spShow .comment {
    text-align: center;
    font-size:130%;
    margin:.5rem auto 1rem
}
.showroom .comment small {
    font-weight: normal;
}

.rinkoverlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: block;
    transition: .3s all;
    background: #ffffff00;
}

    .showroom.spShow .wrapper:after {
    content: "";
    display: block;
    background: url(http://design-antiqueglass.com/wp/wp-content/themes/lightning-child/kodama_inc/img/arrow_right_simple.png) no-repeat center,#dfd7cf;
    position: absolute;
    top: 0;
    right: 0;
    height: 100%;
    width: 30px;
}
.rinkoverlay:hover {
    background: #ffffff7f; 
}
@media screen and (max-width: 1200px) {
    .showroom.pcShow {
      padding-left:140px;
     }
    .showroom h2 + p {
        font-size: 15px;
    }
    .showroom .contact ul li span {
        font-size:24px ;
    }
    .showroom.spShow {
        max-width:460px;
        margin: 0 auto;
    }
    
}
@media screen and (max-width: 990px) {
    .showroom h2 {
        font-size:120%;
    }
    .showroom .contact ul li {
        font-size:18px;
    }
    .showroom .contact ul li span {
        display: block;
        background: url(http://design-antiqueglass.com/wp/wp-content/themes/lightning-child/kodama_inc/img/common/icon_tel.png) no-repeat left center;
        background-size: auto 60%;
        font-family: "Google Sans Flex", sans-serif;
        padding-left: 20px;
        font-size: 24px;
        font-weight:500;
    }
    .showroom .contact ul li span a {
        text-decoration: none;
        color: #6a0016;
    }

}
@media screen and (max-width: 480px) {
    .showroom h2 + p,
    .showroom.spShow .open ul span {
        font-size: 13px;
    }
    .showroom .contact ul li,
    .showroom.spShow .open ul li {
        font-size: 15px;
    }
    .showroom.spShow .comment {
        font-size:120%;
    }
    .showroom .contact ul li span {
        font-size: 20px;
    }
}
#spiral-note p {
	margin-bottom: 0;
	margin-block: 0;
}
.wpcf7-auto_form p {
	display: flex;
	flex-wrap:wrap;
	margin:1.5rem auto 1.5rem 0 !important;
}
.wpcf7-auto_form .wrap1 {
	width: 70%;
	margin-right: 1rem;
}
@media screen and (max-width: 480px) {
	.wpcf7-auto_form .wrap1 {
	width: 100%;
	margin-right: 0;
}
}
.reasonable .card-body {
	display: none;
}
.reasonable .custom-product-info {
	display: flex;
	flex-direction: column;
	align-items: center;
}
.reasonable .reasonablePrice,
.reasonable .reasonablePrice + p {
	order: -1;
	font-weight: normal;
	font-size: 0.9rem;
	margin-bottom: 0;
}
.reasonable .reasonablePrice {
	border-bottom:none;
	padding-bottom:0;
}
.reasonable .custom-product-info > * {
	margin:0 auto;
}
.reasonable .custom-product-info div:has(.reasonablePrice) {
	background: #ede9e5;
	width: 100%;
	padding:1rem;
	text-align: center;
}
.reasonable.vk_posts .vk_post-col-xl-4,
.reasonable .vk_post-col-xl-3 {
	margin: 0 !important;
	border-radius: 0;
}

.vk_posts.reasonable {
	margin: 0 auto;
}
.reasonablePrice2:not(.normal) {
	padding:1.5rem 1rem;
	/*color: #6a0016;*/
}
.priceExTax{
	display: block;
	text-align: center;
	line-height: 100%;
/*	font-weight: 700;
	font-size: 16px !important;*/
}
.normal .priceExTax {
	display: inline;
}
.priceInTax{
	font-size: 90%;
}
.plain .priceExTax{
	font-size: 15px !important;
}
.reasonable .bold .calculated-output *{

	color: #6a0016 !important;
}
.reasonable .bold .calculated-output .priceExTax {
	font-weight: bold;
} 
.reasonable .bold .calculated-output .priceInTax {
	font-weight: normal !important;
}
.reasonable .card {
	border:1px solid #e2dad1 !important;
}


@media screen and (max-width: 990px) {
	.reasonable .custom-product-info div:has(.reasonablePrice) {
		padding:.7rem;
	}
}
@media screen and (max-width: 768px) {
	.reasonable.vk_posts .vk_post-col-xs-6 {
		width: 50%;
	}
	.plain .priceExTax {
		font-size: 14px !important;
	}
}
@media screen and (max-width: 480px) {
	.regurationSp .custom-product-info div:has(.reasonablePrice) {
		min-height: 81px; 
		display: flex;
		flex-direction: column;
		justify-content: center;
	}
}
@media screen and (min-width: 1200px) {
    .reasonable.vk_posts .vk_post-col-xl-4 {
        width: calc(100% / 3);
    }
    .reasonable.vk_posts .vk_post-col-xl-3 {
        width: 25%;
    }
	.regurationPc .custom-product-info div:has(.reasonablePrice) {
		min-height: 101px; 
		display: flex;
		flex-direction: column;
		justify-content: center;
	}
}
@media screen and (min-width: 992px) {
    .reasonable.vk_posts .vk_post-col-xl-4  {
        width: calc(100% / 3);
    }

    .reasonable.vk_posts .vk_post-col-lg-3 {
        width: 25%;
    }

    .reasonable.vk_posts .vk_post-col-lg-4 {
        width:33.3%;
    }

    .reasonable.vk_posts .vk_post-col-lg-6 {
        width: 50%;
    }

    .reasonable.vk_posts .vk_post-col-lg-12 {
        width:100%;
    }
}
@media screen and (min-width: 768px) {
    .reasonable.vk_posts .vk_post-col-md-2 {
        width: 50%;
    }

    .reasonable.vk_posts .vk_post-col-md-3 {
        width: calc(100% / 4);
    }

    .reasonable.vk_posts .vk_post-col-md-4 {
        width: calc(100% / 3);
    }
    .reasonable.vk_posts .vk_post-col-md-4:nth-child(3n+2) {
		border-right: none !important;
		border-left: none !important;

	}
    .reasonable.vk_posts .vk_post-col-md-4:nth-child(3n+2):last-child {
		border-right: 1px solid #e2dad1 !important;
	}
	.reasonable.vk_posts .vk_post-col-md-6 {
        width: 50%;
    }
}
