/*!
Theme Name: zero_corporation
--------------------------------------------------------------*/


/* Galleries --------------------------------------------- */
.gallery {
	margin-bottom: 1.5em;
	display: grid;
	grid-gap: 1.5em;
}
.gallery-item {
	display: inline-block;
	text-align: center;
	width: 100%;
}
.gallery-columns-2 { grid-template-columns: repeat(2, 1fr); }
.gallery-columns-3 { grid-template-columns: repeat(3, 1fr); }
.gallery-columns-4 { grid-template-columns: repeat(4, 1fr); }
.gallery-columns-5 { grid-template-columns: repeat(5, 1fr); }
.gallery-columns-6 { grid-template-columns: repeat(6, 1fr); }
.gallery-columns-7 { grid-template-columns: repeat(7, 1fr); }
.gallery-columns-8 { grid-template-columns: repeat(8, 1fr); }
.gallery-columns-9 { grid-template-columns: repeat(9, 1fr); }
.gallery-caption { display: block; }

/*--------------------------------------------------------------
# Plugins
--------------------------------------------------------------*/

/* Jetpack infinite scroll
--------------------------------------------- */

/* Hide the Posts Navigation and the Footer when Infinite Scroll is in use. */
.infinite-scroll .posts-navigation,
.infinite-scroll.neverending .site-footer {
	display: none;
}

/* Re-display the Theme Footer when Infinite Scroll has reached its end. */
.infinity-end.neverending .site-footer {
	display: block;
}

/*--------------------------------------------------------------
# Utilities
--------------------------------------------------------------*/

/* Accessibility --------------------------------------------- */

/* Text meant only for screen readers. */
.screen-reader-text {
	border: 0;
	clip: rect(1px, 1px, 1px, 1px);
	clip-path: inset(50%);
	height: 1px;
	margin: -1px;
	overflow: hidden;
	padding: 0;
	position: absolute !important;
	width: 1px;
	word-wrap: normal !important;
}
.screen-reader-text:focus {
	background-color: #f1f1f1;
	border-radius: 3px;
	box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
	clip: auto !important;
	clip-path: none;
	color: #21759b;
	display: block;
	font-size: 0.875rem;
	font-weight: 700;
	height: auto;
	left: 5px;
	line-height: normal;
	padding: 15px 23px 14px;
	text-decoration: none;
	top: 5px;
	width: auto;
	z-index: 100000;
}

/* Do not show the outline on the skip link target. */
#primary[tabindex="-1"]:focus {
	outline: 0;
}

/* Alignments --------------------------------------------- */
.alignleft {
	/*rtl:ignore*/
	float: left;

	/*rtl:ignore*/
	margin-right: 1.5em;
	margin-bottom: 1.5em;
}
.alignright {
	/*rtl:ignore*/
	float: right;

	/*rtl:ignore*/
	margin-left: 1.5em;
	margin-bottom: 1.5em;
}
.aligncenter {
	clear: both;
	display: block;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 1.5em;
}









html{
	font-size: 10px;
	scroll-behavior: smooth;
}
html.sp{
	/*font-size: 7.5px;*/
}

html[lang]{
	margin: 0 !important;
}
#wpadminbar{
	display: none;
}

body{
	padding: 0;
	margin: 0;
	font-family: sans-serif;
	font-size: 1.6rem;
	font-weight: 300;
	line-height: 1.8;
	color: #6e6e6e;
	overflow-x: hidden;
	-webkit-font-smoothing: antialiased;
	-webkit-text-size-adjust: 100%; /* iPhoneだけ文字が大きくなる現象を防ぐ */
	/*font-feature-settings: "palt";*/ /* 文字詰め（フォントにカーニング情報が含まれる場合） */

	 /* iPhoneで上下のバーを抜いた高さ */
	height: -webkit-fill-available;
	height: -moz-available;
}

