@charset "UTF-8";

* {
	box-sizing: border-box;
}

:root {
	--primary-color: #333;
	--bt-color: #333232;
	--co_red: #D02620;
	--unit: 1.125rem;
	--small: 240px;
	--font-serif: 'Noto Serif JP', serif;
}

.roboto {
	font-family: 'Roboto', sans-serif;
}
.serif{
	font-family: 'Noto Serif JP', serif;
}

a[href^="tel:"] {
	pointer-events: none;
}
/*/////////// base ////////////*/
html {
	-webkit-text-size-adjust: 100%;
	scroll-behavior: smooth;
	/* overflow-x: hidden; */
}

body {
	font-family: 'Roboto', sans-serif, 'Noto Sans CJK JP', "ヒラギノ角ゴ Pro W3", "游ゴシック", "游ゴシック体", "メイリオ", sans-serif;
	font-display: swap;
	font-size: var(--unit);
	line-height: 1.2;
	color: #000;
	background: #FFF none no-repeat 0 0 scroll;
	box-sizing: border-box;
	margin: 0px;
	padding: 0px;
	overflow-y: auto;
	overflow-x: hidden;
	height: 100%;
}

img {
	height: auto;
	vertical-align: bottom;
	max-width: 100%;
}

.img_w100 {
	width: 100%;
}

.img_max100 {
	max-width: 100%;
}

.clearfix,
.wrapper,
.main_wrapper {
	*zoom: 1;
}

.clearfix:after,
.wrapper:after,
.main_wrapper:after {
	content: "";
	display: table;
	clear: both;
}
figure{
	margin:0;
}
a {
	text-decoration: none;
	color: #000;
}

p {
	/* line-height: 1.6; */
	font-weight: 400;
	font-size: 20px;
}

strong {
	font-weight: 700;
}

.pt_20 {
	padding-top: 20px;
}
.pb_25{
	padding-bottom:25px;
}
.mr_0 {
	margin-right: 0px !important;
}

.mt_10 {
	margin-top: 10px;
}

.mt_20 {
	margin-top: 20px;
}

.mt_30 {
	margin-top: 30px;
}

.mt_40 {
	margin-top: 40px;
}

.mt_60 {
	margin-top: 60px;
}
.mb_0 {
	margin-bottom: 0px !important;
}
.mb_10 {
	margin-bottom: 10px;
}

.mb_15 {
	margin-bottom: 15px;
}

.mb_20 {
	margin-bottom: 20px;
}

.mb_25 {
	margin-bottom: 25px;
}

.mb_30 {
	margin-bottom: 30px;
}

.mb_35 {
	margin-bottom: 35px;
}

.mb_40 {
	margin-bottom: 40px;
}

.mb_45 {
	margin-bottom: 45px;
}

.mb_50 {
	margin-bottom: 50px;
}

.mb_60 {
	margin-bottom: 60px;
}

.img__border {
	border: 1px solid #CCC;
	box-sizing: border-box;
}

sup {
	font-size: 54%;
}

.red {
	color: #ce323a;
}

.blue {
	color: #3F8DC2;
}
.pc_none {
	display: none !important;
}

.center {
	text-align: center;
}

.align_right {
	text-align: right;
}

.align_left {
	text-align: left;
}
.under_line{
	text-decoration:underline;
	display:inline-block
}
.hr-brder {
	width: 100%;
	height: 1px;
}
.sm_font {
	font-size: 12px;
	font-weight: 300;
}

.map {
	width: 100%;
	height: 100%;
	aspect-ratio: 16 / 9;
}

.wrapper {
	max-width: 1700px;
	margin: 0px auto;
	padding: 0 10px;
}

.sub__wrap {
	max-width: 1280px;
	box-sizing: border-box;
	margin: 0px auto;
	width: 100%;
	padding: 0px 40px;
}

.small__wrap {
	max-width: 1000px;
	box-sizing: border-box;
	margin: 0px auto;
	width: 100%;
	padding: 0px 40px;
}

.ttl_color_w {
	color: #fff;
}
.ttl {
	font-size: 45px;
	font-weight: bold;
	line-height: 1.2;
	margin-bottom: 30px;
}
.middle_ttl {
	font-size:clamp(25px,3vw,30px);
	font-weight: 700;
	font-family: var(--font-serif);
	line-height: 0.42;
	letter-spacing: 0.02em;
	margin-right: 46px;
}

.middle_ttl span {
	font-size:clamp(20px,2vw,26px);
	font-weight: 400; 
	display: inline-block;
}

.local_ttl {
	font-size: 45px;
	font-weight: bold;
	line-height: 1.2;
	margin-bottom: 20px;
}

.plain_ttl {
	font-size: 20px;
	font-weight: bold;
}
.lead_ttl {
	font-size: 125%;
	font-weight: bold;
}

.local_sub-ttl{
	font-size: 22px;
	font-weight: bold;
}
.border_ttl{
	font-size:25px;
	border-bottom:1px solid #ddd;
	margin-bottom:25px;
	padding-bottom:10px;
}

.products-single_ttl{
	font-size:18px;
	font-weight:500;
}
.products-single_sub_ttl{
	font-size:16px;
	font-weight:400;
}
.products-single_text{
	font-size:12px;
	font-weight:400;
}
.under_lead {
	color: #fff;
	font-family: var(--font-serif);
	line-height: 1.45;
	margin-bottom: 24px;
}

.common_btn {
	text-align: center;
	position: relative;
	border: 1px solid #000;
	display: block;
	padding: 11px 30px;
	transition: all .3s ease-in;
}

.common_btn:before {
	content: "";
	display: inline-block;
	width: 6px;
	height: 6px;
	margin: 0 10px;
	border-right: 1px solid #000;
	border-top: 1px solid #000;
	transform:rotate(45deg) translateY(-50%);
	position: absolute;
	left: 0;
	top: 50%;
	transition: all .3s ease-in;
}

.common_btn:hover {
	border: 1px solid #fff;
	background: var(--bt-color);
	color: #fff;
}

.common_btn:hover:before {
	border-right: 1px solid #fff;
	border-top: 1px solid #fff;
}
.common_btn.arrow_r::before{
	left:inherit;
	right:0;
}

.w-btn .common_btn {
	border: 1px solid #fff;
	color: #fff;
}
.w-btn .common_btn:hover {
	background: #fff;
	color: #000;
}
.w-btn .common_btn:before ,.dark-btn .common_btn:before{
	border-color: #fff;
}
.w-btn .common_btn:hover:before,.dark-btn .common_btn:hover:before,.dark-btn .common_btn.is-active::before {
	border-color: #000;
}

.dark-btn .common_btn{
	color: #fff;
	background:#333232;
}
.dark-btn .common_btn:hover,.dark-btn .common_btn.is-active{
	color: #000;
	background:#fff;
}


.bg_black{
	background:#000;
}
.bg_w{
	background:#fff;
}
.bg_dark_cream {
	background:#9E9485;
}
.border_img{
	border:1px solid #ccc;
}
table {
	border-collapse: separate;
	border-spacing: 0;
	border: 0;
	width: 100%;
}
/*//フォントサイズ//*/
.font_16{
	font-size:16px;
}
.font_18{
	font-size:18px;
}
.font_20{
	font-size:20px;
}
.font_22{
	font-size:22px;
}
.font_24{
	font-size:24px;
}
.font_26{
	font-size:26px;
}
.font_28{
	font-size:28px;
}
.font_29{
	font-size:29px;
}
.font_50{
	font-size:50px;
}
/*///font-weight////*/
.font-l{
	font-weight:300;
}
.font-r{
	font-weight:400;
}
.font-m{
	font-weight:500;
}
.font-b{
	font-weight: bold;
}

/*///装飾系////*/
.arrow-l::before {
	content: "";
	display: inline-block;
	width: 6px;
	height: 6px;
	margin: 0 10px;
	border-left: 1px solid #fff;
	border-bottom: 1px solid #fff;
	transform: rotate(45deg);
	vertical-align: middle;
}

.arrow-r::before {
	content: "";
	display: inline-block;
	width: 6px;
	height: 6px;
	margin: 0 10px;
	border-right: 1px solid #fff;
	border-top: 1px solid #fff;
	transform: rotate(45deg);
	vertical-align: middle;
}

.hover_cover img {
	transform: scale(1.0);
	transition: all .3s ease-out;
}

.hover_cover:hover img {
	transform: scale(1.1);
}

.triggerbox .ttl {
	overflow: hidden;
}

.triggerbox .ttl span {
	transition: transform 1s;
	transition-timing-function: cubic-bezier(.165, .84, .44, 1);
	transform: translate3d(0, 100%, 0);
	display: block;
}

.triggerbox.is-show .ttl span {
	transform: translate3d(0, 0, 0);
}

.triggerbox .txt {
	opacity: 0;
	transition: 0.5s cubic-bezier(0.55, 0.08, 0.68, 0.53) 0.5s;
	transform: translateY(10px);
}

.triggerbox.is-show .txt {
	opacity: 1;
	transform: translateY(0px);
}

.card-list {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	gap:10px 22px;
	margin-bottom: 60px;
}
.card-list::before{
	content:"";
	display:block;
	width: calc(100% / 3 - 15px);
	order:1;
}
.card-list .card-list--item {
	width: calc(100% / 3 - 15px);
	position: relative;
}

.card-list--item .hover_cover {
	display: block;
	overflow: hidden;
}


.card-list .card-list--item .text-btn,
.toggle-btn {
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	text-align: center;
	color: #fff;
	background: rgba(0, 0, 0, 60%);
	padding: 10px 17px 13px;
	font-size: 20px;
}

.card-list .card-list--item .text-btn::after {
	content: "";
	display: inline-block;
	width: 8px;
	height: 8px;
	margin: 0 10px;
	border-right: 2px solid #fff;
	border-top: 2px solid #fff;
	transform: rotate(45deg);
	position: absolute;
	right: 17px;
	top: 20px;
}


.toggle-line span {
	height: 2px;
	width: 10px;
	background-color: #fff;
	display: block;
	position: absolute;
	right: 17px;
	top: 24px;
	transition: all 0.6s cubic-bezier(0.19, 1, 0.22, 1);
}

.toggle-line span:nth-child(2) {
	transform: translateY(0px) rotate(90deg);
}

.toggle.active span:nth-child(2) {
	transform: translateY(0px) rotate(180deg);
}

.card-list--inner {
	width: calc(100vw - 98px);
	max-width: 1200px;
	position: absolute;
	z-index: 10;
	padding: 50px 98px;
	background: rgba(0, 0, 0, 80%);
	box-sizing: border-box;
	/* display: none; */
	opacity: 0;
	pointer-events: none;
}

.card-list--inner.center-tr {
	left: 50%;
	transform: translateX(-50%);
}

.toggle.active~.card-list--inner {
	/* display: block; */
	opacity: 1;
	pointer-events: auto;
	transition: all 0.5s;
}

.card-list--inner-box {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(165px, 1fr));
	gap: 28px 50px;
}

.card-list--inner-box .img_conten {
	position: relative;
	max-width: 100%;
	width: 212px;
}

.card-list--inner-box .img_conten a {
	display: block;
}

.card-list--inner-box .img_conten img {
	width: 100%;
}

.card-list--inner-box .img_conten .put-on {
	position: absolute;
	width: 100%;
	text-align: center;
	top: 50%;
	transform: translateY(-50%);
	font-weight: 400;
}

.card-list--inner-box .img_conten .put-on::before {
	border-right: 2px solid #000;
	border-top: 2px solid #000;
	position: absolute;
	bottom: -42px;
	left: 90px;
}

.card-list--inner-box .img_conten .bottom-on {
	color: #fff;
	font-size: 20px;
	font-weight: 400;
	margin-left: 0;
	margin-top: 16px;
}
.card-list .card-list--item .common_btn::before {
	left: inherit;
	right: 0;
}
/*theme-arrow*/
.right-tr::before,
.center-tr::before {
	display: block;
	content: "";
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 16px 9px 0 9px;
	border-color: #ffffff transparent transparent transparent;
	position: absolute;
	top: 0;
	left: calc(100% / 3 * 2 / 4);
}