::-webkit-input-placeholder{ color: #bbb; }
:-moz-placeholder          { color: #bbb; }
:-ms-input-placeholder     { color: #bbb; }

html.pc .sp{ display: none !important; }
html.sp .pc{ display: none !important; }

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

a,
a:link,
a:visited{
	color: #6e6e6e;
}
a:hover{
	text-decoration: none;
}

h1{
	display: flex;
	justify-content: center;
	align-items: center;
	background-image: url();
	background-size: cover;
	background-position: 50%;
	background-repeat: no-repeat;
	height: 410px;
	max-height: 54.6vw;
	margin: 0 0 70px;
}
h1 img{
	max-height: 46%;
}

h2{
	text-align: center;
	font-family: "montserrat", sans-serif;
	font-weight: 300;
	font-size: 3.6rem;
	color: #d0bc7f;
	letter-spacing: 0.1em;
	line-height: 1.5;
	margin: 0.5em 0;
}
h2 small{
	display: block;
	font-family: sans-serif;
	font-weight: 600;
	color: #6e6e6e;
	font-size: 0.55em;
}
html.sp h2{
	font-size: 3.8rem;
	min-height: 80px;
	margin: 80px 0 50px;
}
h3{
	text-align: center;
	font-size: 1.8rem;
	font-weight: 600;
	letter-spacing: 0.1em;
	line-height: 1.5;
	color: #6e6e6e;
	margin: 50px 0;
}
html.sp h3{
	margin: 30px 0;
}
h3.fs20{
	font-size: 2rem;
}

ib{
	display: inline-block;
}

#page{
	min-height: 100vh;
}

.page_width{
	max-width: 94%;
	width: 1000px;
	margin: 0 auto;
}

.page_width2{
	max-width: 100%;
	width: 1000px;
	margin: 0 auto;
}

.ta_center{ text-align: center !important; }



.site-header{
	display: flex;
	justify-content: space-between;
	align-items: center;
	background-color: #fff;
	box-sizing: border-box;
	padding: 0 30px;
	width: 100%;
	min-height: 110px;
	z-index: 1200;
}
html.sp .site-header{
    position: sticky;
    top: 0;
	padding: 0 10px;
	min-height: 55px;
}
html.sp .site-header .site-branding{
	position: relative;
	z-index: 1200;
}
html.sp .site-header .site-branding img{
	width: 310px;
}
#site-navigation{
	display: flex;
}
html.sp #site-navigation{
	flex-direction: column;
	justify-content: flex-start;
	position: fixed;
	left: 0;
	top: 0px;
	box-sizing: border-box;
	width: 100%;
	height: 100vh;
	padding: 100px 10vw 50px;
	background-color: #fff;
	z-index: 1100;

	opacity: 0;
	pointer-events: none;
	transition: opacity 0.3s linear;
}
html.sp #open_nav:checked ~ #site-navigation{
	opacity: 1;
	pointer-events: auto;
}
#site-navigation a{
	display: flex;
	justify-content: center;
	align-items: center;
	min-height: 110px;
	padding: 0 15px;
	text-decoration: none;
	font-size: 1.6rem;
	font-weight: 600;
	letter-spacing: 0.1em;
	transition: 0.2s ease-in-out;
}
html.sp #site-navigation a{
	font-size: 2.5rem;
	padding: 25px 0;
	min-height: 0px;
	border-bottom: 1px solid #777;
}
html.sp #site-navigation a:first-child{
	border-top: 1px solid #777;
}
html.sp #site-navigation .online_shop_link{
	margin: 32px 0;
}
html.sp #site-navigation .online_shop_link a{
	border: 0;
}
#site-navigation a:hover{
	color: #d0af3b;
	/*	background-color: #f1e9d0;*/
}

#open_nav{
	display: none;
}

label[for="open_nav"] {
/*    position: fixed;*/
    top: 10px;
    right: 10px;
    display: flex;
    height: 55px;
    width: 60px;
    border-radius: 5px;
    justify-content: center;
    align-items: center;
    z-index: 1500;
    background-color: #fff;
}
html.pc label[for="open_nav"] {
    display: none;
}
label[for="open_nav"] span,
label[for="open_nav"] span:before,
label[for="open_nav"] span:after {
    content: '';
    display: block;
    height: 1px;
    width: 35px;
    border-radius: 5px;
    background-color: #777;
    position: absolute;
    transition: 0.3s ease-in-out;
}
label[for="open_nav"] span:before {
    bottom: 11px;
}
label[for="open_nav"] span:after {
    top: 11px;
}
label[for="open_nav"] img{
	width: 70px;
}
#open_nav:checked ~ label[for="open_nav"] {
    background-color: transparent;
}
#open_nav:checked ~ label[for="open_nav"] span {
    background-color: rgba(255, 255, 255, 0);/*メニューオープン時は真ん中の線を透明にする*/
}
#open_nav:checked ~ label[for="open_nav"] span::before {
    bottom: 0;
    transform: rotate(35deg);
}
#open_nav:checked ~ label[for="open_nav"] span::after {
    top: 0;
    transform: rotate(-35deg);
}


.gototop{
	position: fixed;
	z-index: 1000;
	max-width: 10vw;
	right: min(30px, 5vw);
	bottom: min(30px, 5vw);
}

.site-footer{
	position: sticky;
	top: 100vh;
	text-align: center;
	font-size: 1.6rem;
	font-weight: 600;
	letter-spacing: 0.1em;
	padding: min(80px, 8vw) 0 30px;
	color: #fff;
	background-color: #d0bc7f;
	margin-top: 100px;
}
.site-footer a{
	text-decoration: none;
	color: #fff;
}
.site-footer a.footer_title{
	font-size: 2.2rem;
	letter-spacing: 0;
}
.site-footer nav{
	display: flex;
	justify-content: center;
	align-items: center;
	flex-wrap: wrap;
	gap: 15px 50px;
	margin: 3em 0 2.3em;
}
.site-footer .footer1{
	line-height: 2.5;
}
.site-footer .copyright{
	font-size: 1.2rem;
	margin-top: min(150px, 20vw);
}
html.sp .site-footer{
	padding: 80px 0;
}
html.sp .site-footer .title{
	width: 260px;
}

.online_shop_tab{
	display: flex;
	justify-content: center;
	align-items: center;
	position: fixed;
	z-index: 1000;
	right: 0;
	top: calc(50% - 100px);
	background-color: #fff;
	border: 1px solid #a6a6a6;
	border-right: 0;
	border-radius: 9px 0 0 9px / 9px 0 0 9px;
	padding: 10px 5px;
	transition: 0.2s ease-in-out;
}
.online_shop_tab:hover{
	padding-right: 10px;
}
html.sp .online_shop_tab img{
	width: 35px;
}

.online_shop_link{
	text-align: center;
	margin: 90px 0;
}
html.sp .online_shop_link{
	margin: 50px 0;
}
.online_shop_link a{
/*	perspective: 1000px;*/
}
html.sp .online_shop_link a{
/*	margin: 0 50px;*/
}
.online_shop_link a img{
	transition: 0.3s ease-in-out;
}
html.sp .online_shop_link a img{
	max-width: 82%;
}
.online_shop_link a img:hover{
	filter: brightness(1.1);
/*	transform: perspective(500px) rotate3d(1, 1, -0.5, 1deg);*/
/*	transform: scale(1.02);*/
}

.button1, .button2{
	display: inline-flex;
	justify-content: center;
	align-items: center;
	text-decoration: none;
	font-size: 1.6rem;
	font-weight: 600;
	box-sizing: border-box;
	padding: 8px 20px;
	min-width: 250px;
	border-radius: 100px;
	margin: 8px 8px;
	transition: 0.2s linear;
}
.button1:hover{
	filter: brightness(1.1);
}
.button1, a.button1{
	background-color: #d0bc7f;
	color: #fff;
}
.button2{
	background-color: #fff;
}

ul.type1{
	padding: 0;
	margin: 30px 0;
	list-style: none;
}
ul.type1 li{
	display: flex;
	margin: 5px 0;
}
ul.type1 li:before{
	content: "一、";
	white-space: nowrap;
}

table.type1{
	border-collapse: collapse;
	border-top: 1px solid #d8d8d8;
	width: 100%;
}
table.type1 th,
table.type1 td{
	text-align: left;
	font-weight: 300;
	border-bottom: 1px solid #d8d8d8;
	padding: 15px 30px;
}
html.sp table.type1 th,
html.sp table.type1 td{
	padding: 11px 15px;
}
table.type1 th{
	white-space: nowrap;
	background-color: #f7f2e3;
}
table.type1 td{
	background-color: #fff;
	width: 750px;
}

table.type2{
	border-collapse: collapse;
	border-top: 1px solid #d8d8d8;
	width: 100%;
}
table.type2 th,
table.type2 td{
	text-align: left;
	font-weight: 300;
	border-bottom: 1px solid #d8d8d8;
	padding: 15px 30px;
}
table.type2 th{
	white-space: nowrap;
	background-color: #f7f2e3;
}
table.type2 td{
	background-color: #fff;
	width: 750px;
}