.center-tr::before {
	left: 50%;
}

/*///////herader//////////*/
#header {
	position: fixed;
	z-index: 20;
	top: 0;
	left: 0;
	width: 100%;
	transition: .3s all;
}
header .pc_dropdown{
	display:none;
}
.pc_dropdown {
	width: 100%;
	position: absolute;
	left: 0;
	top: 71px;
	background: rgba(0,0,0,0.5);
	padding: 60px 0 70px;
}
.pc_dropdown .inner_nav {
	display: flex;
	flex-wrap: wrap;
	max-width: 1280px;
	padding: 0 40px;
	margin: auto;
	gap: 24px;
}
.pc_dropdown .inner_nav-item{
	max-width: 220px;
	width: 100%;
}
.pc_dropdown .inner_nav-item a{
	width: 100%;
	border: 1px solid #fff;
	text-align: center;
	padding: 21px 0 20px;
	display:block;
	font-size: 16px;
	transition:.5s all;
}
.pc_dropdown .inner_nav-item:hover a {
	background: #000;
}

.logo {
	width:230px;
	margin-right: 20px;
	/* padding-left: 59px; */
	padding-left: 20px;
	padding-bottom: 10px;
	padding-top: 13px;
	position: absolute;
	left: 0;
	top: 0;
}

.fix-d,
.fixed .fix-n {
	display: none;
}

.fixed .fix-d {
	display: block;
}

.inner_pc_nav {
	display: flex;
	justify-content: flex-end;
	align-items: center;
	padding-top: 13px;
	position: relative;
}
.pc_nav {
	width: calc(98% - 250px);
	display: flex;
	justify-content: flex-end;
}
.pc_nav ul {
	display: flex;
	flex-wrap: nowrap;
	align-items: center;
}

.pc_nav ul li span{
	display:block;
	position: relative;
}

.pc_nav ul li:not(:last-child) span{
	margin-right: min(39px, 2vw);
	padding-bottom: 10px;
}

.pc_nav ul li a {
	font-weight: 400;
	color: #fff;
	font-size: min(20px, 1.28vw);
	line-height: 1.2;
}

.pc_nav ul li span:after {
	content: "";
	display: block;
	height: 1px;
	width: 100%;
	background: #ffffff;
	position: absolute;
	transform: translateY(3px);
	transition: .3s all;
	opacity: 0;
}

.pc_nav ul .inq {
	position: relative;
	width: 205px;
	margin-left: 25px;
	margin-top: -13px;
}

.pc_nav ul .inq a {
	padding: 24px 0;
	width: 100%;
	display: block;
	background: var(--bt-color);
	text-align: center;
	transition: all .3s ease-in;
}
/* 
.inq a::before {
	content: "";
	display: inline-block;
	background: url(../img/mail_icon.svg) no-repeat;
	background-size: contain;
	width: 23px;
	height: 17px;
	margin-right: 9px;
	vertical-align: top;
	transition: all .3s ease-in;
} */

.pc_nav ul .inq:hover a {
	background: #fff;
	color: #000;
}

/* .inq:hover a::before {
	background: url(../img/mail_icon_b.svg) no-repeat;
} */

.pc_nav ul .inq::after {
	content: none;
}

.fixed .pc_nav ul li:after {
	background: #000;
}

.pc_nav ul li:hover span:after {
	transform: translateY(0);
	opacity: 1;
}

.fixed {
	background: #fff;
	transition: .3s all;
	box-shadow: 0 1px 3px 0px rgb(0 0 0 / 10%);
}

.fixed .pc_nav ul li:not(:last-child) a {
	color: #000;
}
.fixed .pc_nav ul li .pc_dropdown a{
	color:#fff;
}
/*//////検索///////*/
.search_icon {
	padding-bottom: 10px;
	cursor:pointer;
}
/*==テキスト入力とボタンinput共通設定*/
.search_wrap input{
	-webkit-appearance:none;/*SafariやChromeのデフォルトの設定を無効*/
	outline: none;
	cursor: pointer;/*カーソルを指マークに*/
	color: #666;
}
.search .search_icon::before {
	content: "";
	display: block;
	background: url(../img/search_icon.svg) no-repeat;
	background-size: contain;
	width: 20px;
	height: 20px;
	filter: invert(100%) sepia(0%) saturate(2%) hue-rotate(296deg) brightness(104%) contrast(101%);
}

.fixed .search .search_icon::before {
    filter: invert(1) sepia(0%) saturate(2%) hue-rotate(296deg) brightness(0%) contrast(101%);
}

.search_wrap{
	position:absolute;
	top:150px;
	right:20px;
	z-index: -1;
	opacity: 0;
	width:0;
	transition: all 0.4s;
	border-radius: 5px;
}
.search_wrap.panelactive{
	opacity: 1;
	z-index: 3;
	width:400px;
	padding:20px;
	top:80px;
	background:#fff;
}
/*==検索窓*/
.search_wrap #searchform{
	display: none;
	position:relative;
}
.search_wrap.panelactive #searchform{
	display: block;/*検索窓を表示*/
}
.search_wrap input[type="text"] {
	width: 100%;
	border: none;
	border-bottom: 2px solid #ccc;
	transition: all 0.5s;
	letter-spacing: 0.05em;
	padding: 5px 0 6px;
}
.search_wrap.panelactive #searchform .searchForm-submit {
	background: #000;
	height: 100%;
	width: 40px;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	right: 0;
	cursor:pointer;
}
.search_wrap.panelactive #searchform .searchForm-submit::before,.sp_search .search_wrap #searchform .searchForm-submit::before {
	content: "";
	display: block;
	background: url(../img/search_icon.svg) no-repeat;
	background-size: contain;
	width: 20px;
	height: 20px;
	margin: auto;
	filter: invert(100%) sepia(0%) saturate(2%) hue-rotate(296deg) brightness(104%) contrast(101%);
}

.second .search .search_icon::before{
	filter:none;
}
/*//スマホ検索//*/
.sp_search{
	padding:20px;
}
.sp_search .search_wrap {
	position: static;
	opacity: 1;
	border-radius: 0;
	width: 100%;
}
.sp_search .search_wrap #searchform {
	display: block;
}
.sp_search .search_wrap input[type="text"] {
	padding: 5px;
	border: 0;
}
.sp_search .search_wrap .text_ttl {
	color: #fff;
	margin-bottom:5px;
}
.sp_search .search_wrap #searchform .searchForm-submit::before{
	filter:none;
}
.sp_search .search_wrap #searchform .searchForm-submit {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	right: 10px;
}
/*//検索結果ページ///*/
.search_content{
	padding-bottom:60px;
}
.search_content a{
	text-decoration:underline;
}

/*///下層ヘッダー////*/
.second #header {
	position: sticky;
	background: #fff;
}

.second .fix-d {
	display: block;
}

.second .fix-n {
	display: none;
}

.second .pc_nav ul li:not(:last-child) a {
	color: #000;
}
.second .pc_nav ul li .pc_dropdown .inner_nav-item a{
	color:#fff;
} 

.second .pc_nav ul li:after {
	background: #000;
}

/*///////メインビジュアル//////////*/
.main_visual {
	position: relative;
	overflow: hidden;
}

.mv_ttl_box {
	z-index: 1;
	position: absolute;
	bottom: calc(100% - 62.5%);
	overflow: hidden;
}

.mv_ttl_box .mv_ttl {
	font-size: 73px;
	line-height: 1.19;
	color: #fff;
	letter-spacing: 0.043em;
	font-weight: 300;
	transition-timing-function: cubic-bezier(.165, .84, .44, 1);
	transform: translate3d(0, 150%, 0);
	transition: transform 1s;
}


.mv_ttl_box span {
	font-size: 36px;
	display: block;
	letter-spacing: 0.036em;
	font-family: 'Roboto Flex', sans-serif;
	font-weight: 100;
	color: #fff;
	transition-timing-function: cubic-bezier(.165, .84, .44, 1);
	transform: translate3d(0, 150%, 0);
	transition: transform 1.5s;
	margin-left:18px;
}

.mv_ttl_box.is-show .mv_ttl,
.mv_ttl_box.is-show span {
	transform: translate3d(0, 0, 0);
}

.main_visual .bottom_link {
	background: var(--bt-color);
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: flex-end;
	padding: 18px 20px;
}

.main_visual .bottom_link p:not(:last-child) {
	margin-right: 38px;
}

.main_visual .bottom_link a {
	color: #fff;
	text-align: center;
	font-size: 20px;
	line-height: 1.2;
	padding: 11px 0 9px;
	display: block;
	width: 240px;
	border: 1px solid #fff;
	position: relative;
	transition: all .3s ease-in;
}

.main_visual .bottom_link a::before {
	position: absolute;
	left: 0px;
	top: calc(100% - 24px);
	transition: all .3s ease-in;
}

.main_visual .bottom_link a:hover {
	background: #fff;
	color: #000;
}

.main_visual .bottom_link a:hover::before {
	border-right: 1px solid #000;
	border-top: 1px solid #000;
}

/*//////////メインスライダー//////////////*/
.visual_pic {
	height: 60vh;
	width: 100vw;
	overflow: hidden;
}

.visual_pic .swiper-wrap {
	margin: 0 calc(50% - 50vw);
	max-width: 100vw;
	position: relative;
	overflow: hidden;
}

@keyframes zoom-in {
	0% {
		transform: scale(1);
	}

	100% {
		transform: scale(1.15);
	}
}

.visual_pic .swiper-slide-active .slide-img,
.visual_pic .swiper-slide-duplicate-active .slide-img,
.visual_pic .swiper-slide-prev .slide-img {
	animation: zoom-in 8s linear 0s 1 normal both;
}

.visual_pic .slide-img img {
	object-fit: cover;
	height: 100vh;
	width: 100vw;
}

.visual_pic .slide-title {
	animation: zoom-in 2s .5s var(--easing) both;
}

/*///////各コンテンツ//////////*/
main {
	overflow: hidden;
}

.top-page {
	background: #F2EFEC;
}

/*top-Renovation*/
.top-renovation {
	padding-top: 124px;
	margin-bottom: 213px;
	position: relative;
	z-index: 1;
}

.top-renovation::before {
	content: "";
	display: block;
	width: 100%;
	height: 100%;
	background: #fff;
	position: absolute;
	right: 18%;
	z-index: -1;
}

.renovation-link {
	display: flex;
	flex-wrap: wrap;
	gap: 25px 24px;
	margin-top: 44px;
}

.renovation-link .link a {
	display: block;
	height: 180px;
	width: 180px;
	border: 1px solid #000;
	background: #fff;
	text-align: center;
	position: relative;
	padding: 54px 0 0;
}

.renovation-link .link a::after {
	content: "";
	display: block;
	width: 54px;
	height: 54px;
	position: absolute;
	left: 50%;
	transform: translateX(-50%);
	bottom: 24px;
	transition: all .3s ease-in;
}

.renovation-link .link a:hover {
	background: var(--bt-color);
	color: #fff;
	transition: all .3s ease-in;
}

.renovation-link .link:last-child {
	width: 100%;
	max-width: 588px;
}

.renovation-link .link:last-child a {
	width: 100%;
	height: 150px;
	padding: 36px 0 23px;
}


.renovation-link .link .link1::after {
	background: url(../img/b_icon2.svg) no-repeat;
	background-size: contain;
}

.renovation-link .link .link1:hover::after {
	background: url(../img/w_icon2.svg) no-repeat;
	background-size: contain;
}

.renovation-link .link .link2::after {
	background: url(../img/b_icon3.svg) no-repeat;
	background-size: contain;
}

.renovation-link .link .link2:hover::after {
	background: url(../img/w_icon3.svg) no-repeat;
	background-size: contain;
}