table.type3,
#wpcf7cpcnf table{
	border-collapse: collapse;
	width: 100%;
}
table.type3 th,
table.type3 td,
#wpcf7cpcnf table th,
#wpcf7cpcnf table td{
	text-align: left;
	font-weight: 300;
	padding: 15px 30px;
}
table.type3 tr:nth-of-type(2n+1) th,
table.type3 tr:nth-of-type(2n+1) td,
#wpcf7cpcnf table tr:nth-of-type(2n+1) th,
#wpcf7cpcnf table tr:nth-of-type(2n+1) td{
	background-color: #f7f2e3;
}
table.type3 th,
#wpcf7cpcnf table th{
	position: relative;
	white-space: nowrap;
	padding-left: max(calc((100vw - 940px) / 2), 5vw);
}
table.type3 th.hissu:after{
	content: "必須";
	position: absolute;
	right: 0;
	top: calc(50% - 12px);
	color: #fff;
	background-color: #d0bc7f;
	border-radius: 4px;
	font-size: 1.3rem;
	padding: 0 7px;
}
table.type3 td,
#wpcf7cpcnf table td{
	background-color: #fff;
/*	width: 750px;*/
	padding-right: max(calc((100vw - 940px) / 2), 10vw);
	padding-left: 10px;
}
table.type3 p,
#wpcf7cpcnf table p{
	margin: 0;
}

input[type="text"],
input[type="email"],
input[type="number"],
input[type="tel"],
input[type="url"],
input[type="password"],
input[type="datetime"],
input[type="datetime-local"],
input[type="date"],
input[type="month"],
input[type="week"],
input[type="time"],
input[type="search"],
textarea{
	font-size: 1.8rem;
	font-weight: 400;
	box-sizing: border-box;
	border: 1px solid #cdcdcd;
	border-radius: 4px;
	padding: 10px;
	margin: 0;
	width: 100%;
	-webkit-appearance: none; /* iPhone の入力欄へのエフェクトを消す */
}

input[name="your-yubin"]{
	width: 250px;
}
html.sp input[name="your-yubin"]{
	width: 200px;
	margin: 0 0 10px;
}

select {
	font-size: 1.8rem;
	line-height: 2;
	color: #fff;
	border-color: transparent;
	box-shadow: none;
	border-radius: 3px;
	padding: 0 24px 0 8px;
	min-height: 30px;
	max-width: 25rem;
	-webkit-appearance: none;
	background: #d0bc7f url(data:image/svg+xml;charset=US-ASCII,%3Csvg%20width%3D%2220%22%20height%3D%2220%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M5%206l5%205%205-5%202%201-7%207-7-7%202-1z%22%20fill%3D%22%23fff%22%2F%3E%3C%2Fsvg%3E) no-repeat right 5px top 55%;
	background-size: 16px 16px;
	cursor: pointer;
	vertical-align: middle;
}

input[type="text"][readonly],
input[type="email"][readonly],
textarea[readonly],
select[readonly]{
	background-color: transparent !important;
	border: 0 !important;
}


.anchor_target{
	position: relative;
	top: -55px;
}

.clear{
	clear: both;
}

.clearfix:after {
  content: "";
  display: block;
  clear: both;
}

.main_image{
	display: flex;
	justify-content: center;
	align-items: center;
	box-sizing: border-box;
	height: calc(100vh - 110px);
	background-size: cover;
	background-position: 50%;
	background-repeat: no-repeat;
}
html.sp .main_image{
	/*height: 33vh;*/
}

.real_estate{
	text-align: center;
	margin: 50px auto;
	max-width: 94%;
}
.real_estate a{
	transition: filter 0.15s linear;
}
.real_estate a:hover{
	filter: brightness(1.1);
}





/* トップページ ******************************************************************************* */

.page-template-top .main_image{
	position: relative;
	z-index: 1100;
	background-image: url(img/top/1_1.webp);
	align-items: flex-end;
	padding: 0 30px 30px;
}
html.sp .page-template-top .main_image{
	background-image: none;
	padding: 0 ;
	height: auto;
}
.page-template-top .main_image img{
	width: 100%;
}