.renovation-link .link .link3::after {
	background: url(../img/b_icon1.svg) no-repeat;
	background-size: contain;
}

.renovation-link .link .link3:hover::after {
	background: url(../img/w_icon1.svg) no-repeat;
	background-size: contain;
}

.renovation-link .link .link4::after {
	background: url(../img/b_icon4.svg) no-repeat;
	background-size: contain;
	top: inherit;
	bottom: 23px;
}

.renovation-link .link .link4:hover::after {
	background: url(../img/w_icon4.svg) no-repeat;
	background-size: contain;
}

.top-renovation .slider_box {
	position: relative;
	max-width: 833px;
	width: 43.39vw;
	margin-left: auto;
}

.top-renovation .slider_box .slide-img {
	position: relative;
	height: 574px;
	min-height: 1px;
}

.top-renovation .slider_box .slide-img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.top-renovation .slider_box .slide-img .text {
	position: absolute;
	right: 15px;
	bottom: 15px;
	z-index: 1;
	color: #fff;
}

.top-renovation .slider_box::before {
	content: "";
	display: block;
	background: rgb(88, 86, 86);
	background: linear-gradient(180deg, rgba(88, 86, 86, 1) 0%, rgba(0, 0, 0, 1) 100%);
	position: absolute;
	left: -81px;
	top: 54px;
	width: 100%;
	height: 100%;
	z-index: 1;
}

.slider_area {
	display: flex;
	justify-content: space-between;
	padding-top: 61px;
}

.slider_area .slider_area_r {
	width: calc(50% + 40px);
}

.slider_area .slider_area_r .slider_area_r-inner {
	margin-left: auto;
	max-width: 640px;
	padding-left: 40px;
}

.slider_area .slider_area_l {
	margin-top: -141px;
	width: calc(50% + 81px);
}

.slider_area .slider_area_l .slider_area .ttl {
	margin-bottom: 11px;
}

/*top-products*/
.top-products {
	margin: 0px 0px 30px;
}

.products-list {
	display: flex;
	flex-wrap: wrap;
}

.products-list-item {
	width: calc(100% / 2);
	position: relative;
	overflow: hidden;
	max-height:350px;
}

.products-list-item img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position:bottom;
}

.products-list-item p {
	position: absolute;
	bottom: 31px;
	width: 100%;
	text-align: center;
	font-weight: 500;
	color: #fff;
	letter-spacing: 0.02em;
}

/*top-architect*/
.architect-content {
	margin-bottom: 52px;
}
.architect-content .sub__wrap p{
	color:#fff;
}

.top-architect-bg {
	background: url(../img/for-architect_bg.jpg) no-repeat;
	background-size: cover;
	height: 442px;
	width: 100%;
	position: relative;
	z-index: 0;
}

.top-architect-bg .sub__wrap {
	position: relative;
	z-index: 0;
	height: 100%;
}

.top-architect-bg .ttl_box {
	position: absolute;
	bottom: 138px;
	left: 40px;
	z-index: 1;
}

.top-architect .ttl_box .ttl {
	margin-bottom: 0;
	color: #fff;
}

.top-architect .ttl_box p {
	color: #fff;
}

.top-architect .stone .sub__wrap {
	margin-top: -100px;
	padding: 83px 20px;
	position: relative;
	z-index: 0;
}

.top-architect .stone .sub__wrap::before {
	content: "";
	display: block;
	/*background: #fff;  20230105*/
	background: #000;	
	width: 200%;
	height: 100%;
	position: absolute;
	left: -10%;
	top: 0;
	z-index: -1;
	transform: scale(0, 1);
	transform-origin: right top;
}

.top-architect .stone.is-show .sub__wrap::before {
	transition: .5s cubic-bezier(0.45, 0.05, 0.55, 0.95);
	transform: scale(1, 1);
}

.top-architect .stone-grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
	gap: 80px;
	margin-top: 34px;
	margin-bottom: 40px;
}

.top-architect .stone-grid .group figure {
	margin-bottom: 14px;
}

.top-architect .stone-grid .group img {
	width: 100%;
}

.top-architect .stone-grid .group {
	text-align: center;
}

.top-architect .btn {
	margin-bottom: 47px;
}

/*20230105追記*/
.top-architect .common_btn {
	width: 240px;
	margin-left: auto;
	color:#fff;
	border: 1px solid #fff;
}
.top-architect .common_btn:before{
	border-right: 1px solid #fff;
	border-top: 1px solid #fff;
}
.top-architect .common_btn:hover {
	border: 1px solid #000;
	background: #fff;
	color: #000;
}

.top-architect .common_btn:hover:before {
	border-right: 1px solid #000;
	border-top: 1px solid #000;
}

.top-architect .stone .common_btn{
	margin-right:20px;
}

/*20230105追記ここまで*/


.architect-info {
	margin-top: -45px;
	position: relative;
}

.architect-info-flex {
	display: flex;
	justify-content: space-around;
    flex-wrap: wrap;
}

.architect-info-flex .pic1 {
	position: relative;
	width: 600px;
	overflow: hidden;
	cursor: pointer;
}
.architect-info-flex .pic1 .large-text {
	position: absolute;
	z-index: 1;
	left: 40px;
	top: 42%;
	margin-bottom: 0;
	transform: translateY(-50%);
}
.architect-info-flex .pic1::before {
	opacity: 0;
	transition: all .3s ease;
}

.architect-info-flex .pic1:hover::before {
	content: "";
	display: block;
	width: 100%;
	height: 100%;
	background: rgb(0 0 0 / 100%);
	position: absolute;
	top: 0;
	left: 0;
	z-index: 1;
	opacity: 0.3;
}

.architect-info-flex .pic1 img,
.architect-info-flex .pic2 img {
	transform: scale(1.0);
	transition: all .5s ease-out;
}

.architect-info-flex .pic1:hover img,
.architect-info-flex .pic2:hover img {
	transform: scale(1.1, 1.1);
}

.architect-info-flex .pic2 {
	width: 184px;
	overflow: hidden;
}


.architect-info-flex .pic1 img,
.architect-info-flex .pic2 img {
	height: 100%;
	width: 100%;
	object-fit: cover;
}

.architect-info-flex .btn {
	position: absolute;
	bottom: 9px;
	right: 7px;
	margin-bottom: 0;
	z-index: 2;
}

.architect-info-flex .btn .common_btn {
	background: var(--bt-color);
	color: #fff;
	border: 0;
}

.architect-info-flex .pic1:hover .btn .common_btn {
	background: #fff;
	color: #000;
}

.architect-info-flex .pic1:hover .btn .common_btn::before {
	border-right: 1px solid #000;
	border-top: 1px solid #000;
}

.architect-info-flex .info {
	background: var(--bt-color);
	padding: 24px 48px;
	width: 416px;
	box-sizing: border-box;
	flex-direction: column;
	display: flex;
}

.architect-info-flex p {
	color: #fff;
}

.architect-info-flex .large-text {
	margin-top: auto;
	margin-bottom: 19px;
	font-size: 33px;
	font-weight: 700;
}

/*top-news*/
.top-news {
	padding: 0px 0px 40px;
}

.swiperNews .swiper-slide {
	position: relative;
}

.swiperNews .data {
	background: #fff;
	padding: 23px 30px 22px;
	border: 1px solid #CCCCCC;
	box-sizing: border-box;
}

.swiperNews .data .day {
	margin-bottom: 5px;
}
.swiperNews .data .txt {
	line-height:1.6;
}

.swiperNews .label {
	padding: 7px 12px 7px 13px;
	display: inline-block;
	position: absolute;
	right: 0;
	z-index: 1;
	font-size: 14px;
}
.swiperNews .column_label{
	background:#000;
	color:#fff;
}
.swiperNews .columns {
	background: #DBD5CD;
}

.label.info {
	background: #A6A39D;
}

.label.prducts {
	background: #535353;
	color: #fff;
}
.label.columns{
	background:#fff;
	color: #333;
}

.swiperNews .slide-img {
	overflow: hidden;
}

.swiperNews .slide-img img {
	width: 100%;
}

/*///////下層ページ//////////*/
.bg_cream{
	background:#F2EFEC;
	padding:30px;
}

.second-content {
	background: #F2EFEC;
	padding-top: 20px;
	/* padding-bottom: 60px; */
}
.second-container .nomal_text{
	color: #fff;
	line-height: 1.8;
	letter-spacing: 0.017em;
	font-weight: 300;
	font-size: 16px;
}
.second-container .nomal_text_b{
	color:#333;
}
.second-visual {
	width: 100%;
	height: 224px;
	position: relative;
}
.second-visual .second-ttl_box{
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	width: 100%;
	text-align: center;
}
.second-visual .second-ttl {
	font-size: 45px;
	letter-spacing: 0.045em;
	color: #fff;
	display:inline-block;
}
.second-visual .second-ttl .second-sub_ttl{
	display:block;
	font-weight:300;
	font-size:26px;
	text-align:left;
}

.second-bg {
	background: url(../img/product_bg2.webp) no-repeat center;
	background-size: cover;
}

.purpose-bg {
	background: url(../img/by_purpose__bg.jpg) no-repeat center;
	background-size: cover;
}
.purpose-bg {
	background: url(../img/by_purpose__bg.jpg) no-repeat center;
	background-size: cover;
}
.product-bg {
	background: url(../img/by_categories__bg.jpg) no-repeat center;
	background-size: cover;
}
.themes-bg {
	background: url(../img/by_theme__bg.jpg) no-repeat center;
	background-size: cover;
}
.column-bg {
	background: url(../img/column_bg.webp) no-repeat center;
	background-size: cover;
}
.cases-bg {
	background: url(../img/cases_bg.webp) no-repeat center;
	background-size: cover;
}

.renovation-bg{
	background: url(../img/renovation_bg.webp) no-repeat center;
	background-size: cover;	
}

.architect-bg{
	background: url(../img/architect_bg.webp) no-repeat center;
	background-size: cover;	
}

.second .top-products {
	background: #F2EFEC;
	margin-bottom: 0;
	padding-bottom: 43px;
}

.tab_link {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: center;
	margin-bottom: 40px;
}

.tab_link .link {
	width: calc(100% / 2);
	text-align: center;
	position: relative;
}

.tab_link .link:not(:last-child)::before {
	content: "";
	display: block;
	height: 28px;
	width: 1px;
	background: #707070;
	position: absolute;
	right: 0;
	top: 19px;
}

.tab_link .link a {
	display: block;
	padding: 19px 0 18px;
	transition: .5s all;
	width: calc(100% - 18px);
	margin: auto;
	font-weight: 600;
    font-size: 120%;
}

.tab_link .link:first-child a {
	width: calc(100% - 9px);
	margin-left: 0;
}

.tab_link .link:last-child a {
	width: calc(100% - 9px);
	margin-right: 0;
}

.tab_link .link:hover a {
	background: #333232;
	color: #fff;
}

.tab_link .link.is-active a {
	background: #333232;
	color: #fff;
}

.item-list {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));
	gap: 23px;
}

.item-list li .cat-item {
	background: #000;
	padding: 7px 11px 5px;
	position: relative;
	margin-top: -33px;
}

.item-list li .cat-item span {
	font-size: 14px;
	color: #fff;
	line-height: 1.2;
	display: inline-block;
}

.item-list li .cat-item span:not(:first-child)::before{
	content:"/";
	display:inline-block;
}

.item-list li .item-ttl-box {
	background: #fff;
	padding: 17px 34px 16px;
	position: relative;
}

.item-list li .item-ttl-box::before {
	content: "";
	display: block;
	width: 20px;
	height: 1px;
	background: #707070;
	position: absolute;
	top: 50%;
	left: 0;
	transform: translateY(-50%);
}
.item-list li .item-ttl-box .item-ttl{
	font-size:18px;
}
.item-list li img{
	width:100%;
}

.theme-content {
	padding-bottom: 55px;
}

.flex-content {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

.half-box {
	width: 49%;
}
.three-box {
	width: 32%;
}
.three-box-sub{
	width:65%;
}

.l {
	width: 70%;
}

.s {
	width: 28%;
}

.lm {
	width: 60%;
}
.sm {
	width: 38%;
}

.grid-list {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(150px, 1fr));
	gap: 30px 25px;
}

.purose-page .flex-content::before,
.purose-page .flex-content::after {
	content: "";
	display: block;
	width: clamp(250px, 22.66vw, 290px);
}

.purose-page .flex-content::before {
	order: 1;
}

.purose-page .flex-content::after {
	order: 2;
}

.purose-page .flex-content {
	gap: 43px 13px;
	justify-content: center;
}

.purose-page .group-link {
	width: clamp(250px, 22.66vw, 290px);
	min-height: 136px;
	overflow: hidden;
}

.purose-page .group-link-inner {
	display: flex;
	position: relative;
}


.purose-page .group-link .icon-box {
	background: #333232;
	max-width: 107px;
	width: 100%;
	padding-top: 46.9%;
	position: relative;
}

.purose-page .group-link .icon-box .icon {
	width: 70px;
	height: 70px;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
}

.purose-page .group-link .icon-box img {
	width: 100%;
	object-fit: contain;
}

.purose-page .group-link .txt {
	width: 184px;
	background: #fff;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	position: relative;
}

.purose-page .group-link .txt span {
	font-size: 20px;
}

.purose-page .group-link:hover .txt span {
	z-index: 1;
	color: #fff;
	transition: .3s all;
}

.purose-page .group-link-inner .txt::before {
	content: "";
	display: block;
	width: 100%;
	height: 100%;
	background: #333232;
	position: absolute;
	right: 0;
	top: 0;
	transform: translateX(100%);
	transition: all .6s cubic-bezier(1, .39, .29, .93);
}

.purose-page .group-link:hover .group-link-inner .txt::before {
	transform-origin: right top;
	transform: translateX(0);
	transition: all .6s cubic-bezier(1, .39, .29, .93);
}

.themes-pag_detail {
	padding-bottom: 50px;
}

.themes-pag_detail .ttl-line {
	background: #333232;
	padding: 44px 0 42px;
}

.themes-pag_detail .themes-pag_box {
	background: #DBD5CD;
	padding: 25px 0 45px;
}

.themes-pag_detail .themes-pag_box .top_box {
	margin-bottom: 26px;
}
.themes-pag_detail .thumbnail_img {
	min-height: 1px;
	height: 283px;
}
.themes-pag_detail .thumbnail_img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.themes-pag_box .bottom_box .item-list p{
	font-size:16px;
}


/*products 詳細ページ*/
.products .single_ttl_wrap span{
	font-size:18px;
	font-weight:400;
}
.products .single_ttl_wrap .sub__titl {
	text-align: right;
	margin-bottom: 10px;
}
.products .single_ttl_wrap .sub__titl span:nth-child(n+2)::before {
	content: "/";
	display: inline-block;
	padding-right: 5px;
}
.products .single_ttl .first-ttl{
	font-size: 36px;
	font-family:var(--font-serif);
	margin-right: 35px;
	line-height:1.4;
}

.themes-pag_detail .themes-pag_box.products-single {
	padding-top: 40px;
}
.products-single .div_tbl {
	background: #F2EFEC;
}
.products-single .div_tbl .single-box {
	padding: 0 30px 20px;
}
.products-single .div_tbl .local-ttl-bar{
	margin-bottom:20px;
}
.products-single .div_tbl .single-box article:not(:last-child){
	margin-bottom:15px;
}
.products-single .pic-vertical img{
	height:100%;
	width:100%;
}

.products-single .div_tbl .single-box dl {
	border: 1px solid #ccc;
	box-sizing: border-box;
	height:100%;
	background:#fff;
}


.products-single .icon_flex {
	display: flex;
	flex-wrap: wrap;
}
.products-single .icon_flex .one_icon{
	width:calc(100% / 3);
}
.products-single .icon_flex .one_icon:not(:last-child) dl{
	border-right:0;
}

.products-single .div_tbl .standard_colours-box{
	background:#fff;
	padding:20px;
	max-height: 500px;
	height: 100%;
	overflow-y: auto;
	position:relative;
	z-index:0;
}

.products-single .div_tbl .standard_colours-box .pic{
	margin-bottom:0;
}

.products-single .div_tbl .single-box .e-sample_box dl{
	height:auto;
}
.editor-wrap .dark-bg-wrap {
	padding: 40px 30px;
}
.e-sample{
	position:relative;
}
.e-sample_box .pattern dl dd, .e-sample_box .colour dl dd {
	max-height: 228px;
	min-height: 37Vh;
	height: 100%;
	overflow-y: auto;
}
.e-sample_box .pattern dl li, .e-sample_box .colour dl li, .e-sample .main_img2 ul li {
	min-height: auto;
	height: 100%;
}
.e-sample_box .pattern dl ul {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(154px, 1fr));
	gap: 10px;
}
.e-sample_box .pattern dl li,.e-sample_box .colour dl li ,.e-sample .main_img2 ul li{
	min-height: auto;
	height: 100%;
}
.e-sample_box .pattern dl li .pic {
	height: 94px;
	min-height: 1px;
	margin-bottom: 5px;
}

.e-sample_box .colour dl ul {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(50px, 1fr));
	gap: 15px;
}
.e-sample_box .colour dl ul span{
	font-size:12px;
	font-weight:400;
}


.case_list-grid {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(120px, 1fr));
	gap: 22px clamp(15px,1.5vw,29px);
}
.case_list li {
	min-height:162px;
	height: 1px;
}
.case_list li img{
	width:100%;
	height:100%;
	object-fit:cover;
}
.div_tbl dl dt {
	color: #fff;
	background:#9E9485;
	padding:9px;
	line-height: 1.18;
	text-align:center;
}

.div_tbl dl dd {
	background: #fff;
	font-weight: 300;
	padding:10px;
}

.div_tbl .icon-content {
	display:grid;
	grid-template-columns: repeat(auto-fill, minmax(75px, 1fr));
	gap: 10px 0px;
}

.div_tbl .icon-content li img {
	height: 100%;
	width: 100%;
	object-fit: cover;
}

.div_tbl .products-single_icon .icon {    
	text-align: center;
	margin-bottom: 5px;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
}
.div_tbl .products-single_icon .icon img {
	width: 70px;
	height: 70px;
	/*	border: 1px solid #ccc;*/
}
.div_tbl .tbl_box th, .div_tbl .tbl_box td {
	font-size: 14px;
	font-weight: 400;
	padding: 18px 30px 15px;
	word-break: break-all;
	border-top: 1px solid #ccc;
	vertical-align:middle;
}
.div_tbl .tbl_box th{
	width:132px;
	border-right:1px solid #ccc;
}
.div_tbl .tbl_box tr:last-child th, .div_tbl .tbl_box tr:last-child td{
	border-bottom:1px solid #ccc;
}

/*//ByCategories////*/
.categories-page{
	padding-bottom:20px;
}
.categories-search .item-list{
	display:block;
}
.categories-search .item-list li{
	margin-bottom: 15px;
	/* 	width:calc(100% / 4 - 15px) */
	width:100%;
}
.categories-search .item-list li .product-archives-article-mainimage-box{
	position:relative;
	width: 100%;
}
.categories-search .thumbnail_img {
	width: 285px;
	max-width: 100%;
	height: 283px;
	min-height: 1px;
	margin: 0;
}
.categories-search .thumbnail_img img{
	width:100%;
	height:100%;
	object-fit:cover;
}
.categories-search .cat-search-box {
	background: #fff;
	padding: 20px 0 40px;
	margin-bottom: 27px;
}
.serch-box {
	display: flex;
	position:relative;
}
.serch-ttl-box {
	width: 70%;
}
.result-box {
	width: 30%;
	text-align: right;
	font-size:22px;
}
.clear-box {
	position: absolute;
	right: 75px;
	top:-3px;
}
.clear_btn input[type="button"]{
	display: block;
	font-size: 16px;
	padding: 5px;
	background: #000;
	color: #fff;
	border:1px solid #fff;
	transition:.3s all;
}
.clear_btn:hover input[type="button"]{
	background: #fff;
	color: #000;
	border: 1px solid #000;
}

.categories-page .dark-bg{
	padding:20px 0 30px;
	margin-bottom: 20px;
}
.categories-page .dark-bg .card-list{
	margin-bottom:0;
}
.categories-page .dark-bg .card-list .common_btn.is-active {
	background: #fff;
	color: #000;
}

.categories-page .dark-bg .common_btn:before {
	right: 0;
	left: inherit;
	top: calc(100% - 50%);
	border-width: 2px;
}
.categories-page .dark-bg .common_btn.is-active:before{
	border-color:#000;
}

.categories-page .result h3{
	font-weight:500;
}
.categories-page .result span {
	margin-right: 43px;
	display: inline-block;
}
.categories-page .result .count{
	margin-right:0;
}
.categories-page .search-ttl{
	font-size:22px;
	font-weight:500;
	margin-bottom:12px;
}
.categories-search .local-ttl-bar.search{
	margin-bottom:0px;
}
.categories-search .search-sub_ttl{
	font-size:16px;
	font-weight:500;
	color:#fff;
}
.categories-search .local-ttl-bar.bg_ochre::before{
	background: #fff;
}
.search-box-wrap {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	gap: 16px 20px;
}
.search-box-wrap .box ,.search-box-wrap .full-box{
	border: 1px solid #ccc;
}
.search-box-wrap .full-box{
	width:100%;
}
.search-box-wrap .box {    
	width: calc(100% / 2 - 15px);
}
.search-box-wrap .checkBox_inner {
	padding: 20px;
}

.search-box-wrap .features_inner {
	width: 100%;
}

.search-box-wrap .page-product-taglist {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(79px, 1fr));
	gap: 7px min(1vw,30px);
}
.search-box-wrap .page-product-taglist li {
	cursor:pointer;
	position:relative;
}
.search-box-wrap .page-product-taglist li input[type=checkbox] {
	position: absolute;
	top: 0;
	right: 0;
	width: 100%;
	height: 100%;
	opacity: 0;
	margin:0;
}
.search-box-wrap .page-product-taglist li .icon-pic {
	text-align: center;
	margin-bottom:4px;
}
.search-box-wrap .page-product-taglist label{
	font-size:12px;
}

.search-box-wrap .page-product-taglist label span {
	width: 100%;
	display:block;
	position:relative;
	overflow-wrap: break-word;
	text-align:center;
}
/* .search-box-wrap .page-product-taglist label span:before {
content: "";
display: block;
position: absolute;
left: 2px;
top: 2px;
width: 10px;
height: 10px;
border: 1px solid #ccc;
}
input[type=checkbox]:checked + label span:before{
background:#000;
display:block;
} */

input[type=checkbox]:checked + label {
	background: #000;
	color: #fff;
	width: 100%;
	display: block;
}

/*Ues*/
.search-box-wrap .use_inner .checkBox_inner{
	padding:15px;
}
.use_ttl {
	font-size: 15px;
	background: #7F776C;
	color: #fff;
	font-weight: 400;
	padding: 10px 5px 10px 40px;
	position: relative;
}
.use_ttl::before {
	content: "";
	display: inline-block;
	position: absolute;
	left: 10px;
	top: 50%;
	transform: translateY(-50%);
	width:25px;
	height:25px;
}
.use_ttl.factory::before{
	background:url(../img/use_factory_icon.svg) no-repeat center;
	background-size:contain;
}
.use_ttl.leisure-facility::before{
	background:url(../img/use_leisurefaxility_icon.svg) no-repeat center;
	background-size:contain;
}
.use_ttl.office-condominium::before{
	background:url(../img/use_office-condminium_icon.svg) no-repeat center;
	background-size:contain;
}
.use_ttl.school-hospital::before{
	background:url(../img/use_school-hospital_icon.svg) no-repeat center;
	background-size:contain;
}
.use_ttl.parking::before{
	background:url(../img/use_parkingarea_icon.svg) no-repeat center;
	background-size:contain;
}
.use_ttl.warehouse::before{
	background:url(../img/use_wardhouse_icon.svg) no-repeat center;
	background-size:contain;
}
.use__wrap {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(183px, 1fr));
	gap: 10px;
}
.use__box {
	background: #f2efec;
}
.use__inner {
	background: #F2EFEC;
	padding: 7px 6px;
}
.use_item {
	background: #fff;
	padding: 5px 8px;
	display: flex;
	align-items: baseline;
}
.use_item:not(:last-child) {
	margin-bottom:5px;
}
.use_item span {
	font-size: 14px;
	vertical-align:middle;
}