.page-template-top .news .list{
	border-top: 1px solid #d9d9d9;
}
.page-template-top .news .row{
	padding: 20px;
	border-bottom: 1px solid #d9d9d9;
}
html.sp .page-template-top .news .row{
	padding: 8px;
}
.page-template-top .news .row .date{
	font-size: 1.2rem;
	color: #d0bc7f;
	margin-bottom: 10px;
}
html.sp .page-template-top .news .row .date{
	margin-bottom: 2px;
}
.page-template-top .news h2{
	display: flex;
	justify-content: space-between;
	align-items: center;
	min-height: 0;
	padding-right: 30px;
	margin: 60px 0 30px;
	background-image: none;
	color: #6e6e6e;
	letter-spacing: 0.05em;
}
html.sp .page-template-top .news h2{
	margin: 30px 0 25px;
}
.page-template-top .news h2 .list_button{
	text-decoration: none;
	font-size: 1.6rem;
	font-weight: 300;
	color: #fff;
	background-color: #d0bc7f;
	border-radius: 50px;
	padding: 5px 15px;
}
.page-template-top .news h2 .list_button:hover{
	filter: brightness(1.1);
}

.page-template-top .property{
	background-color: #f5f0df;
	padding: 30px 0;
	margin: 70px 0 0;
}
.page-template-top .property h2{
	margin: 0 0 1em;
}
.page-template-top .property a.fudosan_banner{
	width: 430px;
	text-decoration: none;
	transition: filter 0.15s linear;
}
.page-template-top .property a.fudosan_banner:hover{
	filter: brightness(1.1);
}
.fudosan_banner .image{
	background-size: cover;
	background-position: 50%;
	background-repeat: no-repeat;
	width: 100%;
	aspect-ratio: 1000 / 562;
	overflow: hidden;
	margin: 0 0 10px;
}
.fudosan_banner .image .corner{
	display: flex;
	justify-content: flex-end;
	align-items: center;
	flex-direction: column;
	font-size: 1.2rem;
	font-weight: 600;
	line-height: 1.2;
	white-space: nowrap;
	color: #000;
	box-sizing: border-box;
	width: 10em;
	aspect-ratio: 2;
	padding: 0 0 0.4em;
	/*background: #87672C;*/
	background: linear-gradient(45deg,rgba(209, 177, 59, 1) 0%, rgba(255, 221, 54, 1) 70%);
	transform-origin: 0% 100%;
	transform: rotate(-45deg) translate(-1.4em, 1.4em);
}
.fudosan_banner .image .corner .year{
	font-size: 1rem;
}
.fudosan_banner .text{
	font-weight: 600;
}
.fudosan_banner .link_row{
	text-align: center;
}
.page-template-top .property :is(.swiper-button-next, .swiper-button-prev){
	background-image: url(img/top/arrow_l.webp);
	background-size: cover;
	background-position: 50%;
	background-repeat: no-repeat;
	width: 40px;
	height: auto;
	aspect-ratio: 1;
}
.page-template-top .property :is(.swiper-button-next, .swiper-button-prev):after{
	display: none;
}

.page-template-top .img_2{
	width: 100%;
}
.page-template-top .our_vision_content{
	color: #fff;
	background: #577A9C;
	background: linear-gradient(180deg, rgba(87, 122, 156, 1) 0%, rgba(114, 142, 168, 1) 100%);
	padding: 50px 0 100px;
}
.page-template-top .our_vision_content h3{
	font-size: min(2.7rem, 4.1vw);
	white-space: nowrap;
	line-height: 1.8;
	color: #fff;
}
.page-template-top .our_vision_content p{
	font-weight: 600;
	line-height: 1.9;
}
.page-template-top .img_4{
	float: right;
	margin: -20px 50px 10px 40px;
}
.page-template-top .img_5{
	float: left;
	margin: 0 40px 10px 10px;
}
html.sp .page-template-top :is(.img_4, .img_5){
	float: none;
	display: block;
	margin: 0 auto 10px;
}
.page-template-top .img_6{
	max-width: 70%;
}
.page-template-top .fashion_recruit{
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 40px;
	max-width: 94%;
	margin: 0 auto;
}
@media (max-width: 600px) {
	.page-template-top .fashion_recruit{
		flex-direction: column;
		max-width: 60%;
	}
}
.page-template-top .fashion_recruit a{
	transition: filter 0.15s linear;
}
.page-template-top .fashion_recruit a:hover{
	filter: brightness(1.1);
}