.search-box-wrap .finishs_Box{
	padding:0 !important;
}
.finishs_inner .finishes_cat span{
	display:inline-block;
	padding:2px 15px;
	background:#333232;
	color:#fff;
	font-size:12px;
	text-align:center;
}
.finishs_inner .finishes__wrap{
	display:flex;
	flex-wrap:wrap-reverse;
}
.finishs_inner .finishes__wrap .finishes__box{
	padding:20px;	
}
.finishs_inner .finishes__wrap .finishes__box.smooth{
	order:2;
	width:15%;
}
.finishs_inner .finishes__wrap .finishes__box.texture{
	order:1;
	width:85%;
	background:#F2EFEC;
}

.finishs_inner .finishes__wrap .texture .texture_list{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	gap: 7px 20px;
}
.finishs_inner .finishes__wrap .texture .texture_list::before{
	content:"";
	display:block;
	width: 141px;
	order:2;
}
.finishs_inner .finishes__wrap .texture .texture_list::after{
	content:"";
	display:block;
	width: 141px;
	order:3;
}

.finishs_inner .finishes__box .finishes_item {
	text-align: center;
	position:relative;
	width: 141px;
	max-width: 100%;
}
.finishs_inner .finishes__box .smooth {
	margin: auto;
}
.finishs_inner .finishes__box .finishes_item input[type=checkbox] {
	position: absolute;
	top: 0;
	right: 0;
	width: 100%;
	height: 100%;
	opacity: 0;
	margin: 0;
}
.finishs_inner .finishes__box .finishes_item label span{
	display: inline-block;
	position: relative;
	font-size:12px;
}
/* .finishs_inner .finishes__box .finishes_item label span::before{
content: "";
display: block;
position: absolute;
left: 0;
top: 2px;
width: 10px;
height: 10px;
border: 1px solid #999;
} */

.detail_tbl_cont .local-ttl-bar{
	margin-bottom:5px;
}
.detail_tbl_cont .page-product-archives-wrapper{
	background:#fff;
	padding:20px;
}

.product-archives_tbl  tbody{
	width:100%;
}
.product-archives_tbl th,.product-archives_tbl tr:nth-child(odd){
	background:#F2EFEC;
}
.product-archives_tbl th.title{
	width:22%;
}
.product-archives_tbl th.geberal{
	width:30%;
}
.product-archives_tbl th.type,.product-archives_tbl th.resin{
	width:4%;
}
.product-archives_tbl th.features{
	width:43%;
}
.product-archives_tbl th,.product-archives_tbl tr:first-child{
	background:none;
}
.product-archives_tbl th,.product-archives_tbl td{
	padding:15px 10px;
	vertical-align: middle;
	font-weight:300;
	border-bottom: 1px solid #bbb;
	border-right: 1px solid #bbb;
	font-size:18px;
}
.product-archives_tbl td a{
	text-decoration:underline;
}
.product-archives_tbl td p{
	font-weight:300;
	font-size:18px;
}
.product-archives_tbl th:last-child,.product-archives_tbl td:last-child{
	border-right:none;
}

.product-archives_tbl .icon-taglist {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(40px, 1fr));
	gap: 7px 5px;
}
.product-archives_tbl td .geberal_name{
	font-size:16px;
}
.product-archives_tbl .cat_check {
	color: #fff;
    font-size: 80%;
	text-align: right;
	margin-bottom: 5px;
}
.product-archives_tbl .cat_check span {
	padding: 2px 5px;
    background: #000;
}

/*///ぶら下がり解除//*/
.detail_tbl_cont .product-archives-article-list{
	height:auto !important;
}
.detail_tbl_cont .item-list tr{
	position:static !important;
}



/*///ニュース//////*/
.news-list-page .three-box{
	margin-bottom:25px;
}
.news-list-page .news-list-item {
	position: relative;
}
.news-list-page .news-list-item .label {
	position:absolute;
	top:0;
	right:0;
}
.news-list-page .news-list-item .text-area{
	padding: 23px 30px 22px;
	border: 1px solid #CCCCCC;
	box-sizing: border-box;
	background:#fff;
}
.news-list-page .news-list-item .text-area .day{
	margin-bottom:5px;
}
.news-list-page .news-list-item figure {
	margin: 0;
	overflow:hidden;
}
.news_l {
	width: 84%;
}
.news_r {
	width: 15%;
}
.news_side_nav li a {
	padding: 10px 0;
	display: block;
}
/*-詳細-*/
.news-page{
	padding:48px 0 70px;
}
.news-page img{
	width:100%;
}
.news-page .flex-label {
	display: flex;
	flex-wrap: wrap;
	align-items:center;
	gap: 20px;
	margin-bottom:40px;
}
.news-page .day {
	font-size: 16px;
}
.news-page .label ,.news-list-item .label{
	padding: 7px 12px 7px 13px;
	display: inline-block;
	font-size: 14px;
}
.news-page .link {
	max-width: 205px;
	margin-left: auto;
	margin-top: 20px;
}

/*///コラム//////*/
.nmber_list_box{
	counter-reset: number 0;
}
.nmber_list_box .num::before{
	counter-increment: number 1;
	content: counter(number) " "; 
}

.article__content{
	padding-bottom:30px;
}
.article__content .article_r{
	max-width:282px;
	width:100%;
}
.article__content .article_l{
	width:calc(100% - 282px - 20px);
	max-width:100%;
}
.article__content .article-list-item .pic_box{
	position:relative;
}
.article__content .article-list-item .pic_box .article_pic{
	overflow:hidden;
	margin-bottom:0;
}
.article__content .article-list-item .pic_box .article_pic img {
	aspect-ratio: 16 / 9;
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.article__content .article-list-item .text-area{
	padding:25px 20px;
	background:#fff;
}
.article__content .article-list-item .day{
	font-size:14px;
	font-weight:bold;
}
.article__content .article-list-item .article_in_ttl{
	font-size:16px;
	font-weight:400;
	line-height:1.65;
}
.article__content .article-list-item .cat__label{
	background:#000;
	text-align:center;
	display:inline-block;
	padding:2px 15px 1px;
	position:absolute;
	bottom:0;
	right:0;
}
.article__content .single-modal_content .flex-content{
	gap:15px;
}


.article_side_nav .box_inner .inner{
	padding:15px 10px;
}
.article_ttl{
	font-size:18px;
	font-weight:400;
	text-align:center;
	background:#000;
	padding:10px;
}

.article_side_nav .box_inner .inner .cat__nav li:not(:last-child){
	margin-bottom:10px;
}
.article_side_nav .box_inner .inner .cat__nav li a{
	font-size:16px;
	padding:10px 20px 8px;
	background:#fff;
	border:0;
	position:relative;
	text-align:left;
}
.article_side_nav .box_inner .inner .cat__nav li a::before{
	left: inherit;
	right:0;
	top:15px;
}
.article_side_nav .box_inner .inner .cat__nav li:hover a{
	background:#000;
}
.article_side_nav .ranking .article-list-item:not(:last-child){
	margin-bottom:10px;
}
.article_side_nav .ranking .pic_box .sm_font{
	font-weight:400;
}
.article_side_nav .ranking .text_box{
	padding:10px 15px;
	background:#fff;
}
.article_side_nav .ranking .text_box .day{
	margin-bottom:5px;
	font-weight:400;
}
.article_side_nav .ranking .text_box .article_detail_ttl{
	font-weight:500;
	font-size:13px;
}

.article__content .article-list-item .pic_box .num{
	color:#fff;
	background:#9E9485;
	text-align:center;
	width:32px;
	height:32px;
	line-height:32px;
	position:absolute;
	left:0;
	top:0;
}

.article__content .grid-content {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
	gap:20px;
}

.article__content .banner .ban1{
	position:relative;
}
.article__content .banner .ban1 .ban1_ttl{
	position:absolute;
	bottom:0;
	width:100%;
	background:#000;
	font-weight:300;
	font-size:16px;
	text-align:right;
	padding:6px 10px 7px;
}

.article__content .banner .ban2 .pic{
	width:100px;
}
.article__content .banner .ban2 .txt {
	width: calc(100% - 100px);
	padding: 10px 20px;
	display: flex;
	flex-direction: column;
	justify-content: end;
}
.article__content .banner .ban2 .txt .top{
	font-size:16px;
	margin-bottom:15px;
}
.article__content .banner .ban2 .txt .bottom{
	font-weight:400;
	font-size:10px;
}
/*///コラムシングルページ////*/
.article_single .contet{
	background:#fff;
	margin-bottom:25px;
}
.article_single .pic{
	margin-bottom:60px;
}
.article_single .single_content_top{
	margin-bottom:35px;
}
.article_single .day-cat_line{
	padding:8px 15px;
}
.article_single .day-cat_line .day{
	font-size:14px;
}
.article_single .day-cat_line .cat{
	font-size:12px;
	background:#fff;
	color:#000;
	padding:2px 15px;
	margin-left:15px;
}
.article_single .lead_box{
	padding:0 40px 40px;
}
.article_single .inner{
	background:#fff;
	padding:40px;
}
.article_single .inner .pic{
	margin-bottom:15px;
}
.article_single .single-page_titl {
	font-size: 22px;
	font-weight: 500;
	margin-bottom: 30px;
}

.article_single .inner .contet .box:not(:last-child){
	margin-bottom:20px;
}
.article_single .inner .single_column {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	gap:0 20px;
}
.article_single .inner .end_column {
	align-items: flex-end;
}
.article_single .inner .single_column:not(:last-child){
	margin-bottom:40px;
}
.article_single .inner.dark-bg{
	background:#333232;
	padding: 40px;
}

.article_single .contet .inner .col_box1{
	width:40%;
}
.article_single .contet .inner .col_box2{
	width:calc(60% - 20px);
}
.article_single .in_txt{
	line-height: 1.8;
	letter-spacing: 0.017em;
	font-weight: 300;
	font-size: 16px;
}
.article_single .link {
	margin:0 0 15px;
	padding:10px 25px 10px 10px;
	position:relative;
}
.article_single .link .arrow::after{
	content: "";
	display: inline-block;
	width: 10px;
	height: 10px;
	margin: 0 10px;
	border-right: 2px solid #fff;
	border-top: 2px solid #fff;
	transform: rotate(45deg) translateY(-50%);
	position: absolute;
	right: 0;
	top: 50%;
}
.article_single .contet a:hover{
	opacity:0.8;
}

.article_single .single_content_bottom .grid-content{
	grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));
	gap: 20px;
}
.article_single .single_content_bottom .article_ttl {
	text-align:left;
	background:#333232;
	margin-bottom:15px;
	padding:10px 20px;
}
.article_single .single_content_bottom .inner{
	background:none;
	padding:0;
}
.article_single .single_content_bottom .text_box{
	background:#fff;
	padding:10px 15px;
}
.article_single .single_content_bottom .text_box .day{
	font-size:12px;
	font-weight:400;
}
.article_single .single_content_bottom .text_box .article_detail_ttl{
	font-size:14px;
}

.article_single .single_content_bottom .column_cat .inner{
	padding:0 20px 20px;	
}
.article_single .single_content_bottom .column_cat .cat__nav{
	display:flex;
	flex-wrap:wrap;
	justify-content:space-between;
}
.article_single .single_content_bottom .column_cat .cat__nav li{
	width:calc(100% / 3 - 30px);
	background:#fff;
}
.article_single .single_content_bottom .column_cat .cat__nav li .common_btn{
	text-align:left;
}
.article_single .single_content_bottom .column_cat .cat__nav li .common_btn:before{
	left: inherit;
	right: 0;
}
.article_single .skk_ldm .common_btn::before {
	border-color: #fff;
	/* top: 25px; */
}
/*//背景黒ページ//*/
.dark-bg-wrap {
	padding: 48px 0 74px;
}

.dark-bg {
	background: #333232;
}

.under_page-content .dark-bg .under_lead_text,
.under_page-content .dark-bg .under_text {
	color: #fff;
	line-height: 2.6;
	letter-spacing: 0.017em;
	font-weight: 300;
	font-size: 16px;
}

.under_page-content .dark-bg .sm_font {
	line-height: 2.6;
}

.under_page-content .dark-bg .under_lead_text {
	font-size: 18px;
}

.local-ttl-bar {
	background: #000;
	padding: 10px 0 7px 44px;	
	position: relative;
	margin-bottom: 35px;
}

.local-ttl-bar::before {
	content: "";
	display: block;
	height: 1px;
	width: 18px;
	background: #707070;
	position: absolute;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
}
.local-ttl-bar.bg_gray {
	background: #333232;
}
.local-ttl-bar.bg_gray::before {
	background: #fff;
}

.local-ttl-bar.bg_ochre {
	background:#9E9485;
}
.local-ttl-bar.bg_ochre::before {
	background:#000;
}

.under_page-content .scroll_tbl table {
	border-collapse: separate;
	border-spacing: 2px;
	border: 0;
	width: 100%;
}

.under_page-content .scroll_tbl table th,
.under_page-content .scroll_tbl table td {
	background: #fff;
	padding: 7px clamp(5px, 1.5vw, 10px);
	text-align: center;
	font-size: 12px;
	overflow-wrap: break-word;
	vertical-align: middle;
}

.under_page-content .scroll_tbl table th {
	background: #DBD5CD;
}

.under_page-content .border-box {
	border: 1px solid #fff;
	padding: 14px 16px;
}

.under_list li {
	color: #fff;
	font-size: 16px;
	font-weight: 300;
	line-height: 1.75;
	letter-spacing: 0.012em;
}
.under_page-content picture {
	display: block;
	text-align: center;
}
.dark-bottom_content {
	padding-top: 23px;
	background: #dbd5cd;
}
/*//wood like//*/
.type-img-content{
	display: flex;
	justify-content:center;
	gap: 20px 23px;
}
.type-img-content .col2{
	width: 48%;
}

.color-list .flex-content{
	align-items: center;
}
.color-type-flex {
	display: flex;
	flex-wrap: wrap;
	gap:20px 38px;
}
.color-type-flex .color_bg_B,.color-type-flex .color_bg_W{
	line-height: 1.2;
}
.color-type-flex .color_bg_B::before,
.color-type-flex .color_bg_W::before {
	content: "";
	display: inline-block;
	height: 30px;
	width: 30px;
	background: #000;
	vertical-align: middle;
	margin-right: 11px;
}
.color-type-flex .color_bg_W::before{
	background: #fff;
}

.color-items {
	gap: 21px 49px;
}

.color-items li {
	width: calc(100% / 4 - 49px);
}

.color-items li:nth-child(odd) .color-img {
	box-shadow: 13px 13px 0 #000;
}

.color-items li:nth-child(even) .color-img {
	box-shadow: 13px 13px 0 #fff;
}

.color-items .color-img {
	margin-bottom: 25px;
	max-width: 260px;
	max-height: 260px;
	aspect-ratio: 1 / 1;
	overflow: hidden
}

.color-items .color-img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.color-items .color-name {
	color: #fff;
	text-align: center;
	font-weight: 500;
}



/*/////download/////*/
.download{
	background:#333232;
	padding:56px 0 66px;
	position:relative;
}
.download::before{
	content:"";
	display:block;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 18px 21.5px 0 21.5px;
	border-color: #dbd5cd transparent transparent transparent;
	position:absolute;
	top:0;
	left:50%;
	transform:translateX(-50%);
}
.download .sub_ttl {
	font-size: 30px;
	font-family: var(--font-serif);
	text-align: center;
	margin-bottom: 40px;
}
.download .flex-content {
	justify-content: center;
	align-items: center;
	gap:40px 34px;
	margin-bottom:52px;
}
.download .flex-content li {
	text-align: center;
	max-width:395px;
	width:100%;
	border: 1px solid #fff;
}
.download .flex-content li a {
	display: block;
	padding: 47px 0;
	width: 100%;
}
.download .flex-content li span{
	display:inline-block;
	position:relative;
	padding-left: 36px;
}
.download .flex-content li span:first-child::before{
	content:"";
	display:inline-block;
	background:url(../img/download_icon.svg) no-repeat 0 0;
	background-size:contain;
	width:21px;
	height:25px;
	position: absolute;
	left: 0;
	top: -2px;
}
.down_bn{
	position:relative;
	overflow: hidden;
}
.down_bn::before {
	content: "";
	display: block;
	background: #000;
	height: 100%;
	width: 100%;
	position: absolute;
	bottom:100%;
	transition:.5s all;
}
.down_bn:hover::before{
	bottom: 0;
}
/*/////固定ページ/////*/
.second-container{
	padding:49px 0 63px;
}
.second-container .local-ttl-bar{
	margin-bottom:0;
}
.second-container .local_ttl{
	font-size:30px;
	font-weight:500;
}
.second-container .container_block{
	margin-bottom:60px;
}
.img-map_wrap::-webkit-scrollbar{
	height: 5px;
}
.img-map_wrap::-webkit-scrollbar-track{
	background-color: #000;
}
.img-map_wrap::-webkit-scrollbar-thumb{
	background-color: #F2EFEC;
}
.content_wrap{
	padding-top:60px;
}
.number_list li {
	counter-increment: section;
	font-size: 100%;
	display: block;
	margin-bottom: 8px;
	padding-left: 30px;
	position: relative;
}

.number_list li:before {
	content: counter(section) ".";
	font-weight: 500;
	position: absolute;
	left: 0px;
	top: 0px;
}
.item_list li{
	position:relative;
	padding-left:20px
}
.item_list li::before{
	content: "・";
	display: inline-block;
	position: absolute;
	left: 0;
	top: 0;
}
.item_list li:not(:last-child){
	margin-bottom:10px;
}

.item_list_flex {
	display: flex;
	flex-wrap: wrap;
	gap: 10px 0;
}
.item_list_flex li{
	width:280px;
	padding-left: 15px;
	position: relative;
}
.item_list_flex li::before{
	content: "・";
	display: inline-block;
	position: absolute;
	left: 0;
	top: 1px;
}


.about_tbl table{
	border-spacing: 2px;
}
.about_tbl table th,.about_tbl table td{
	font-weight:500;
	font-size:16px;
	vertical-align:middle;
	padding:15px 15px;
	background:#DBD5CD;
	text-align:left;
}
.about_tbl table td{
	background:#fff;
	font-weight:300;
}
/*///会社概要//*/
.our-value .dark-bg-wrap{
	padding-top:80px;
}
.our-value .free-content .bg__color {
	position: relative;
	z-index: 0;
	padding: 155px 0 103px;
}
.our-value .free-content .bg__color::before {
	content: "";
	display: block;
	background: #F2EFEC;
	height: 100%;
	width: 50vw;
	position: absolute;
	top: 50%;
	right: 0;
	transform: translateY(-50%);
	z-index: -1;
}
.our-value .free-content .reverse .bg__color::before{
	right: inherit;
	left:0;
}
.our-value .free-content .flex-content {
	justify-content: center;
	align-items:center;
	gap:20px;
	margin-bottom:112px;
}
.our-value .free-content .flex-content:last-child{
	margin-bottom:0;
}
.our-value .free-content .pic{
	max-width:930px;
	width:calc(50% - 20px);
	position: relative;
	z-index: 1;
	margin-top: -64px;
}
.our-value .free-content .pic::after{
	content: "";
	display: block;
	background: #000;
	background-image: linear-gradient(120deg, rgba(88, 86, 86, 1), rgba(0, 0, 0, 1));
	height: 100%;
	width: 97%;
	position: absolute;
	top: 0;
	left: 50%;
	transform: translateX(-50%);
	z-index: -1;
}
.our-value .free-content .text{
	max-width:641px;
	width:calc(50% - 20px);
}
.our-value .free-content .text .text-inner{
	background:#fff;
	padding:45px 40px;
	line-height: 2.05;
	font-weight:500;
}
/*//会社紹介//*/
.profile .flex-content{
	gap:20px 0;
}
.profile .half-box{
	display:flex;
	flex-direction:column;
}
.profile .half-box .addr_box{
	height:100%;
	margin-top:auto;
}
.addr_box .text{
	line-height: 1.8;
	letter-spacing: 0.017em;
	font-weight: 300;
	font-size: 16px;
}

.iso-list {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
	gap: 40px;
}
.iso-list--item .pic {
	background: #000;
	padding: 10px;
}
.iso-list .iso-list--item p{
	text-align:center;
	font-size:16px;
	line-height: 1.2;
}
/*//network//*/
.network .card-list{
	gap:20px;
}
.network .card-list .card-list--item .inner {
	padding: 10px;
}
/*/////お問い合わせ/////*/
.contact {
	background: #000;
	padding: 77px 0 163px;
}

.contact-wrap {
	max-width: 912px;
	padding: 0 40px;
	margin-left: auto;
	margin-right: auto;
}

.contact .ttl-box {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: center;
	gap: 20px 0;
}

.contact .ttl-box p {
	line-height: 1.7;
	font-size: 18px;
}

.contact .form table {
	border-collapse: separate;
	border-spacing: 14px;
	border: 0;
	width: 100%;
}

.contact .form table th {
	background: #0F0F0F;
	padding: 12px;
	text-align: center;
	width: 237px;
}

.contact .form table th,
.contact .form table td {
	color: #fff;
	font-weight: 400;
	font-size: 18px;
	vertical-align: middle;
}

.contact .form input[type="text"],
.contact .form textarea {
	width: 100%;
	border: 1px solid #707070;
	outline: none;
	padding: 3px 5px;
}

.contact .form .send_btn {
	cursor: pointer;
	width: 237px;
	padding: 12px;
	text-align: center;
	background: #333232;
	color: #fff;
}

.contact .form .button_area {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
}

.contact .form td.radio-box {
	display: flex;
	flex-wrap: wrap;
	padding-top: 13px;
	gap: 10px;
}
.contact .mw_wp_form .horizontal-item + .horizontal-item{
	margin-left:0;
}
.contact .mwform-checkbox-field input,.contact .mwform-radio-field input {
	margin-right:0;
}
.contact .mw_wp_form .error {
	color: #fff;
}
.form .mw_wp_form .error::before {
	content: "*";
	display: inline-block;
	margin-right: 3px;
}
.tel-btn {
	padding: 17px 10px 12px;
	display: block;
	text-align: center;
	width: 300px;
	max-width: 100%;
	box-sizing: border-box;
	border: 1px solid #fff;
	background: #333232;
}

.tel-btn img {
	vertical-align: middle;
}

.tel-btn span{
	font-size:90%;
}

/*//////制作事例//////////*/
.case .toggle-btn {
	position: relative;
	background: none;
	text-align: left;
	padding-left:0px;
	padding-bottom:0px;
	padding-top:0px;
}
.case .card-list--inner {
	background: 0;
	position: static;
	padding: 0;
	width: 100%;
	height:0;
}
.case .toggle.active~.card-list--inner{
	height:100%;
	padding-top: 20px;
}
.case .cate_list .toggle-line span{
	background:#000;
}
.case .toggle-line {
	position: absolute;
	right: 0;
	top: -10px;
}