/* 新着情報 ******************************************************************************* */

.post_page .post_list article{
	border-top: 1px solid #d9d9d9;
	padding: 20px 30px 50px;
}
.post_page .post_list .date{
	font-size: 1.2rem;
	font-weight: 600;
	color: #d0bc7f;
	margin-bottom: 0.5em;
}
.post_page .post_list .title{
	font-size: 2rem;
	font-weight: 600;
	line-height: 1.5;
	margin-bottom: 2rem;
}
.post_page .post_list .entry-content{
	line-height: 1.9;
}

.nav-links{
	text-align: center;
}
.nav-links .current{
	font-weight: 600;
	margin: 0 5px;
}
.nav-links a{
	text-decoration: none;
	margin: 0 5px;
}
.nav-links a.prev,
.nav-links a.next{
	text-decoration: none;
}





/* 卸売・小売事業部 ************************************************************************ */

.jigyou .page_width2{
	max-width: 80%;
}
.jigyou .img1{
	min-height: 237px;
	background-image: url(img/fashion/2.jpg);
	background-size: cover;
	background-position: 50%;
	background-repeat: no-repeat;
	margin: 0 0 90px;
}
html.sp .jigyou .img1{
	background-image: none;
}
.jigyou .p1{
	text-align: center;
	font-size: 1.8rem;
	font-weight: 600;
	line-height: 2.2;
	margin: 60px 0 50px;
}
html.sp .jigyou .p1{
	font-size: 1.7rem;
	white-space: nowrap;
}
.jigyou .row3{
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
.jigyou .row3 .box{
	flex-basis: 250px;
}
html.sp .jigyou .row3 .box{
	flex-basis: 45%;
	margin-bottom: 30px;
}
.jigyou .row3 .box h3{
	margin: 2rem 0;
}

.jigyou .row4{
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
.jigyou .row4 .box{
	flex-basis: 190px;
	text-align: center;
	margin: 30px 0;
}
.jigyou .row4 .box .image{
	display: flex;
	justify-content: center;
	align-items: center;
	min-height: 85px;
}
.jigyou .row4 .box h3{
	font-size: 1.4rem;
	margin: 20px 0 10px;
}
html.sp .jigyou .row4 .box h3{
	font-size: 1.7rem;
	margin: 2rem 0 1rem;
}
.jigyou .row4 .box p{
	font-size: 1.2rem;
}
html.sp .jigyou .row4 .box p{
	font-size: 1.5rem;
}





/* 会社案内 ******************************************************************************* */

.page-template-profile p,
.page-template-profile li,
.page-template-profile table{
/*	color: #000;*/
}

.page-template-profile .goaisatu p{
	margin: 0;
}
.page-template-profile .name_pic{
	display: flex;
	justify-content: flex-end;
	align-items: flex-end;
	position: relative;
	line-height: 1.4;
/*	margin-top: -260px;*/
	/* top: 0px; */
	float: right;
	shape-outside: polygon(55% 0, 55% 100%, 100% 100%, 100% 0);
}
html.sp .page-template-profile .name_pic{
	display: none;
}
.page-template-profile .name_pic .name{
	margin: 0 20px 0 30px;
}
.page-template-profile .name.sp{
	text-align: center;
	line-height: 1.6;
	margin: 20px 0 0 0;
}
.page-template-profile .name.sp .pic{
	margin: 0 0 20px 0;
}
.page-template-profile .name.sp .name{
	width: 130px;
	margin: 0 0 0 20px;
}

.page-template-profile .gray{
	background-color: #f7f7f7;
	padding: 60px 0;
	margin: 60px 0;
}
html.sp .page-template-profile .gray{
	padding: 30px 0 70px;
	margin: 50px 0 0;
}
.page-template-profile .gray h3{
	margin-top: 20px;
}
.page-template-profile .gray2{
	padding-bottom: min(100px, 10vw);
	margin-bottom: 0;
}
.page-template-profile .site-footer{
	margin-top: 0;
}
.page-template-profile .keieirinen ul,
.page-template-profile .syameinoyurai p{
	color: #000;
}





/* 不動産事業部 ******************************************************************************* */

.page-template-realestate .text1{
	font-weight: 600;
}
.page-template-realestate .text1_1{
	text-align: center;
	font-size: 2.7rem;
	margin: 0 0 2em;
}
.page-template-realestate .text1 .tokucho_link{
	display: flex;
	justify-content: center;
	align-items: flex-end;
	text-align: center;
	box-sizing: border-box;
	padding: 0 0 20px;
	width: min(527px, 90%);
	aspect-ratio: 527 / 267;
	border-radius: 10px;
	margin: 80px auto;
	background-color: #d0bc7f;
	background-image: url(img/realestate/2.webp);
	background-size: contain;
	background-position: 50% 0;
	background-repeat: no-repeat;
	transition: filter 0.2s linear;
}
.page-template-realestate .text1 .tokucho_link:has(a:hover){
	filter: brightness(1.1);
}

.page-template-realestate .property{
	margin: 0 0 150px;
}
.page-template-realestate .property .list{
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	gap: 40px;
	margin: 70px 0;
}
.page-template-realestate .property .fudosan_banner{
	flex-basis: 40%;
	flex-grow: 1;
}

.page-template-realestate #key_features{
	overflow: hidden;
}
html.sp .page-template-realestate .img_3{
	max-width: 140%;
	margin: 0 -20vw;
}
.page-template-realestate #key_features .row{
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	gap: 40px;
	margin: 90px 0;
}
@media (max-width: 700px) {
	.page-template-realestate #key_features .row{
		flex-direction: column;
		align-items: center;
		gap: 3vw;
	}
	.page-template-realestate #key_features .row .text{
		order: 1;
	}
	.page-template-realestate #key_features .row .image{
		order: 2;
	}
}
.page-template-realestate #key_features .row div{
	flex-basis: 40%;
	flex-grow: 1;
}
.page-template-realestate #key_features .row h3{
	text-align: left;
	margin: 0 0 1.8em;
}