.case .type_list,.case .cate_list{
	padding:20px 0;
}
.case .cate_list{
	background:#fff;
}
.case .cate_list .local_sub-ttl{
	color:#000;
}
.case .products-single .div_tbl .single-box{
	padding: 0 15px 20px;
}
.case .products-single_text{
	font-size:12px;
}

.case .div_tbl .cats_box .icon-content {
	grid-template-columns: repeat(auto-fill, minmax(70px, 1fr));
	gap: 20px 5px;
}
.case .products-single .div_tbl .single-box dl {
	display: flex;
	flex-direction: column;
	height: 100%;
}
.case .products-single .div_tbl .single-box dl .text {
	margin: auto;
	text-align: center;
	word-break: break-all;
	font-size:14px;
	font-weight:500;
}
.case .products-single .div_tbl .single-box article{
	margin-bottom:15px;
}
.case_ttl_box{
	padding-bottom:23px;
}
.case_ttl{
	font-size:18px;
	background:#000;
	padding:10px 30px 12px;
}
.case__box .flex_box{
	display: flex;
	gap:0px 15px;
}
.case .type_box dd {
	margin: auto;
}
.case .type_box {
	width:100px;
}
.case .cats_box {
	width: 35.13%;
}
.case .location_box {
	width: 434px;
}
.case .comp_year_box{
	width:176px;
}
.case .products-single .div_tbl .single-box .used_box{
	margin-bottom: 0;
}

.case .products-single .div_tbl .single-box .used_box .icon-content {
	grid-template-columns: repeat(auto-fill, minmax(120px, 1fr));
	gap: 22px clamp(15px,1.5vw,29px);
}
.case .products-single .div_tbl .single-box .used_box .icon-content .icon{
	min-height: 162px;
	height: 1px;
}
.case .products-single .div_tbl .single-box .used_box .icon-content .icon img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.case .case__box .used_box{
	width:100%;
}

.card-list .card-list--item .common_btn.is-active{
	background:#fff;
	color:#000;
}
.card-list .card-list--item .common_btn.is-active:before{
	border-color:#000;
}

.bycat_list .card-list--item .common_btn.is-active{
	background:#000;
	color:#fff;
}
.bycat_list .card-list--item .common_btn.is-active:before{
	border-color:#fff;
}

/*////////お客様の声///////////*/
.architect_head .sub__ttl{
	font-size:clamp(30px,2vw,37px);
	font-weight:300;
	text-align:center;
	padding:25px 0;
	margin-bottom:35px;
}
.message_content .local_ttl{
	font-size:clamp(35px,3vw,49px);
	font-family:var(--font-serif);
	font-weight:500;
	margin-bottom:35px;
}
.archit-list_wrap {
	margin-bottom: 60px;
}
.message_content .archit-list{
	display:flex;
	flex-wrap:wrap;
}
.message_content .archit-list .archit-item{
	width:50%;
}
.message_content .archit-list .archit-item .text_box{
	padding:10px 10px  35px;
	text-align:right;
}
.message_content .archit-list .archit-item .text_box a{
	text-decoration:underline;
	color:#fff;
}
.message_content .archit-list .archit-item .archit-name{
	font-size:18px;
	font-weight:500;
}
.message_content .archit-list .archit-item .addr{
	font-size:14px;
	font-weight:300;
	line-height:1.8;
}
.message_content .architect_voice{
	padding:75px 0;
	margin-bottom:60px;
}
.message_content .architect_voice .architect_voice-wrap{
	display:flex;
	flex-wrap:wrap;
	justify-content:space-between;
}
.message_content .architect_voice .architect_voice-wrap .architect-pic{
	max-width:420px;
	width:100%;
}
.message_content .architect_voice .architect_voice-wrap .text{
	max-width:calc(100% - 420px - 41px);
	width:100%;
}
.message_content .architect_voice .architect_voice-wrap .text p{
	font-size:16px;
	font-weight:400;
	margin-bottom:40px;
	line-height: 2;
}
.message_content .architect_voice .architect_voice-wrap .text .architect-profile{
	font-size:14px;
	max-width: 300px;
	margin-left: auto;
}
.message_content .architect_voice .architect_voice-wrap .text .architect-profile dl {
	display: flex;
	flex-wrap: wrap;
}
.message_content .architect_voice .architect_voice-wrap .text .architect-profile dt,.message_content .architect_voice .architect_voice-wrap .text .architect-profile dd{
	width:50%;
	line-height: 1.5;
}
.message_content .architect_voice .architect_voice-wrap .text .architect-profile dt {
	font-weight: 300;
	text-align: right;
	padding-right: 7px;
}
.message_content .architect-grid{
	display:grid;
	grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));
	grid-gap: 25px;
}
.message_content .architect-grid .text{
	background:#000;
	padding:24px 10px;
	position:relative;
}
.message_content .architect-grid .text p{
	color:#fff;
}
.message_content .architect-grid .mess_number{
	font-size:15px;
	font-family:var(--font-serif);
	margin-bottom:20px;
	text-align:right;
	position:absolute;
	top:8px;
	right:9px;
}
.message_content .architect-grid .name{
	line-height: 1.5;
	font-size:15px;
	padding-top:19px;
}
.message_content .architect-grid span{
	display:block;
	font-size:18px;
	font-weight:400;
}
.message_content .architect-grid .is-active .pic{
	position:relative;
}
.message_content .architect-grid .is-active .pic::before{
	content:"";
	display:block;
	background:#fff;
	height:100%;
	width:100%;
	position:absolute;
	top:0;
	left:0;
	opacity:0.7;
}
.message_content .architect-grid .is-active .text{
	background:#fff;
}
.message_content .architect-grid .is-active .text p{
	color:#000;
}
/*//////建築////////*/
.second-architect .sub__ttl{
	text-align:right;
	padding-right:20px;
	margin-bottom:0;
}
.second-architect .page-head_slid{
	position:relative;
}
.second-architect .page-head_slid .architect-ttl {
	position: absolute;
	top: calc(100vh / 2);
	transform: translateY(-50%);
	width: 100%;
	z-index: 2;
	text-align: center;
	font-size:clamp(35px,8.07vw,62px);
	font-weight: 100;
	line-height: 1.7;
}
.second-architect .page-head_slid .lead_text_area {
	text-align: center;
	font-size: 18px;
	font-weight: 300;
	padding:140px 0 150px;
	max-width:100%;
	margin:auto;
}
.second-architect .page-head_slid .lead_text_area p{
	line-height: 2.6;
}
.second-architect .page-head_slid .lead_text_area p:not(:last-child){
	margin-bottom:60px;
}

.second-architect .building-guide-box {
	padding: 35px 40px;
}
.second-architect .building-flex {
	display: flex;
	justify-content: flex-end;
}
.second-architect .text__wrap {
	margin-right: 80px;
}

.second-architect .building-item{
	margin-bottom:100px;
}

.second-architect .building-guide {
	text-align: right;
	max-width: 650px;
	width: 100%;
}
.second-architect .building-guide .name{
	font-size:29px;
	font-weight:bold;
	font-family:var(--font-serif);
	line-height:1.4;
}
.second-architect .building-guide .detail{
	font-size:20px;
	font-weight:300;
	border-bottom:1px solid #707070;
	padding-bottom:14px;
	margin-bottom:16px;
}
.second-architect .building-guide .link .common_btn{
	background:#000;
	color:#fff;
	max-width:407px;
	width:100%;
	margin-left:auto;
}
.second-architect .building-guide .link .common_btn::before{
	border-color:#fff;
}
.second-architect .building-guide .link .common_btn:hover{
	background:#fff;
	color:#000;
	border-color:#000;
}
.second-architect .building-guide .link .common_btn:hover::before{
	border-color:#000;
}
.second-architect .building-pic{
	overflow:hidden;
}
.second-architect .building-pic.is-show img{
	animation: zoom-in 8s linear 0s 1 normal both;
}

.second-architect .banner{
	padding:35px 0;
	margin-top: 30px;
}
.second-architect .banner .architect-info-flex .pic1,.second-architect .banner .architect-info-flex .info-pic2{
	width:50%;
}
.second-architect .building-item .visual_pic{
	height:auto;
	width:auto;
}
.second-architect .building-item .visual_pic .slide-img img{
	height:auto;
	width:auto;
}

/*/////ショールーム////////*/
.showroom-img-content{
	position:relative;
	margin-bottom: 5%;
}
.showroom-img-content .lead_text {
	width: 80%;
	margin: -60px auto;
	padding: 50px 20px;
	position: relative;
	z-index:0;
}
.showroom-img-content .lead_text p {
	font-size:clamp(22px,2vw,30px);
	line-height: 1.7;
}
.showroom-img-content .lead_text .lead_text__wrap {
	width: 1200px;
	max-width:100%;
	margin: auto;
}
.showroom-content .img-map_wrap{
	width:98%;
	overflow:hidden;
}
.showroom-content .img-map_wrap {
	overflow-x: auto;
	margin: 0 auto;
	width: 98%;
}
.showroom-content .img-map-inner {
	padding-bottom: 30px;
	width: 1200px;
	margin: auto;
	overflow: hidden;
}
.showroom-pic,.column_modal{
	text-align:center;
	position:relative;
}
.showroom-pic .close a,.column_modal .close a {
	font-size: 30px;
	background: #fff;
	display: block;
	line-height: 0.8;
	padding: 5px 10px;
	border-radius: 50%;
	box-shadow: 0 2px 6px 0px #141414;
	cursor: pointer;
}
.showroom-pic .close,.column_modal .close {
	position: absolute;
	right: -8px;
	top: -10px;
}
/*///会員スタイル//////*/
.login #wpmem_login{
	width:100%;
}
.login #wpmem_login legend{
	margin-bottom:60px;
	font-size:20px;
	line-height:1.5;
	color:#fff;
}
.login #wpmem_login label{
	text-align:left;
	display: block;
	color:#fff;
}
.login #wpmem_login .button_div label{
	display:inline;
}
.login #wpmem_login fieldset{
	margin-top:0;
}
.login .middle_ttl {
	padding:20px 0;
	line-height:normal;
	margin-right:0;
}
.login .middle_ttl span{
	margin-left:10px;
}
.login-page{
	background:#000;
	padding:30px 0 50px;
}
.login #nav{
	display:none;
}
.login #backtoblog,
.login #nav{
	display:none !important; 
}

.alert_login-wrap{
	padding: 30px;
	color:#fff;
}
.alert_login-wrap a{
	text-decoration:underline;
	color:#fff;
}
.alert_login {
	border: 1px solid #fff;
	padding: 5%;
	color:#fff;
}
.alert_login-wrap .text, .alert_login-wrap .alert_login li{
	font-size: 16px;
	line-height: 1.6;
}
.alert_login-wrap .login_status {
	margin-bottom: 30px;
	font-size: 18px;
	line-height: 2;
}
.register .register_btn{
	max-width:280px;
	width:100%;
	margin:20px auto 0;
}

.register .text{
	font-size:16px;
	line-height:1.5;
}
.register #wpmem_reg{
	margin:auto;
	width: 100%;
}
.register #wpmem_reg .button_div{
	text-align:center;
}

.register #wpmem_reg .buttons ,.login #wpmem_login .button_div .buttons{
	font-size: 18px;
	text-align: center;
	width: 200px;
	display: inline-block;
	padding: 10px;
	background: #333232;
	color: #fff;
	transition:.3s all;
}
.login #wpmem_login .button_div .buttons {
	display: block;
	margin: 40px auto 10px;
}
.register #wpmem_reg .buttons:hover{
	background:#fff;
	color:#000;
}

.register #wpmem_reg label {
	color: #fff;
	display: inline-flex;
	justify-content: center;
	width: 237px;
	background: #0F0F0F;
	padding: 10px 20px;
	text-align: center;
	margin-right: 20px;
}
.register #wpmem_reg .div_text {
	display: inline-flex;
	width: calc(100% - 257px);
}
.register #wpmem_reg .req-text{
	color:#fff;
}
.register #wpmem_reg .div_radio {
	display: inline-flex;
	align-items: center;
	width: calc(100% - 257px);
	margin-bottom:22px;
}
.register #wpmem_reg .div_radio label {
	background: none;
	margin: 0;
	padding: 0 !important;
	width: auto !important;
	display: inline-block;
	margin-right: 5px;
	margin-left: 2px;
}
.register #wpmem_reg .div_textarea{
	display: inline-flex;
	width: calc(100% - 257px);
}
#wpmem_reg label.textarea{
	height:auto !important;
}
/*///FAQ//////*/
.faq {
	background: #F2EFEC;
	padding-bottom:60px;
}
.faq .middle_ttl {
	padding:20px 0;
	line-height:normal;
	margin-right:0;
}
.faq .middle_ttl span{
	margin-left:10px;
}
.faq li {
	margin-bottom: 20px;
	padding: 30px;
	background: #fff;
	box-shadow: 0 2px 3px #00000014;
}
.faq_area .faq_ttl {
	position: relative;
	padding-left: 30px;
}
.faq_area .faq_ttl::before {
	content: "Q.";
	display: inline-block;
	position: absolute;
	left: 0;
	cursor:pointer;
}
.faq_area .lead {
	padding: 30px 30px 0;
	margin-top: 30px;
	border-top: 1px solid #333;
	display: none;
}
.faq_area .lead p{
	font-size: 16px;
	line-height: 1.8;
}
.faq_area .faq_ttl .icon{
	position: absolute;
	width: 14px;
	height: 14px;
	top: 10px;
	right: 10px;
}
.faq_area .faq_ttl .icon span{
	display: inline-block;
	transition: all .3s;
	box-sizing: border-box;
	position: absolute;
	width: 100%;
	height: 1px;
	background-color: #000;
}
.faq_area .faq_ttl .icon span:nth-of-type(2){
	transform: rotate(90deg);
	-webkit-transform: rotate(90deg);
	-moz-transform: rotate(90deg);
	-ms-transform: rotate(90deg);
	-o-transform: rotate(90deg);	
}
.faq_area .faq_ttl .icon.is-active span:nth-of-type(2){
	transform: rotate(180deg);
	-webkit-transform: rotate(180deg);
	-moz-transform: rotate(180deg);
	-ms-transform: rotate(180deg);
	-o-transform: rotate(180deg);	
}

/*///FAQ シングルページ//////*/
.faq_single {
	margin-bottom: 20px;
	padding: 30px;
	background: #fff;
	box-shadow: 0 2px 3px #00000014;
	}

.faq_single_area .faq_single_ttl {
	position: relative;
	padding-left: 30px;
}
.faq_single_area .faq_single_ttl::before {
	content: "Q.";
	display: inline-block;
	position: absolute;
	left: 0;
	cursor: pointer;
}

.faq_single_area .faq_single_lead {
	padding: 30px 30px 0;
	margin-top: 30px;
	border-top: 1px solid #333;
}

/*///ページネーション//////*/
.wp-pagenavi{
	text-align: center;
	margin-top: 60px;
}
.wp-pagenavi a, .wp-pagenavi span {
	padding: 10px 12px;
	background: #333232;
	display: inline-block;
	margin-right: 5px;
	line-height: 1;
	color: #fff;
}
.wp-pagenavi span.current{
	background: #F2EFEC;
	color:#000;
}
/*////////モーダル///////////*/
.iziModal {
	width: 84vh;
	max-width:93%;
}
.modal_pic {
	position: relative;
}
.modal_pic .close {
	position: absolute;
	right: -2px;
	top: -15px;
}
.modal_pic .close a {
	font-size: 20px;
	background: #fff;
	display: block;
	line-height: 0.8;
	padding: 4px 8px;
	border-radius: 50%;
	box-shadow: 0 2px 6px 0px #141414;
	cursor: pointer;
}

.showroom-id .iziModal {
	width: 95%;
}
.column-id .iziModal{
	width:100vh;
}

/*///////footer//////////*/
.footer-content {
	background: var(--bt-color);
	padding: 93px 59px 58px;
}

.footer-content a,
.footer-content p {
	color: #fff;
}

.footer-flex {
	display: flex;
	margin-bottom: 164px;
}

.footer-content nav p:hover a {
	color: #000000;
}

.footer_r {
	padding-right: 68px;
	margin-right: 45.5px;
	border-right: 1px solid #767676;
}

.footer_r .footer-logo {
	margin-bottom: 42px;
}

.footer_r .btn {
	border: 1px solid #fff;
}

.footer_r .btn:not(:last-child) {
	margin-bottom: 15px;
}

.footer_r .btn a {
	padding: 11px 0;
	text-align: center;
	display: block;
	transition: all .3s ease-in;
}

.footer_r .inq {
	border: 1px solid #fff;
}

.footer_r .btn:hover a {
	background: #fff;
	color: #000;
}

.footer_l {
	width: calc(100% - 233px);
}

.footer_l .footer_nav,
.footer_l .footer_nav .footer_nav-r {
	display: flex;
	justify-content: flex-start;
}

.footer_l .footer_nav .footer_nav-r {
	flex-wrap: wrap;
	width: 75%;
}

.footer_l .footer_nav .footer_nav-r li {
	margin-right: 55px;
	margin-bottom:25px;
}

.footer_l .footer_nav .footer_nav-r li p,
.footer_nav-l p {
	margin-bottom:10px;
	font-size: 18px;
}

.footer_nav-l {
	border-left: 1px solid #767676;
	padding-left: 25.5px;
	width: 25%;
}

.footer_l .link_sub a {
	font-size: 14px;
	margin-left: 5px;
}

.footer-content .copy {
	font-size: 14px;
}

.footer_l .footer_nav .footer_nav-r li .link_sub {
	margin-bottom: 5px;
}

.categories-page .dark-bg .card-list .common_btn{
	padding:9px 10px;	
}

.floor_sample {
	display: flex;
	justify-content: space-around;
	flex-wrap: wrap;
}

.floor_sample_box {
	width: 45%;
}

/*//product-video//*/
.video-tag {
	/*    background: #f2efec; */
}
.product-video video {
	height: 100%;
	width: 100%;
}

video {
	filter: drop-shadow(0px 0px rgba(0,0,0,0));
	outline: none;
	border: none;	
}
.cool-timeline.white-timeline.compact .timeline-post.ctl-right .timeline-content .content-title,
.cool-timeline.white-timeline.compact .timeline-post.ctl-right .icon-color-white,
.cool-timeline.white-timeline.compact .timeline-post.ctl-left .timeline-content .content-title, .cool-timeline.white-timeline.compact .timeline-post.ctl-left .icon-color-white
{
	color:#a59382;
}
.cool-timeline .timeline-post .timeline-icon .icon-placeholder i{
	color:#fff;
}

.card-list--inner {
	background: rgba(0, 0, 0, 80%);
}




/* Contact 23/10/12 */

.contact .branch_info {
    display: flex;
	justify-content: space-around;
	flex-wrap: wrap;
    margin-bottom :30px;
}

.contact .branch_info .box {
    width: 48%;
}
.contact .branch_info .box:nth-of-type(n+3),.contact .branch_info .box:nth-of-type(n+4) {
    margin-top: 30px;
}
.contact .branch_info a {
    display: block;
}

.contact .branch_info a:hover {
    color: var(--bt-color);
}

.contact .branch_info p,
.contact .branch_info a {
    line-height: 1.5;
    font-size: 15px;
}

.contact .branch_info p.title {
    font-size: 18px;
	font-weight: bold;
	margin-bottom: 10px;
}

.contact .branch_info a.address {
    font-size: 13px;
	margin-bottom: 20px;
}

.contact .branch_info a.blank {
	margin-bottom: 40px;
}

.contact .branch_info a.tel {
	margin-bottom: 20px;
}

.sns ul {
    display: flex;
    justify-content: start;
}
.sns ul li {
    margin-right: 10px;
}
.top-news .swiperNews .data .txt{
	font-size:14px;
}
.swiperNews .data {
	min-height:150px;
}


/*20240614追加*/
.top-news-wrap {
    background: #333232;
	padding:18px 0px;
	margin-bottom: 20px;
}
.top-news-wrap .ttl{
    color: #fff;
	margin-bottom:0px;
}
.top-news-wrap .ttl a{
    color: #fff;
}

.lang_nav {
    margin-left: 20px;
    font-size: min(18px, 1.28vw);
	color:#fff;
}
.lang_nav b {
	text-decoration: underline solid 1px;
    font-weight: 400;
	font-size: min(20px, 1.28vw);
}

.pc_nav ul .lang_nav a{
display: inline-block;
	line-height:1.2;
	padding-bottom: 6px;
}

.fixed .lang_nav {
 color:#000;
}
.second .lang_nav{
 color:#000;	
}

.pc_nav ul .lang_nav a span{
	margin-right:0px !important;
	padding-bottom: 0px!important;
}
.pc_nav ul .lang_nav{
	margin-right: min(39px, 2vw);
}
#nav-content .box ul .lang_nav{
	font-size:20px!important;
}
#nav-content .box ul .lang_nav span{
	display:inline;
}
#nav-content .box ul .lang_nav a{
	padding:0px;
}
.contact .form table select {
    background: #fff;
    padding: 3px;
    width: auto;
}

/*20241003*/

	.branch_info._custom ._telbox a{
				display:inline-block;
				}
				
				a._tel{
				font-size:19px !important;
				font-weight:500;
				}
				
					.branch_info._custom .sns ul.left {
						display: flex;
						justify-content: start;
					}
					.branch_info._custom .sns ul.left li {
						margin-right: 10px;
					}

					.branch_info._custom .sns ul.left li.hasToggle2 {
						position: relative;
					}

					.branch_info._custom .sns ul.left li.hasToggle2.open .sns-inn{
						display: block;
						background: #555555;
						animation: drop-appearance ease-in .2s;
						transition: all 0.2s;
					}

					.branch_info._custom .sns ul.left li.hasToggle2:hover img{
						opacity: 0.8;
					}

					@keyframes drop-appearance {
						0% {
							opacity: 0;
							transform: translateY(10px);
						}
						100% {
							opacity: 1;
							transform: translateY(0);
						}
					}

					.branch_info._custom .sns ul.left li > .sns-inn {
						position: absolute;
						left: 0;
						top: calc(100% + 10px);
						width: max-content;
						padding-top:10px;
						padding-bottom:10px;
						display: none;
					}
					.branch_info._custom .sns ul.left li > .sns-inn li {
						width: 100%;
						line-height: 1.8;
					}
					.branch_info._custom .sns ul.left li > .sns-inn li a {
						font-size: 14px;
						display: block;
						position: relative;
						color:#fff;
					}
					.branch_info._custom .sns ul.left li > .sns-inn li a::before {
						content: "・";
					}

					.branch_info._custom .sns ul.left li > .sns-inn li a:hover {
						color: #000;
					}


/*20241027*/
.pc_nav ul .inq a {
	padding: 12px 0 36px;
}
.inq a span {
	position: relative;
	font-size: 108%;
}
.inq a span::before {
	content: "";
	display: inline-block;
	background: url(../img/contact_icon.svg) no-repeat;
	background-size: contain;
	width: 67px;
	height: 20px;
	margin-right: 9px;
	vertical-align: top;
	transition: all .3s ease-in;
	position: absolute;
	top: 100%;
	left: 50%;
	transform: translateX(-50%);
}

.inq:hover a span::before {
	background: url(../img/contact_icon_b.svg) no-repeat;
	background-size: contain;
}

.pc_nav ul li.inq:hover span:after{
	content: none;
}