/* 取扱不動産の紹介 ******************************************************************************* */

.fudosan_page .pankuzu{
	font-size: 1.4rem;
	font-weight: 600;
	padding: 0.5em 1em;
	background-color: #f7f7f7;
}
html.sp .fudosan_page .pankuzu{
	display: none;
}

.fudosan_page h2{
	margin: 70px 0;
}
html.sp .fudosan_page h2{
	margin: 7vw 0;
}

.fudosan_page .slide .swiper-slide,
.fudosan_page .slide_thumb .swiper-slide{
	/*width: 100%;*/
	/*height: auto;*/
	/*aspect-ratio: 1000 / 562;*/
	width: auto;
	height: min(562px, 56vw);
	background-size: cover;
	background-position: 50%;
	background-repeat: no-repeat;
}

.fudosan_page .slide_thumb{
	margin: 10px 0 min(70px, 8vw);
}
.fudosan_page .slide_thumb .swiper-slide{
	width: auto;
	height: min(90px, 12vw);
}
.fudosan_page .slide .swiper-slide img,
.fudosan_page .slide_thumb .swiper-slide img{
	width: auto;
	height: 100%;
}
.fudosan_page .slide_thumb :is(.swiper-button-next, .swiper-button-prev){
	color: #fff;
	-webkit-text-stroke: 2px #fff;
	text-stroke: 2px #fff;
	margin-top: -23px;
}
.fudosan_page .slide_thumb :is(.swiper-button-next, .swiper-button-prev):after{
	transform: scaleX(0.7);
}

.fudosan_page .tel_contact{
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 30px;
	flex-wrap: wrap;
	margin: min(80px, 10vw) 0;
}

.fudosan_page .kansei{
	display: inline-block;
	font-size: 2rem;
	font-weight: 600;
	line-height: 1.3;
	padding: 0.5em 1.7em 0.5em 0.7em;
	background: linear-gradient(90deg, #FDDD44 0%, #b78f45 100%);
	color: #111; /* ややソフトな黒 */
	clip-path: polygon(0 0, 100% 0, calc(100% - 0.7em) 50%, 100% 100%, 0 100%);
}

.fudosan_page .categories{
	margin: 30px 0;
}
.fudosan_page .categories .category{
	display: inline-block;
	font-size: 1.6rem;
	font-weight: 600;
	line-height: 1.3;
	padding: 0.3em 1.7em 0.3em 0.7em;
	color: #fff;
	background-color: #a82828;
}
.fudosan_page .categories .category2{
	background-color: #6e6e6e;
}
.fudosan_page .title{
	font-size: min(4rem, 6vw);
	font-weight: 600;
	letter-spacing: 0.05em;
	line-height: 1.4;
	padding: 0.3em 0.2em;
	border-bottom: 1px solid #6e6e6e;
}
.fudosan_page .spec{
	background-color: #f7f7f7;
	padding: 30px 0;
}
.fudosan_page .spec h2{
	margin: 20px 0;
}
.fudosan_page .spec table{
	display: inline-table;
	width: auto;
	margin: min(40px, 5vw) 0 0;
}
.fudosan_page .spec table td{
	width: auto;
}
.fudosan_page .map {
	margin: min(100px, 8vw) 0;
}
.fudosan_page .map iframe{
	width: 100%;
	max-height: 80vmin;
}

.fudosan_page ~ .site-footer{
	margin-top: 0;
}





/* 店舗情報 ******************************************************************************* */

.page-template-tenpo .main_image{
	background-image: url(img/tenpo/1.jpg);
}

.page-template-tenpo .shop_list{
	color: #000;
	margin: 80px 0;
	border-top: 1px solid #d8d8d8;
}
.page-template-tenpo .shop_list a{
	color: #000;
}
.page-template-tenpo .shop_list .row{
	padding: 15px 25px;
	border-bottom: 1px solid #d8d8d8;
}
html.sp .page-template-tenpo .shop_list .row{
	padding: 15px 15px;
}



/* 採用情報 ******************************************************************************* */

.page-template-recruit .head_image{
	border-top: 1px solid #d8d8d8;
	margin-top: 60px;
}

.page-template-recruit table.type1{
	color: #000;
}



/* お問合せ ******************************************************************************* */

.privacy_policy_area,
.submit_area,
.tel_area{
	position: relative;
	text-align: center;
}
.privacy_policy_area{
	margin: 80px 0 50px;
}
.tel_area{
	margin: 80px 0 50px;
}
.tel_area a{
	font-size: 2.8rem;
	font-weight: 600;
	color: #d0bc7f;
}
.tel_area .tel_area1{
	display: flex;
	justify-content: center;
	align-items: center;
	flex-direction: column;
	margin: 0.8em 0  1em;
}
.tel_area .tel_area1 a{
	line-height: 1.3;
}

.wpcf7-spinner{
	position: absolute;
	top: calc(50% - 12px);
}

.wpcf7-confirm,
.wpcf7-back,
.wpcf7-submit,
.wpcf7cp-cfm-edit-btn,
a.type1{
	cursor: pointer;
	appearance: none;
	-webkit-appearance: none;
	text-decoration: none;
	font-size: 1.8rem;
	font-weight: 600;
	letter-spacing: 0.1em;
	color: #fff;
	background-color: #d0bc7f;
	border-radius: 8px;
	border: 0;
	padding: 15px 50px;
/*	transition: 0.2s linear;*/
}
a.type1{
	padding: 20px 50px;
}
.wpcf7-confirm:hover,
.wpcf7-back:hover,
.wpcf7-submit:hover,
.wpcf7cp-cfm-edit-btn:hover,
a.type1:hover{
	filter: brightness(1.1);
}

.wpcf7cp-btns{
	text-align: center;
}

.page-template-thanks .link{
	text-align: center;
	margin: 110px 0 120px;
}

input[type="radio"]{
	width: 1.5em;
	height: 1.5em;
	border-radius: 100px;
	background-color: #e3e3e3;
	vertical-align: -0.3em;
	-webkit-appearance: none;
	   -moz-appearance: none;
	        appearance: none;
}
input[type="radio"]:checked{
	background: radial-gradient(circle, #d0bc7f 0%, #d0bc7f 30%, #e3e3e3 36%);
}





/* 404 *************************************************************************** */

.error-404{
	display: flex;
	justify-content: center;
	align-items: center;
	font-size: 3rem;
	font-weight: 600;
	color: #ddd;
	box-sizing: border-box;
	padding: 100px 0 0;
	height: calc(100vh - 750px);
}

