/*
	Theme Name: inoue
	Theme URI:
	Description:
	Author: blow-in
	Version: 202208
*/
/*--------------------------------------------------------------*/
/* Reset */
/*--------------------------------------------------------------*/
body {
	overflow: hidden;
	font-size: 16px;
}
/* 768 */
@media (max-width: 768px) {
	body{
		font-size: 14px;
	}
}
*{font-family: 'Noto Serif JP', serif;}
img{max-width: 100%; vertical-align: bottom;}
a{text-decoration: none;}

table {border-bottom: solid 1px rgba(0,72,33,1);width: 100%;}
table th,
table td{border-top: solid 1px rgba(0,72,33,1);color:#000;letter-spacing: 0;padding:15px 20px;}
table th{width: 20%;background: rgba(0,72,33,0.1);text-align: center;color:rgba(0,72,33,1);}

.flex{display: flex;}
.box {
	padding: clamp(45px, 8.5vw, 100px) 0 clamp(55px, 8.5vw, 100px);
}
.line{border-top:solid 1px rgba(0,72,33,1);}
.block {
	max-width: 1200px;
	margin: 0 auto;
	box-sizing: border-box;
	padding-left: 12px;
	padding-right: 12px;
}
.mini-block {
	max-width: 800px;
	margin: 0 auto;
	box-sizing: border-box;
	padding-left: 12px;
	padding-right: 12px;
}
.tl{text-align: center;font-size: 24px;color:rgba(0,72,33,1);margin-bottom: 50px;}
.tl span{font-size: 13px;display: block;letter-spacing: 0;padding-top: 5px;}
.tl_copy{text-align: center;margin-top:-20px;margin-bottom: 50px;line-height: 180%;letter-spacing: 0}
.subtl{text-align: center;font-size: 22px;color:rgba(0,72,33,1);margin-bottom: 50px;border:solid 1px rgba(0,72,33,1);padding:12px 0;}
/* 768 */
@media (max-width: 768px) {
	.tl,
	.subtl {
		font-size: 20px;
	}
	.tl {
		margin-bottom: 30px;
	}
}
/* 580 */
@media (max-width: 580px) {
	.tl,
	.subtl {
		font-size: 18px;
		margin-bottom: 30px;
	}
	.tl_copy {
		margin-top: 0;
	}
}
.mb0{margin-bottom: 0 !important;}
.mb10{margin-bottom: 10px !important;}
.mb20{margin-bottom: 20px !important;}
.mb30{margin-bottom: 30px !important;}
.mb50{margin-bottom: 50px !important;}
.mb90{margin-bottom: 90px !important;}
.mb100{margin-bottom: clamp(40px, 8.5vw, 100px) !important;}

.note{font-size: 12px;}

.center{text-align: center;}

.btn{text-align:center}
.btn input,
.btn a,
.btn input{display:inline-block;max-width:380px;background:rgba(0,72,33,1);color:#fff;padding:15px 0;width:100%;position:relative;cursor:pointer;transition:1s;outline:none;border:solid 1px rgba(0,72,33,1);font-size:14px;letter-spacing: 0;display: flex;margin:0 auto;justify-content: center;}
.btn input{border:1px solid rgba(0,72,33,1)!important;-webkit-box-sizing:content-box;-webkit-appearance:button;appearance:button;border:none;box-sizing:border-box;}
.btn input:hover,
.btn a:hover{background:#fff;color:rgba(0,72,33,1)}
.btn a:after{content: '';width: 16px;height: 4px;border-bottom: solid 1px;border-right: solid 1px;transform: skew(45deg);position: absolute;right: 40px;top:40%;transition:0.5s;}
.btn a:hover:after{right: 20px;}
.btn.back a:after{content: '';width: 16px;height: 4px;border-bottom: solid 1px;border-left: solid 1px;border-right:none;transform: skew(-45deg);position: absolute;left: 40px;top:40%;transition:0.5s;}
.btn.back a:hover:after{left: 20px;}
.bk{background:rgba(0,72,33,0.05);}
/* 580 */
@media (max-width: 580px) {
	.btn {
		width: 90%;
		margin-left: auto;
		margin-right: auto;
	}
}
/* pc tb sp view */
.sp_view {
	display: none;
}
.tb_view {
	display: none;
}
/* 768 */
@media (max-width: 768px) {
	.pc_view {
		display: none;
	}
	.tb_view {
		display: block;
	}
	.tb_none {
		display: none;
	}
}
/* 580 */
@media (max-width: 580px) {
	.sp_view {
		display: block;
	}
	.sp_none {
		display: none!important;
	}
}

/*--------------------------------------------------------------*/
/* Header */
/*--------------------------------------------------------------*/
#head{position: fixed;top:0;left:0;width: 100%;z-index: 50;padding-bottom: 50px;transition:0.5s;background: transparent;}
#head.fixed{background: linear-gradient(0deg, rgba(0,0,0,0) 5%, rgba(0,0,0,0.6) 80%);}
#head.flex{justify-content: space-between;align-items: center;}
#head a{color:#fff;}

#logo a {
	align-items: center;
	padding: 10px 0 0 2vw;
	filter: drop-shadow(0 0 3px #000);
}
#logo a .img{width: 40px;margin-right: 8px;}
#logo a .img img{margin-top:5px;}
#logo a .name{font-size: 24px;letter-spacing: 0.1em;line-height: 100%;white-space: nowrap;}
#logo a .name .before{font-size: 20px;margin-right: 5px;line-height: 100%}
#logo a .dis{display: block;font-size: 12px;line-height: 100%;letter-spacing: 0;padding-top:8px;}

#nav {justify-content: space-between;width: 50vw;padding-top: 10px;}
#nav li {font-size: 16px;}
#nav li a {display: block;text-align: center;line-height: 100%;filter: drop-shadow(0 0 3px #000);padding:20px 0;position: relative;}
#nav li a::after {position: absolute;bottom: -4px;left: 50%;content: '';width: 40px;height: 1px;background: #fff;opacity: 0;visibility: hidden;transition: .3s;margin-left: -20px;}
#nav li a:hover::after {bottom: -0;opacity: 0.6;visibility: visible;}
#nav li:nth-child(2) a:hover::after,
#nav li:nth-child(4) a:hover::after {display: none;}
#nav li span{font-size: 11px; display: block;text-align: center;line-height: 100%;padding-top:8px;}


.nav-item{position: relative;}

.nav-item_sub {left: 50%;opacity: 0;position: absolute;top: 75px;transition: all 0.2s ease;visibility: hidden;width: 100%;z-index: 1;width: 250px;margin-left: -125px;text-shadow: none;}
#nav .nav-item_sub a{display: block;background: rgba(0,72,33,0.8);margin-bottom: 1px;filter:none;}
.nav-item_sub a::after{display: none;}

.on .nav-item_sub{opacity: 1;visibility: initial;}

#side_btn {
	max-width: 340px;
	width: 28%;
}
#side_btn ul.top_btn li{width: calc(100%/3);margin-right: 1px}
#side_btn ul.top_btn li a {
	display: flex;
	background: rgba(201,160,99,0.8);
	text-align: center;font-size: 14px;
	height: 100%;
	align-items: center;
	justify-content: center;
	line-height: 120%;
	padding:8px 0;
	letter-spacing: 0;
	transition: .3s ease;
}
#side_btn ul.top_btn li:last-child a{background:rgba(0,72,33,0.8);}
#side_btn ul.top_btn li a:hover {
	opacity: 0.8;
}
#side_btn ul.bottom_btn {justify-content:flex-end;padding-top:8px;}
#side_btn ul.bottom_btn li{margin-right: 7.5%}
#side_btn ul.bottom_btn li a {
	font-size: 14px;
	filter: drop-shadow(0 0 3px #000);
	transition: .3s ease;
}
#side_btn ul.bottom_btn li a:hover {
	opacity: 0.8;
}
#side_btn ul.bottom_btn li a:before{content: ">";font-size: 12px}
/* 1200 */
@media (max-width: 1200px) {
	#wpra ul#nav,
	#wpra div#side_btn {
		display: none;
	}
	#wpra h1#logo {
		padding-top: 10px;
		transition: .3s ease;
	}
	#wpra #head.fixed {
		padding-bottom: 20px;
	}
	#wpra #head.fixed h1#logo {
		padding-top: 3px!important;
	}
}

/*--------------------------------------------------------------*/
/* .fixed */
/*--------------------------------------------------------------*/
.fixed {
	position: fixed!important;
	top: 0px;
	z-index: 999;
}

/*--------------------------------------------------------------*/
/* #header SP MENU関連 */
/*--------------------------------------------------------------*/
/* sp_menu_btn */
#header .sp_menu_btn {
	display: none;
	width: 35px;
	position: fixed;
	top: 20px;
	right: 16px;
	cursor: pointer;
	z-index: 9999;
}
#open {
	height: 21px;
}
.menu_line {
	background: #fff;
	display: block;
	height: 2px;
	position: absolute;
	transition:transform .3s;
	width: 100%;
}
.menu--active .menu_line {
	background: #888!important;
}
.menu:hover .menu_line {
	background: #ccc;
}
.menu_line-center {
	top: 9px;
}
.menu_line-bottom {
	bottom: 0;
}
.menu--active .menu_line-top {
	top: 8px;
	transform: rotate(45deg);
}
.menu--active .menu_line-center {
	transform:scaleX(0);
}
.menu--active .menu_line-bottom {
	bottom: 10px;
	transform: rotate(135deg);
}
/* sp_menu_right */
.sp_menu_right {
	background: #fff;
	height: 100vh;
	overflow-y: auto;
	position: fixed;
	right: 0;
	top: 0;
	transform: translateX(100%);
	transition: all .6s cubic-bezier(0.190, 1.000, 0.220, 1.000);
	width: 70%;
	padding: 50px 0 50px 8vw;
	z-index: 98;
	-webkit-overflow-scrolling: touch;
}
.menu--active .sp_menu_right {
	right: 70%;
}
.sp_menu_right #logo {
	margin-bottom: 30px;
}
.sp_menu_right #logo a {
	filter: none;
	color: #004821;
	padding: 0;
	display: inline-flex;
}
.sp_menu_right #logo a .name {
	font-size: 20px;
}
.sp_menu_right #logo a .name .before {
	font-size: 16px;
}
.sp_menu_right #logo a .dis {
	font-size: 11px;
}
.sp_menu_right ul.nav {
	margin-bottom: 20px;
}
.sp_menu_right ul.nav li,
.sp_menu_right ul.nav li dt {
	font-size: 16px;
}
.sp_menu_right ul.nav > li {
	padding: 10px 0;
	position: relative;
}
.sp_menu_right ul.nav > li a {
	display: inline-block;
	color: initial;
}
.sp_menu_right ul.nav > li a:hover {
	color: orange;
}
.sp_menu_right ul.nav > li .sub_link {
	margin-top: 5px;
}
.sp_menu_right ul.sns {
	display: flex;
	justify-content: space-between;
	width: 180px;
}
.sp_menu_right ul.sns > li {
	width: 30%;
}
/* 開閉 */
.sp_menu_right dl {
	display: inline;
	flex-direction: column;
	width: 100%;
}
.sp_menu_right dl dt {
	font-weight: normal;
	width: 100%;
	display: inline;
	cursor: pointer;
	padding: 0;
}
.sp_menu_right dl dt.pm::after {
	content: '\f217';
	font-family: "Ionicons";
	margin-left: 5px;
	font-size: 16px;
}
.sp_menu_right dl dt.open.pm::after {
	content: '\f208';
	font-family: "Ionicons";
}
.sp_menu_right dl dt:hover {
	color: orange;
}
.sp_menu_right dl dd {
	font-weight: normal;
	padding: 0 0 0 15px;
	display: none;
	border: none!important;
}
.sp_menu_right ul.ya li {
	margin-top: 15px;
}
.sp_menu_right ul.ya li::before {
	content: '\f363';
	font-family: "Ionicons";
	margin-right: 8px;
}
/* sp_mail_tel */
.sp_menu_right .sp_mail_tel a.btn_contact {
	background: #DD1B22;
	color: #fff;
	display: flex;
	justify-content: center;
	width: 135px;
	padding: 7px 0;
	margin-bottom: 20px;
}
.sp_menu_right .sp_mail_tel a.btn {
	padding: 15px 10px;
	margin-top: 10px;
}
.sp_menu_right .sp_mail_tel a.tel {
	font-size: 2.0rem;
	font-weight: 700;
	display: flex;
	align-items: center;
}
.sp_menu_right .sp_mail_tel a.tel img {
	width: 22px;
	margin-right: 3px;
}
/* button */
.sp_menu_right .flex.button {
	width: 100%;
	flex-wrap: wrap;
	margin-bottom: 30px;
}
.sp_menu_right .flex.button p.btn {
	min-width: 200px;
	margin: 0 0 5px 5px;
}
.sp_menu_right .flex.button p.btn a:after {
	content: none;
}
/* sp_menu_left */
.sp_menu_left {
	transform: translateX(-100%);
	transition: all .6s cubic-bezier(0.190, 1.000, 0.220, 1.000);
	background: #004821;
	position: fixed;
	left: 0;
	top: 0;
	height: 100vh;
	width: 30%;
	text-align: center;
	z-index: 98;
}
.menu--active .sp_menu_left {
	left: 30%;
}
/* 1200 */
@media (max-width: 1200px) {
	/* sp_menu_btn */
	#header .sp_menu_btn {
		display: block;
	}
}
/* 580 */
@media (max-width: 580px) {
	/* sp_menu_right */
	.sp_menu_right {
		width: 83%;
		padding: 50px 20px 50px 7vw;
	}
	.menu--active .sp_menu_right {
		right: 83%;
	}
	/* sp_menu_left */
	.sp_menu_left {
		width: 17%;
	}
	.menu--active .sp_menu_left {
		left: 17%;
	}
}

/*--------------------------------------------------------------*/
/* SP MENU */
/*--------------------------------------------------------------*/
.menu {
	position: fixed;
	right: 0;
	top: 0;
	background: rgba(0,36,169,0.9);
	color: #F0F0F0;
	height: 100%;
	width: 0;
	overflow: hidden;
	transition: all .3s ease;
	overflow-y: auto;
	z-index: 99;
}
.menu .logo {
	margin-top: 15%;
}
.menu .menu-inner {
	text-align: center;
	max-width: 600px;
	width: 90%;
	margin: 0 auto;
}
.menu--active {
	height: 100vh;
	overflow: hidden;
}
.menu--active::-webkit-scrollbar {
	display: none;
}
.menu--active .menu {
	width: 100%;
	z-index: 99;
}
.menu ul.din {
	padding-top: 40px;
	margin-bottom: 30px;
}
.menu ul.din li {
	display: flex;
	flex-direction: column;
	font-size: 2.2rem;
	padding-bottom: 10px;
	border-bottom: 1px solid #fff;
	margin-bottom: 10px;
	font-family: arial;
	line-height: 1;
}
.menu ul.din li:last-child {
	border-bottom: none;
}
.menu ul.din li a {
	display: contents;
}
.menu ul.din li a span.jp {
	display: block;
	font-size: 1.4rem;
	padding-top: 5px;
}
.menu .sp_contact a {
	display: block;
	max-width: 320px;
	width: 80%;
	padding: 12px;
	margin: 0 auto;
	background: #f59f09;
}
/* 580 */
@media (max-width: 580px) {
	.menu .menu-inner {
		height: 100vh;
		overflow-y: auto;
	}
}
/* 320 */
@media (max-width: 320px) {
	.menu ul.din {
		padding-top: 30px;
		margin-bottom: 15px;
	}
	.menu ul.din li {
		font-size: 2.2rem;
		line-height: 1.3;
	}
}

/*--------------------------------------------------------------*/
/* breadcrumbs */
/*--------------------------------------------------------------*/
.breadcrumbs {
	margin: 10px 0 20px 0;
}
.breadcrumbs span {
	font-size: 14px;
}
.breadcrumbs a {
	color: #000;
}
.breadcrumbs a:hover {
	color: green;
}
@media (max-width: 580px) {
.breadcrumbs span {
	font-size: 10px;letter-spacing: 0;
}
}
/*--------------------------------------------------------------*/
/* mainview */
/*--------------------------------------------------------------*/
#mainview {position: relative;z-index: 0;height: 100vh;overflow: hidden;}
#mainview h2 {
	position: absolute;
	top: 50%;
	left: 50%;
	max-width: 842px;
	width: 85%;
	-webkit-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	filter: drop-shadow(0 0 5px #000);
	display: none;
	z-index: 1;
}
#mainview p{position: absolute;z-index: 1;bottom:20px;left:50%;width: 25px;animation: fluffy1 3s ease infinite;}
@keyframes fluffy1{0%{transform:translateY(0)}5%{transform:translateY(0)}10%{transform:translateY(0)}20%{transform:translateY(-15px)}25%{transform:translateY(0)}30%{transform:translateY(-15px)}50%{transform:translateY(0)}100%{transform:translateY(0)}}
/* mainview */
body.home #mainview .slick-slide img {
	object-fit: cover;
	width: 100%;
	height: 100vh;
}
/* second */
body.second #mainview {
	background: #004821;
	height: clamp(415px, 60vw, 715px);
	display: flex;
	align-items: center;
	justify-content: center;
	flex-direction: column;
	color: #fff;
}
body.second #mainview span {
	font-size: clamp(26px, 3vw, 38px);
	letter-spacing: 0.1em;
	line-height: 100%;
	padding-bottom: clamp(15px, 2.2vw, 25px);
	filter: drop-shadow(0 0 3px #000);
	display: block;
}
body.second #mainview h1 {
	font-size: clamp(18px, 2.2vw, 26px);
	letter-spacing: 0.05em;
	line-height: 120%;
	filter: drop-shadow(0 0 3px #000);
}
body.second #mainview .color {
	height: 100%;
	width: 100%;
}
body.second #mainview .text {
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	text-align: center;
	width: 100%;
}
body.second #mainview img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
	z-index: -1;
}
/* 580 */
@media (max-width: 580px) {
	body.second #mainview img {
		object-position: 5% 50%;
		animation: act_anime 20s infinite alternate linear;
	}
	@keyframes act_anime {
		0% { 
			object-position: 5% 50%;
		}
		100% { 
			object-position: 95% 50%;
		}
	}
}

/*--------------------------------------------------------------*/
/* TOPPAGE */
/*--------------------------------------------------------------*/
/* concept */
#index_con {
	background: url(./img/index_con_bk.png) center center;
	background-size: cover;
}
#index_con .block{max-width: 1000px;}
#index_con .copy{text-align: right;}
#index_con .copybox{writing-mode: vertical-rl;display: inline-block;}
#index_con .copy h3 {
	text-align: left;
	font-size: 20px;
	letter-spacing: 0.2em;
	line-height: 250%;
	margin-left: 2em;
}
#index_con .copy p{
	text-align: left;
	line-height: 300%;
}
/* 580 */
@media (max-width: 580px) {
	#index_con {
		background-repeat: no-repeat;
		background-position: left 15% bottom;
		background-size: 200%;
		padding-bottom: 150px;
	}
	#index_con .copy h3 {
		line-height: 9vw;
		margin-left: 7vw;
	}
	#index_con .copy p{
		line-height: 8vw;
		background: rgba(255,255,255,0.7);
		padding-bottom: 10px;
	}
}

/* concept */
#index_work p.tl_copy {
	padding: 0 15px;
}
#index_work .slick_list{margin-bottom: 50px}
#index_work .slick_list li{width: 310px;margin:0 15px;text-align: center;letter-spacing: 0}
#index_work .slick_list li .thum{width: 310px;overflow: hidden;height: 232px;display: block;}
#index_work .slick_list li a{color:rgba(0,72,33,1);display: block;}
#index_work .slick_list li a .series{font-size: 12px;display:inline-block;line-height: 100%;padding:3px 10px;border: solid 1px rgba(0,72,33,1);margin:15px 0 8px;}
#index_work .slick_list li a .thum img{transition: 1s;}
#index_work .slick_list li a:hover .thum img{transform:scale(1.2,1.2);}
#index_work .slick_list .slick-prev, #index_work .slick_list .slick-next{bottom:-85px;width: 20px;height: 20px;top:auto;}
#index_work .slick_list .slick-prev{border-top: 2px solid rgba(0,72,33,1);border-right: 2px solid rgba(0,72,33,1);-webkit-transform: rotate(-135deg);transform: rotate(-135deg);left:50%;margin-left: -250px}
#index_work .slick_list .slick-next{border-top: 2px solid rgba(0,72,33,1);border-right: 2px solid rgba(0,72,33,1);-webkit-transform: rotate(45deg);transform: rotate(45deg);right:50%;margin-right: -250px}
/* 580 */
@media (max-width: 580px) {
	#index_work p.tl_copy {
		text-align: left;
		margin-bottom: 30px;
	}
	#index_work .slick_list {
		margin-bottom: 30px
	}
}

/* lineup */
#style{background: url(./img/index_sty_bk.png) center center;background-size: 100%;}
#style .lineup {
	display: flex;
	justify-content: space-between;
	margin-bottom: 0;
	flex-wrap: wrap;
}
#style .lineup li{width: 31%;text-align: center;margin-bottom: 50px;}
#style .lineup li a{display: block;color:#000;background:#fff;box-shadow: 0 0 8px rgba(0,0,0,0.2);height: 100%}
#style .lineup li a span{display: block;}
#style .lineup li a span.thum{background: #ddd;width: 100%;height: 194px}
#style .lineup li a span.logo{color: rgba(253,169,0,1);font-size: 14px;padding-top:15px;}
#style .lineup li:nth-child(2) a span.logo{color: rgba(0,125,196,1)}
#style .lineup li:nth-child(3) a span.logo{color: rgba(0,42,110,1)}
#style .lineup li a span.copy{padding: 10px;}
#style .lineup li .btn{display:inline-block;max-width:380px;background:rgba(0,72,33,1);color:#fff;padding:15px 0;width:80%;position:relative;cursor:pointer;transition:1s;outline:none;border:solid 1px rgba(0,72,33,1);font-size:14px;letter-spacing: 0;display: flex;margin:0 auto;justify-content: center;margin: 15px auto 20px}
#style .lineup li a:hover .btn{background:#fff;color:rgba(0,72,33,1)}
#style .lineup li .btn:after{content: '';width: 16px;height: 4px;border-bottom: solid 1px;border-right: solid 1px;transform: skew(45deg);position: absolute;right: 40px;top:40%;transition:0.5s;}

#style .lineup li a .flex{flex-wrap: wrap;justify-content: space-between;padding:0 30px;margin-bottom: 10px;}
#style .lineup li a .flex li{width: 33%;background:rgba(253,169,0,1);color:#fff;font-size: 14px;line-height: 100%;padding:5px 0; }
#style .lineup li:nth-child(2) a .flex li{width: 24.5%;}
#style .lineup li:nth-child(2) a .flex li{background:rgba(0,125,196,1);}
#style .lineup li:nth-child(3) a .flex li{background:rgba(0,42,110,1);}
/* 580 */
@media (max-width: 580px) {
	#style p.tl_copy {
		text-align: left;
		margin-bottom: 30px;
	}
	#style .lineup {
		margin-bottom: 20px;
	}
	#style .lineup li{
		width: 100%;
		margin-bottom: 40px;
	}
}

/* quality_area */
body.home #quality_area {
	padding: clamp(45px, 8.5vw, 100px) 0 clamp(55px, 8.5vw, 100px);
}
/* 580 */
@media (max-width: 580px) {
	body.home #quality_area p.tl_copy {
		text-align: left;
		margin-bottom: 30px;
	}
}

/* voice */
#voice .slick_list{margin-bottom: 50px;}
#voice li{width: 310px;margin:0 15px;text-align: center;letter-spacing: 0;}
#voice li a{display: block;color:rgba(0,72,33,1);}
#voice .slick_list a{display: block;color:rgba(0,72,33,1);}
#voice span{display: block;}
#voice .thum {
	border-radius: 50%;
	overflow: hidden;
	transition: 0.5s;
	margin-bottom: 15px;
}
#voice a:hover .thum{border-radius: 40%;}
#voice .series {
	font-size: 12px;
	display: inline-block;
	line-height: 100%;
	padding: 3px 10px;
	border: solid 1px rgba(0,72,33,1);
	margin: 0 0 8px 0;
}
/* 580 */
@media (max-width: 580px) {
	#voice .slick_list {
		margin-bottom: 35px;
	}
}

/* index_news */
#index_news {
	padding-left: 12px;
	padding-right: 12px;
}
#index_news ul.event {
	justify-content: space-between;
	flex-wrap: wrap;
	width: 94%;
	margin:0 auto 50px;
	font-size: 14px;
}
#index_news ul.event_list li{padding:0 10px}
#index_news ul.event_list .slick-list{overflow:visible }
#index_news ul.event li {
	width: 23%;
	text-align: center;
	position: relative;
}
#index_news ul.event li span.thum {
	height: 15vw;
	display: flex;
	align-items: center;
	background: #fff;
	box-shadow: 0 0 8px rgba(0,0,0,0.2);
	margin-bottom: 15px;
}
#index_news ul.event li a{color:rgba(0,72,33,1)}
#index_news ul.event li span.new {
	position: absolute;
	top: -10px;
	left: -10px;
	width: 45px;
	height: 45px;
	border-radius: 50%;
	background: #c30d23;
	color: #fff;
	display: flex;
	justify-content: center;
	align-items: center;
	font-size: 11px;
	pointer-events: none;
}
#index_news ul.event li span.thum img {
	width: 100%;
}
#index_news div.news_box dt {
	padding-top: 10px;
}
#index_news div.news_box dd {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
}
#index_news div.news_box dd a {
	color: rgba(0,72,33,1);
	transition: .3s ease;
}
#index_news div.news_box dd a:hover {
	color: orange;
}
#index_news div.news_box dd ul.cat {
	display: flex;
	margin-right: 5px;
}
#index_news div.news_box dd ul.cat li {
	margin-right: 5px;
}
#index_news div.news_box dd ul.cat li a {
	padding: 2px 5px;
	font-size: 12px;
	display: block;
	color: #fff;
	background: #ddd;
}
#index_news div.news_box dd ul.cat li a:hover {
	opacity: 0.7;
}
/* 580 */
@media (max-width: 580px) {
#index_news ul.event_list{margin-bottom: 0 !important}
	#index_news h2 {
		margin-bottom: 35px;
	}
	#index_news ul.event {
		width: 100%;
	}
	#index_news ul.event li {
		width: 47%;
		margin-bottom: 25px;
	}
	#index_news ul.event li span.thum {
		height: 30vw;
	}
	#index_news ul.event li span.title {
		font-size: 12px;
		text-align: left;
		display: block;
	}
	#index_news ul.event {
		margin-bottom: 30px;
	}
	#index_news div.news_box dt {
		padding-bottom: 7px;
	}
}

/* news_box */
.news_box {
	margin: 0 auto 50px;
	max-width: 800px;
	width: 100%;
	border-top: dotted 1px #ccc;
}
.news_box dl{display: table;border-bottom: dotted 1px #ccc;width: 100%;}
.news_box dl dt,
.news_box dl dd{display: table-cell;text-align: left;}
.news_box dl dt {
	width: 150px;
}
.news_box dl dd a{display: block;padding:15px 0;color:rgba(0,72,33,1);}
/* 580 */
@media (max-width: 580px) {
	.news_box dl {
		display: block;
	}
	.news_box dl dt {
		display: block;
		width: 100%;
		padding: 15px 6px 0 6px;
	}
	.news_box dl dd {
		display: block;
	}
	.news_box dl dd a {
		padding: 10px 6px 15px 6px;
	}
}

/* index_shop */
#index_shop .shop{justify-content: space-between;flex-wrap: wrap;margin-bottom: 20px}
#index_shop .shop li{width: 48%;justify-content: space-between;align-items: center;margin-bottom: 30px}
#index_shop .shop li .thum{width: 43%;}
#index_shop .shop li .dis{width: 54%;font-size: 14px;line-height: 180%;letter-spacing: 0}
#index_shop .shop li .dis h3{font-size:18px;margin-bottom: 5px}
#index_shop .shop li .dis h3 span{font-size: 14px;}
#index_shop .shop li .dis .btn {padding-top:12px;}
#index_shop .shop li .dis .btn a{padding:8px 0;}

#index_shop div.flex{justify-content: space-between;font-size: 14px;letter-spacing: 0;}
#index_shop div.flex h3{font-size: 22px;margin-bottom: 20px;padding-bottom: 15px;border-bottom: solid 1px rgba(0,72,33,1);line-height: 100%;color:rgba(0,72,33,1);}
#index_shop div.flex li{text-align: center;}
#index_shop div.flex li img{margin-bottom: 10px;}
#index_shop .left{width: 23%}
#index_shop .right{width: 73.5%}
#index_shop .right li{width: 31.1%}
#index_shop .right .flex{justify-content: space-between;}
/* 768 */
@media (max-width: 768px) {
	#index_shop .shop li {
		width: 100%;
		flex-wrap: wrap;
	}
}
/* 580 */
@media (max-width: 580px) {
	#index_shop .shop li {
		margin-bottom: 50px;
	}
	#index_shop .shop li .thum {
		width: 100%;
		margin-bottom: 10px;
	}
	#index_shop .shop li .thum img {
		width: 100%;
	}
	#index_shop .shop li .dis {
		width: 100%;
	}
	#index_shop div.flex {
		display: block;
	}
	#index_shop div.flex h3 {
		font-size: 18px;
		padding-bottom: 10px;
	}
	#index_shop .left {
		width: 100%;
		margin-bottom: 40px;
	}
	#index_shop .right {
		width: 100%;
	}
	#index_shop .right .flex {
		display: block;
	}
	#index_shop .right .flex li {
		width: 100%;
		margin-bottom: 40px;
	}
}



/*--------------------------------------------------------------*/
/* 仲介物件 */
/*--------------------------------------------------------------*/
body #brokered_list ul{flex-wrap: wrap;}
body #brokered_list li{width: 30%;margin:0 5% 5% 0;text-align: center;letter-spacing: 0}
body #brokered_list li:nth-child(3n){margin-right:0 }
body #brokered_list li .thum{width: 100%;overflow: hidden;height: 50%;display: block;margin-bottom: 10px}
body #brokered_list li a{color:rgba(0,72,33,1);display: block;}
body #brokered_list li a .series{font-size: 12px;display:inline-block;line-height: 100%;padding:3px 10px;border: solid 1px rgba(0,72,33,1);margin:15px 0 8px;}
body #brokered_list li a .thum img{transition: 1s;}
body #brokered_list li a:hover .thum img{transform:scale(1.2,1.2);}
body #brokered_list li.zero {
	padding: 60px;
	border: 1px solid green;
	text-align: center;
	width: 100%;
	margin: 0 0 60px 0;
}/* 768 */
@media (max-width: 768px) {
	body #brokered_list li {
		width: calc(95% / 2);
		margin-right: 5%;
	}
body #brokered_list li:nth-child(3n){margin-right:5%;}
	body #brokered_list li:nth-child(2n) {
		margin-right: 0;
	}
	body.brokered #brokered .tl {padding-top: 0;}

}
body.brokered .estate_nav {
	display: flex;
	color: #fff;
	background: rgba(0,72,33,1);
	align-items: center;
	width: 48%;
	margin-bottom: 100px;
	padding: 20px 0;
}
body.brokered .estate_nav:last-child{width: 48%}
body.brokered .nav_block{justify-content: space-between;flex-wrap: wrap;}

body.brokered .estate_nav h3{width: 7em;text-align: center;border-right: solid 1px rgb(255,255,255,0.5);margin-right: 30px;}
body.brokered .estate_nav span.txt{
	color: #fff;
	display: block;
	transition: 0.5s;
}
body.brokered .estate_nav span.txt:not(.active)::before {
	content: '\025cb';
	margin-right: 3px;
}
body.brokered .estate_nav span.txt.active::before {
	content: '\025cf';
	margin-right: 3px;
}
body.brokered .estate_nav .wrap {
	display: flex;
	flex: 1;
	padding-right: 4vw;
}

body.brokered #content table{margin:0 0 50px }
	body.brokered .estate_nav .wrap span.active,
	body.brokered .estate_nav .wrap a {
		margin-right: 15px;
		padding: 5px 0;
	}

body.brokered section#list header h1 {
	font-size: 20px;
	color: rgba(0,72,33,1);
	text-align: center;
	margin-bottom: 60px;
}

body.brokered #estate .thum{margin-bottom: 15px}

body.brokered #estate_list li a h3{margin: 0 !important;text-align: center;}

/* 1100 */
@media (max-width: 1100px) {
	body.brokered .estate_nav {
		width: 100%;
		margin-bottom: 20px;
	}
	body.brokered .estate_nav:last-child {
		width: 100%;
		margin-bottom: max(9vw, 40px);
	}
	body.brokered .estate_nav .wrap {
		justify-content: initial;
		padding-right: 0;
	}
	body.brokered .estate_nav .wrap span.active,
	body.brokered .estate_nav .wrap a {
		margin-right: 2vw;
	}
}

/* 580 */
@media (max-width: 580px) {
	body.brokered .estate_nav {
		padding: 5px 0;
		margin-bottom: 10px;
	}
	body.brokered .estate_nav .wrap {
		flex-wrap: wrap;
	}
	body.brokered .estate_nav h3 {
		width: 50px;
		text-align: center;
		margin-right: 11px;
	}
}


/*--------------------------------------------------------------*/
/* 施工事例集 PAGE [High design] */
/*--------------------------------------------------------------*/
body.gallery #gallery .wrap {
	display: flex;
	width: 100%;
	color: #fff;
	background: rgba(0,72,33,1);
	align-items: center;
	padding: 15px 0;
	margin-bottom: 1px;
}
body.gallery #gallery .wrap h3 {
	min-width: 170px;
	width: 12vw;
	text-align: center;
	border-right: solid 1px rgb(255,255,255,0.5);
	margin-right: 30px;
}
body.gallery #gallery .wrap ul {
	display: flex;
	flex-wrap: wrap;
}
body.gallery #gallery .wrap ul li {
	margin-right: 1.2vw;
	padding: 5px 0;
}
body.gallery #gallery .wrap ul li.active {
	color: #fff000;
}
body.gallery #gallery .wrap ul li a {
	color: #fff;
	display: block;
	transition: 0.5s;
	letter-spacing: 0;
}
body.gallery #gallery .wrap ul li a:hover{
	color:#fff000;
}
body.gallery #gallery .wrap ul li a.select {
	color:#fff000;
}
body.gallery #gallery .tl {padding-top: clamp(40px, 8.5vw, 100px);}
body #gallery_list ul{flex-wrap: wrap;}
body #gallery_list li{width: 30%;margin:0 5% 5% 0;text-align: center;letter-spacing: 0}
body #gallery_list li:nth-child(3n){margin-right:0 }
body #gallery_list li .thum{width: 100%;overflow: hidden;height: 50%;display: block;}
body #gallery_list li a{color:rgba(0,72,33,1);display: block;}
body #gallery_list li a .series{font-size: 12px;display:inline-block;line-height: 100%;padding:3px 10px;border: solid 1px rgba(0,72,33,1);margin:15px 0 8px;}
body #gallery_list li a .thum img{transition: 1s;}
body #gallery_list li a:hover .thum img{transform:scale(1.2,1.2);}
body #gallery_list li.zero {
	padding: 60px;
	border: 1px solid green;
	text-align: center;
	width: 100%;
	margin: 0 0 60px 0;
}
body.gallery #gallery .slick-prev{border-top: 2px solid rgba(0,72,33,1);border-right: 2px solid rgba(0,72,33,1);-webkit-transform: rotate(-135deg);transform: rotate(-135deg);}
body.gallery #gallery .slick-next{border-top: 2px solid rgba(0,72,33,1);border-right: 2px solid rgba(0,72,33,1);-webkit-transform: rotate(45deg);transform: rotate(45deg);}
/* 768 */
@media (max-width: 768px) {
	body #gallery_list li {
		width: calc(95% / 2);
		margin-right: 5%;
	}
	body #gallery_list li:nth-child(2n) {
		margin-right: 0;
	}
}
/* 580 */
@media (max-width: 580px) {
	body.gallery #gallery .wrap {
		display: block;
		padding: 13px 0 5px 0;
	}
	body.gallery #gallery .wrap h3 {
		width: 100%;
		text-align: center;
		border-right: none;
		border-bottom: solid 1px rgb(255,255,255,0.5);
		margin-right: 0;
		padding-bottom: 10px;
		margin-bottom: 5px;
	}
	body.gallery #gallery .wrap ul {
		padding: 0 10px;
	}
	body.gallery #gallery .wrap ul li {
		margin-right: 2.2vw;
	}
}

/*--------------------------------------------------------------*/
/* 施工事例 詳細 PAGE [High design] */
/*--------------------------------------------------------------*/
body.gallery #gallery_slide {
	position: relative;
}
body.gallery #gallery_slide ul.parent li {
	max-height: 800px;
	height: 68vw;
}
body.gallery #gallery_slide ul.parent li img {
	object-fit: cover;
	width: 100%;
	height: 100%;
}
body.gallery #gallery_slide .slick-prev {
	position: absolute;
	top: 50%;
}
body.gallery #gallery_slide .slick-next {
	position: absolute;
	top: 50%;
}
/* thumbnail */
body.gallery ul.thumbnail {
	margin-bottom: 60px;
}
body.gallery ul.thumbnail .slick-track {
	transform: unset !important;
	height: clamp(55px, 11vw, 140px);
}
body.gallery ul.thumbnail li {
	opacity: 0.3;
	transition: opacity .3s linear;
	cursor: pointer;
	height: 100%;
}
body.gallery ul.thumbnail li.slick-current {
	opacity: 1;
}
body.gallery ul.thumbnail li img {
	object-fit: cover;
	width: 100%;
	height: 100%;
}
body.gallery p.info_text {
	margin-bottom: 90px;
	text-align: center;
	line-height: 180%;
}
body.gallery ul.photo_text {
	margin-bottom: 120px;
}
body.gallery ul.photo_text li {
	display: flex;
	flex-wrap: wrap;
	margin-bottom: 60px;
}
body.gallery ul.photo_text li .left {
	width: 50%;
}
body.gallery ul.photo_text li .right {
	width: 50%;
	display: flex;
	align-items: center;
	padding-left: 5vw;
}
body.gallery ul.photo_text li:nth-child(even) {
	flex-direction: row-reverse;
}
body.gallery ul.photo_text li:nth-child(even) .right {
	padding-left: initial;
	padding-right: 5vw;
	text-align: right;
}
body.gallery ul.photo_text li .right span.text {
	width: 100%;
}
body.gallery ul.photo_text li .right span.text h2 {
	font-size: 26px;
	margin-bottom: 30px;
}
/* gaiyou */
body.gallery .gaiyou {
	display: flex;
	flex-wrap: wrap;
}
body.gallery .gaiyou.none .left {
	width: 100%;
}
body.gallery .gaiyou .left {
	width: 60%;
}
body.gallery .gaiyou .left h2 {
	font-weight: bold;
	margin-bottom: 30px;
}
body.gallery .gaiyou .left a {
	color: rgba(0,72,33,1);
	text-decoration: underline;
	transition: .3s ease;
}
body.gallery .gaiyou .left a:hover {
	color: orange;
	text-decoration: none;
}
body.gallery .gaiyou .right {
	width: 40%;
	padding-left: 5vw;
}
/* voice */
body.gallery .voice {width: 310px;margin:0 auto;text-align: center;letter-spacing: 0;}
body.gallery .voice a{display: block;color:rgba(0,72,33,1);}
body.gallery .voice span{display: block;}
body.gallery .voice .thum {
	border-radius: 50%;
	overflow: hidden;
	transition: 0.5s;
	margin-bottom: 15px;
}
body.gallery .voice a:hover .thum{border-radius: 40%;}
body.gallery .voice .series {
	font-size: 12px;
	display: inline-block;
	line-height: 100%;
	padding: 3px 10px;
	border: solid 1px rgba(0,72,33,1);
	margin: 0 0 8px 0;
}
/* 768 */
@media (max-width: 768px) {
	/* thumbnail */
	body.gallery ul.photo_text li .right span.text h2 {
		font-size: 20px;
		margin-bottom: 20px;
	}
	body.gallery ul.photo_text li .right {
		padding-left: 3vw;
	}
	body.gallery ul.photo_text li:nth-child(even) .right {
		padding-right: 3vw;
	}
}
/* 580 */
@media (max-width: 580px) {
	/* thumbnail */
	body.gallery ul.thumbnail {
		margin-bottom: 40px;
	}
	body.gallery p.info_text {
		margin-bottom: 40px;
	}
	body.gallery ul.photo_text {
		margin-bottom: 70px;
	}
	body.gallery ul.photo_text li {
		display: block;
		margin-bottom: 40px;
	}
	body.gallery ul.photo_text li .left {
		width: 100%;
		margin-bottom: 20px;
		text-align: left;
	}
	body.gallery ul.photo_text li .right {
		width: 100%;
		padding-left: 10px;
		padding-right: 10px;
	}
	body.gallery ul.photo_text li:nth-child(even) .right {
		text-align: left;
		padding-left: 10px;
		padding-right: 10px;
	}
	body.gallery ul.photo_text li .right span.text h2 {
		font-size: 18px;
		margin-bottom: 12px;
	}
	/* gaiyou */
	body.gallery .gaiyou .left table th {
		display: block;
		width: 100%;
		padding: 10px;
	}
	body.gallery .gaiyou .left table td {
		display: block;
		width: 100%;
	}
}

/*--------------------------------------------------------------*/
/* 高品質な住まい PAGE [High quality] */
/*--------------------------------------------------------------*/
#quality_area{padding-bottom: 0}
#quality_area .quality{flex-wrap: wrap;justify-content: space-between;}
#quality_area .quality li{text-align: center;width: 31%;margin-bottom: 5%}
#quality_area .quality li a{position: relative;display: block;}
#quality_area .quality span{display: block;}
#quality_area .quality .thum{position: relative;top:0;left: 0;line-height: 0;border-radius: 5px;overflow: hidden;}
#quality_area .quality .thum span{background:rgba(0,72,33,0.3);width: 100%;height: 100%;position: absolute;transition:1s;}
#quality_area .quality .num {
	font-family: 'Great Vibes';
	font-size: clamp(35px, 7vw, 80px);
	z-index: 9;
	position: absolute;
	width: 100%;
	top: 12%;
	color: #fff;
	line-height: 100%;
	filter: drop-shadow(0 0 3px #000);
}
#quality_area .quality .copy {
	font-size: clamp(15px, 2vw, 24px);
	z-index: 9;
	width: 100%;
	color: #fff;
	filter: drop-shadow(0 0 3px #000);
	position: absolute;
	top: 50%;
	line-height: 140%;
}
#quality_area .quality .btn{
	z-index: 9;
	position: absolute;
	width: 100%;
	bottom: -25px;
	color:#fff;
	background: rgba(0,72,33,1);
	width: 90%;
	left: 50%;
	margin-left: -45%;
	padding: 15px 0;
	letter-spacing: 0;
	border: solid 1px rgba(0,72,33,1);
	transition: 1s;
}
#quality_area .quality li a:hover .btn{background:#fff;color:rgba(0,72,33,1);}
#quality_area .quality li a .btn:after{content: '';width: 16px;height: 4px;border-bottom: solid 1px;border-right: solid 1px;transform: skew(45deg);position: absolute;right: 20px;top:40%;transition:0.5s;}
#quality_area .quality li a:hover .btn:after{right: 10px;}
#quality_area .quality li a:hover .thum span{background:rgba(0,72,33,0);}
#quality_area .quality li.quality09 img {
	max-width: 203px;
	width: 15vw;
	margin-top: 25px
}
/* 1000 */
@media (max-width: 1000px) {
	#quality_area .quality .btn{
		bottom: -30px;
	}
}
/* 768 */
@media (max-width: 768px) {
	#quality_area .quality .copy {
		top: 43%;
	}
	#quality_area .quality .btn{
		position: relative;
		padding: 10px 0;
		margin-top: 5px;
		bottom: initial;
	}
	#quality_area .quality li a .btn:after {
		content: none;
	}
}
/* 580 */
@media (max-width: 580px) {
	#quality_area .quality .num {
		top: 5%;
	}
	#quality_area .quality .copy {
		top: 33%;
	}
	#quality_area .quality li {
		width: calc(97% / 2);
		margin-bottom: 20px;
	}
	#quality_area .quality li.quality09 {
		display: none;
	}
	#quality_area .quality .btn {
		width: 100%;
		left: initial;
		margin-left: initial;
		font-size: 12px;
		line-height: 1.3;
	}
	#quality_area .quality li:nth-child(8) .btn {
		font-size: 10px;
	}
}

/* down */
body.quality #quality dl{border-top: solid 1px rgba(0,72,33,1);margin-bottom: 50px;}
body.quality #quality dt{background:rgba(0,72,33,1);color:#fff;padding:40px 0 ;width: 12%;text-align: center; }
body.quality #quality dt span{display: block;text-align: center;letter-spacing: 0;white-space: nowrap;font-size: 12px;}
body.quality #quality dt span.tl02{font-size: 18px;letter-spacing: 0.05em;}
body.quality #quality dt strong {
	font-size: clamp(30px, 7vw, 80px);
	white-space: nowrap;
	font-family: 'Great Vibes', cursive;
}
body.quality #quality dd{padding:40px 0 0 40px;width: 88%;letter-spacing: 0 }
body.quality #quality dd h3{
	font-size: clamp(20px, 4vw, 30px);
	line-height: 120%;
	padding-bottom: 12px;
	color:rgba(0,72,33,1);
}
body.quality #quality dd span{line-height: 100%;color:rgba(0,72,33,1);}
body.quality #quality dd .tl_qua{padding-bottom: 20px}
body.quality #quality dd p.copy{font-size: 14px;letter-spacing: 0;line-height: 160%;padding-bottom: 30px}
body.quality #quality dd ul{justify-content: space-between;}
body.quality #quality dd ul li{width: 48%}
body.quality #quality dd ul li img{margin-bottom: 15px;width: 100%;}
body.quality #quality dd ul li h4{text-align: center;font-size: 18px;margin-bottom: 15px}
body.quality #quality dd ul li p{line-height: 180%;margin-bottom: 20px;font-size: 14px;}
body.quality #quality dd ul li p.btn {margin-bottom:0;}
body.quality #quality dd ul li p.btn a{max-width: 90%;}

body.quality .sumail {
	padding: clamp(20px, 5vw, 50px);
	text-align: center;
	background: rgba(246,233,209,1);
}
body.quality .sumail h3 {
	font-size: clamp(16px, 3vw, 26px);
	font-weight: bold;
	margin-bottom: 20px;
}
/* 768 */
@media (max-width: 768px) {
	body.quality #quality dl dd ul {
		display: block;
	}
	body.quality #quality dl dd ul li {
		width: 100%;
		margin-bottom: 60px;
	}
	body.quality #quality dl#quality07 dd ul li {
		margin-bottom: 5px;
	}
	body.quality #quality dd {
		padding: 40px 0 0 30px;
	}
	body.quality .sumail h3 {
		text-align: left;
	}
}
/* 580 */
@media (max-width: 580px) {
	body.quality #quality dt {
		position: relative;
		padding: 30px 0;
	}
	body.quality #quality dt span {
		transform: rotate(270deg);
		transform-origin: center;
	}
	body.quality #quality dt span.tl01 {
		position: absolute;
		top: 100px;
		left: -20px;
	}
	body.quality #quality dt span.tl02 {
		position: absolute;
		top: 96px;
		left: -4px;
	}
	body.quality #quality dl dd ul li {
		margin-bottom: 40px;
	}
	body.quality #quality dd {
		padding: 30px 0 0 20px;
	}
	body.quality #quality dd ul li h4 {
		font-size: 16px;
		margin-bottom: 10px;
	}
	body.quality .sumail h3 {
		margin-bottom: 10px;
	}
	body.quality #quality dl dd p.btn {
		width: 100%;
	}
	body.quality #quality dl dd p.btn a {
		max-width: 100%;
	}
	body.quality #quality dl dd p.btn a::after {
		content: none;
	}
}

/*--------------------------------------------------------------*/
/* 注文住宅ガイド PAGE [Housing guide] */
/*--------------------------------------------------------------*/
body.guide #guide_flow ul li {
	align-items: center;
	align-items: stretch;
	flex-wrap: wrap;
	background: rgba(0,72,33,0.05);
	margin-bottom: 100px;
	position: relative;
}
body.guide #guide_flow ul li:nth-child(2n){flex-direction: row-reverse;}
body.guide #guide_flow ul li:last-child{background:rgba(0,72,33,1);margin-bottom: 0;color:#fff;}
body.guide #guide_flow ul li:after{content:"";position: absolute;bottom: -55px;left:50%;  display:block;width: 24px;height: 24px;border-bottom: 2px solid rgba(0,72,33,1);border-right: 2px solid rgba(0,72,33,1);transform: rotate(45deg);margin-left: -12px;}
body.guide #guide_flow ul li:last-child:after{display: none;}

body.guide #guide_flow ul li div {
	width: 50%
}
body.guide #guide_flow ul li div.copy {
	padding: clamp(20px, 4vw, 50px);
}
body.guide #guide_flow ul li div.copy h3 {
	font-size: clamp(18px, 3vw, 26px);
	padding-bottom: 20px
}
body.guide #guide_flow ul li div.copy p{line-height: 240%;letter-spacing: 0;}
body.guide #guide_flow ul li div.thum img {
	object-fit: cover;
	height: 100%;
}
/* 768 */
@media (max-width: 768px) {
	body.guide #guide_flow ul li div.copy h3 {
		padding-bottom: 10px
	}
}
/* 580 */
@media (max-width: 580px) {
	body.guide #guide_flow ul li div {
		width: 100%
	}
	body.guide #guide_flow ul li div.copy {
		padding: 20px 15px 10px 15px;
	}
}

/*--------------------------------------------------------------*/
/* 住まいのスタイル PAGE [Style select] */
/*--------------------------------------------------------------*/
body.style #style{background:url(./img/sty_bk.png) center bottom no-repeat;background-size:100%;}
body.style #style ul {
	align-items: flex-start;
	flex-wrap: wrap;
	margin: 0;
}
body.style #style ul li a {
	box-shadow: 0px 3px 8px rgb(0 0 0 / 30%);
	padding-bottom: 30px;
	margin-bottom: 30px;
}
body.style #style ul li .fukidashi {
	padding: 15px 10px;
	text-align: center;
	background: rgba(253,169,0,1);
	color: #fff;
	font-size: clamp(16px, 2vw, 20px);
	margin-bottom: 22px;
	letter-spacing: 0;
	font-size: 95%;
	position: relative;
}
body.style #style ul li .fukidashi:after{content: "";display: block;border-style: solid;border-width: 22px 16px 0 16px;border-color: rgba(253,169,0,1) transparent transparent transparent;left:50%;bottom:-20px;position: absolute;margin-left: -7px;}
body.style #style ul li:nth-child(2) .fukidashi{background:rgba(0,125,196,1);}
body.style #style ul li:nth-child(2) .fukidashi:after{border-color:rgba(0,125,196,1) transparent transparent transparent;}
body.style #style ul li:nth-child(3) .fukidashi{background:rgba(0,42,110,1);}
body.style #style ul li:nth-child(3) .fukidashi:after{border-color:rgba(0,42,110,1) transparent transparent transparent;}
body.style #style ul li .btn{display:inline-block;max-width:380px;background:rgba(0,72,33,1);color:#fff;padding:15px 0;width:80%;position:relative;cursor:pointer;transition:1s;outline:none;border:solid 1px rgba(0,72,33,1);font-size:14px;letter-spacing: 0;display: flex;margin:0 auto;justify-content: center;}
body.style #style ul li a:hover .btn{background:#fff;color:rgba(0,72,33,1)}
body.style #style ul li .btn:after{content: '';width: 16px;height: 4px;border-bottom: solid 1px;border-right: solid 1px;transform: skew(45deg);position: absolute;right: 40px;top:40%;transition:0.5s;}
body.style #style ul li a:hover .btn:after{right: 20px;}
body.style #style .lineup li a .flex {margin-bottom: 20px}
/* 768 */
@media (max-width: 768px) {
	body.style #style ul li .fukidashi br {
		display: none;
	}
	body.style #style ul li .btn:after {
		display: none;
	}
}
/* 580 */
@media (max-width: 580px) {
	body.style #style ul li {
		width: 100%;
		margin-bottom: 30px;
	}
	body.style #style ul li .btn:after {
		display: block;
	}
}


.familiar .mini .block{max-width: 800px;}
.familiar .kodawari .flex {justify-content: space-between;}
.familiar .s02 .img{width: 400px;}
.familiar .s03 .img{width: 400px;}
.familiar .s02 .flex div,
.familiar .s03 .flex div{width: 350px;}
.familiar .s02 .img img,
.familiar .s03 .img img{width: 100%;}


.casai_lusso #upgrade p,
.pasd .hikaku p,
.pasd .pana p,
.pasd .kodawari p,
#style_concept p{line-height: 200%;}
#style_concept .flex {justify-content: space-between;}
#style_concept .flex div{width: 70%;}
#style_concept .img{width: 28%;}
.pasd .mini .block{max-width: 800px;}
.pasd .kodawari .flex {justify-content: space-between;}
.pasd .kodawari .flex li{width: 48%;}
.pasd .kodawari .flex li img{width: 100%;}
.familiar #content strong,
.pasd .hikaku strong.big,
.casai_lusso #upgrade strong,
.casai_lusso #style_concept strong,
.pasd .pana strong{font-family: 'Shippori Mincho', serif;display: block;text-align: center;font-size: 26px;line-height: 140%;margin-bottom: 20px;}
.familiar #content strong.big span,
.pasd .hikaku strong span,
.casai_lusso #upgrade strong span,
.casai_lusso #style_concept strong span,
.pasd .pana strong span{display: block;font-size: 80%;}
.pasd .{display: block;font-size: 80%;}
.pasd .hikaku .flex {justify-content: space-between;}
.pasd .hikaku .flex li{width: 30%;text-align: center;}
.pasd .hikaku .jiken .copy{width: 67%;}
.pasd .hikaku .jiken .img{width: 30%;}
.casai_lusso .jirei .block,
.pasd .jirei .block{max-width: 1200px;width: 1200px}
.pasd .jirei h3,
.pasd .bunjo h3{width: 100%;}
.casai_lusso #upgrade .flex {justify-content: space-between;}
.casai_lusso #upgrade .flex div{width: 60%;text-align: left;}
.casai_lusso #upgrade .flex strong{text-align: left;}
.casai_lusso #upgrade .flex .img{width: 38%;}


/* 580 */
@media (max-width: 580px) {
.pasd .hikaku strong,
.pasd .pana strong{font-size: 20px;}
}


/*--------------------------------------------------------------*/
/* お客様の声 詳細 PAGE [Clients' voice] */
/*--------------------------------------------------------------*/
#voice_detail figure.main_img {
	margin: 0;
}
#voice_detail figure.main_img img {
	width: 100%;
}
#voice_detail .main_text {
	max-width: 600px;
	margin-left: auto;
	margin-right: auto;
	margin-top: -80px;
	margin-bottom: 5vw;
}
#voice_detail .main_text h3 {
	font-size: 30px;
	color: rgba(0,72,33,1);
	margin-bottom: 30px;
}
#voice_detail .main_text h3 span.txt {
	background: #fff;
}
/* ul.voice_photos */
ul.voice_photos figure {
	margin: 0;
}
ul.voice_photos li {
	padding: 5vw 0;
}
ul.voice_photos li p.txt {
	max-width: 600px;
	margin: 0 auto;
}
/* ギャラリー => 写真大 */
ul.voice_photos div.g5 figure {
	height: 600px;
}
ul.voice_photos div.g5 figure a img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
}
/* 1320 */
@media (max-width: 1320px) {
	ul.voice_photos div.g5 figure {
		height: max(45.4vw, 200px);
	}
}
/* ギャラリー => 写真 共通 */
ul.voice_photos div.g5,
ul.voice_photos div.g6,
ul.voice_photos div.g7 {
	margin-bottom: 3vw;
}
ul.voice_photos div.g5 figure,
ul.voice_photos div.g6 figure,
ul.voice_photos div.g7 figure {
	overflow: hidden;
}
ul.voice_photos div.g5 figure img,
ul.voice_photos div.g6 figure img,
ul.voice_photos div.g7 figure img {
	transition: .6s ease;
}
ul.voice_photos div.g5 figure:hover img,
ul.voice_photos div.g6 figure:hover img,
ul.voice_photos div.g7 figure:hover img {
	transform: scale(1.15,1.15);
}
ul.voice_photos div.g6 .flex,
ul.voice_photos div.g7 .flex {
	display: flex;
	flex-wrap: wrap;
}
ul.voice_photos div.g6 .flex figure,
ul.voice_photos div.g7 .flex figure {
	height: 600px;
}
ul.voice_photos div.g6 .flex .left {
	padding-right: 1.5vw;
}
ul.voice_photos div.g6 .flex .right {
	padding-left: 1.5vw;
}
ul.voice_photos div.g6 .flex .left figure a img,
ul.voice_photos div.g6 .flex .right figure a img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
}
ul.voice_photos div.g7 .flex .left {
	padding-right: 2.0vw;
}
ul.voice_photos div.g7 .flex .center {
	padding-left: 1.0vw;
	padding-right: 1.0vw;
}
ul.voice_photos div.g7 .flex .right {
	padding-left: 2.0vw;
}
ul.voice_photos div.g7 .flex .left figure a img,
ul.voice_photos div.g7 .flex .center figure a img,
ul.voice_photos div.g7 .flex .right figure a img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
}
/* 1320 */
@media (max-width: 1320px) {
	ul.voice_photos div.g6 .flex figure,
	ul.voice_photos div.g7 .flex figure {
		height: max(45.4vw, 200px);
	}
}
/* ギャラリー => 写真左右 type1 */
ul.voice_photos div.g6 .flex.type1 .left {
	width: 50%;
}
ul.voice_photos div.g6 .flex.type1 .right {
	width: 50%;
}
/* ギャラリー => 写真左右 type2 */
ul.voice_photos div.g6 .flex.type2 .left {
	width: 60%;
}
ul.voice_photos div.g6 .flex.type2 .right {
	width: 40%;
}
/* ギャラリー => 写真左右 type3 */
ul.voice_photos div.g6 .flex.type3 .left {
	width: 40%;
}
ul.voice_photos div.g6 .flex.type3 .right {
	width: 60%;
}
/* ギャラリー => 写真3列 */
ul.voice_photos div.g7 .flex > div {
	width: calc(100% / 3);
}
/* gaiyou */
#voice_detail .gaiyou {
	display: flex;
	flex-wrap: wrap;
}
#voice_detail .gaiyou.none .left {
	width: 100%;
}
#voice_detail .gaiyou .left {
	width: 61%;
}
#voice_detail .gaiyou h2 {
	margin-bottom: 25px;
	text-align: left;
}
#voice_detail .gaiyou .left a {
	color: rgba(0,72,33,1);
	text-decoration: underline;
	transition: .3s ease;
}
#voice_detail .gaiyou .left a:hover {
	color: orange;
	text-decoration: none;
}
#voice_detail .gaiyou .right {
	width: 39%;
	padding-left: 5vw;
	text-align: center;
}
#voice_detail .gaiyou .right a{display: block;color:rgba(0,72,33,1);}
#voice_detail .gaiyou .right span{display: block;}
#voice_detail .gaiyou .right .thum {
	overflow: hidden;
	transition: 0.5s;
	margin-bottom: 15px;
}
#voice_detail .gaiyou .right a .thum img {
	vertical-align: bottom;
	width: 100%;
}
#voice_detail .gaiyou .right a:hover .thum{border-radius: 50%;}
#voice_detail .gaiyou .right .series {
	font-size: 12px;
	display: inline-block;
	line-height: 100%;
	padding: 3px 10px;
	border: solid 1px rgba(0,72,33,1);
	margin: 0 0 8px 0;
}
/* 768 */
@media (max-width: 768px) {
	#voice_detail .gaiyou .left table th {
		padding: 15px 5px;
		width: 25%;
	}
	#voice_detail .gaiyou .left table td {
		padding: 15px;
	}
}
/* 580 */
@media (max-width: 580px) {
	/* gaiyou */
	#voice_detail .gaiyou {
		display: block;
		flex-wrap: wrap;
	}
	#voice_detail .gaiyou h2 {
		margin-bottom: 15px;
	}
	#voice_detail .gaiyou .left {
		width: 100%;
		margin-bottom: 40px;
	}
	#voice_detail .gaiyou .left table th {
		padding: 15px 5px;
		width: 78px;
	}
	#voice_detail .gaiyou .right {
		width: 100%;
		padding-left: 0;
	}
}

/*--------------------------------------------------------------*/
/* 分譲地＆物件 一覧 PAGE [Real estate] */
/*--------------------------------------------------------------*/
body.realestate .estate_nav {
	display: flex;
	color: #fff;
	background: rgba(0,72,33,1);
	align-items: center;
	width: 48%;
	margin-bottom: 100px;
	padding: 20px 0;
}
body.realestate .estate_nav:last-child{width: 48%}
body.realestate .nav_block{justify-content: space-between;flex-wrap: wrap;}

body.realestate .estate_nav h3{width: 7em;text-align: center;border-right: solid 1px rgb(255,255,255,0.5);margin-right: 30px;}
body.realestate .estate_nav span.txt{
	color: #fff;
	display: block;
	transition: 0.5s;
}
body.realestate .estate_nav span.txt:not(.active)::before {
	content: '\025cb';
	margin-right: 3px;
}
body.realestate .estate_nav span.txt.active::before {
	content: '\025cf';
	margin-right: 3px;
}
body.realestate .estate_nav .wrap {
	display: flex;
	flex: 1;
	padding-right: 4vw;
}
#estate_list .flex {flex-wrap: wrap;}
#estate_list li{width: 30%;margin: 0 5% 5% 0;}
#estate_list li:nth-child(3n){margin-right: 0}
#estate_list li .thum {
	border: solid 1px #ddd;
	display: block;
	position: relative;
}
#estate_list li .thum img.kanbai {
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	object-fit: cover;
	width: 100%;
	height: 100%;
	z-index: 9;
}
#estate_list li .title{color:rgba(0,72,33,1);font-size: 18px;margin: 12px 0;overflow: hidden;height: 3em}
#estate_list li .caption {
	background: rgba(0,72,33,0.1);display: block;padding:8px;font-size: 14px;letter-spacing: 0;color:#000;margin-bottom: 15px;overflow: hidden;height: 4em;
	transition: background .3s ease;
}
#estate_list li table th,
#estate_list li table td{padding:5px 8px;font-size: 14px}
#estate_list li table th{width: 4em;}
#estate_list li.zero {
	padding: 60px;
	border: 1px solid green;
	text-align: center;
	width: 100%;
	margin: 0 0 60px 0;
}
#estate_list li img {
	transition: opacity .3s ease;
}
#estate_list li h3 {
	transition: color .3s ease;
}
#estate_list li table th {
	transition: background .3s ease;
}
#estate_list li a:hover h3 {
	color: orange;
}
#estate_list li a:hover .caption,
#estate_list li a:hover table th {
	background: rgba(195,160,33,0.1);
}
#estate_list li a:hover img {
	opacity: 0.8;
}
	body.realestate .estate_nav .wrap span.active,
	body.realestate .estate_nav .wrap a {
		margin-right: 15px;
		padding: 5px 0;
	}
/* 1100 */
@media (max-width: 1100px) {
	body.realestate .estate_nav {
		width: 100%;
		margin-bottom: 20px;
	}
	body.realestate .estate_nav:last-child {
		width: 100%;
		margin-bottom: max(9vw, 40px);
	}
	body.realestate .estate_nav .wrap {
		justify-content: initial;
		padding-right: 0;
	}
	body.realestate .estate_nav .wrap span.active,
	body.realestate .estate_nav .wrap a {
		margin-right: 2vw;
	}
}
/* 768 */
@media (max-width: 768px) {
	#estate_list li {
		width: calc(95% / 2);
		margin-bottom: 60px;
	}
	#estate_list li:nth-child(3n) {
		margin-right: 5%;
	}
	#estate_list li:nth-child(2n) {
		margin-right: 0;
	}
}
/* 580 */
@media (max-width: 580px) {
	body.realestate .estate_nav {
		padding: 5px 0;
		margin-bottom: 10px;
	}
	body.realestate .estate_nav .wrap {
		flex-wrap: wrap;
	}
	body.realestate .estate_nav h3 {
		width: 50px;
		text-align: center;
		margin-right: 11px;
	}
	#estate_list li {
		width: calc(96% / 2);
		margin-right: 4%;
		margin-bottom: 40px;
	}
	#estate_list li:nth-child(3n) {
		margin-right: 4%;
	}
	#estate_list li table th,
	#estate_list li table td {
		display: block;
		width: 100%;
		text-align: left;
	}
	#estate_list li h3.title {
		font-size: 15px;
	}
}
.subtl2{padding:5px 10px;background: rgba(1,51,22,0.1);border-radius: 5px;margin:20px 0 15px;font-size: 140%;}

/*--------------------------------------------------------------*/
/* 分譲地＆物件 詳細 PAGE [Real estate] */
/*--------------------------------------------------------------*/
body.single-realestate #estate {
	padding-bottom: 0;
}
body.realestate #estate section.wm8 .block {
	max-width: 800px;
}
body.realestate .black {
	color: #000;
}
body.realestate .red {
	color: red;
}
body.realestate ul.hlink {
	display: flex;
	flex-wrap: wrap;
	margin-bottom: 60px;
}
body.realestate ul.hlink li {
	width: calc(100% / 6);
	text-align: center;
}
body.realestate ul.hlink li:not(:last-child) {
	border-right: 1px solid #c7d2cc;
}
body.realestate ul.hlink li a {
	display: block;
	background: #d9e1dc;
	color: #004821;
	width: 100%;
	padding: 18px 0;
	transition: .3s ease;
}
body.realestate ul.hlink li:hover a {
	background: #c7d2cc;
}
body.realestate ul.hlink li:first-child a {
	border-radius: 30px 0 0 30px;
}
body.realestate ul.hlink li:last-child a {
	border-radius:  0 30px 30px 0;
}
/* 580 */
@media (max-width: 580px) {
	body.realestate ul.hlink {
		margin-bottom: 40px;
	}
	body.realestate ul.hlink li {
		width: calc(100% / 3);
	}
	body.realestate ul.hlink li a {
		padding: 15px 0;
	}
	body.realestate ul.hlink li:first-child a {
		border-radius: 15px 0 0 0;
	}
	body.realestate ul.hlink li:nth-child(1) {
		border-bottom: 1px solid #c7d2cc;
	}
	body.realestate ul.hlink li:nth-child(2) {
		border-bottom: 1px solid #c7d2cc;
	}
	body.realestate ul.hlink li:nth-child(3) {
		border-right: none;
		border-bottom: 1px solid #c7d2cc;
	}
	body.realestate ul.hlink li:nth-child(3) a {
		border-radius: 0 15px 0 0;
	}
	body.realestate ul.hlink li:nth-child(4) a {
		border-radius: 0 0 0 15px;
	}
	body.realestate ul.hlink li:last-child a {
		border-radius:  0 0 15px 0;
	}
}
/* section#start */
body.realestate section#start {
	padding-bottom: clamp(40px, 8.5vw, 100px);
}
body.realestate section#start .flex {
	justify-content: space-between;
	align-items: flex-end;
	margin-bottom: 50px;
	flex-wrap: wrap;
}
body.realestate section#start .flex .left {
	flex: 1;
	margin-right: 3vw;
}
body.realestate section#start .flex .left img {
	border: 2px solid #ccc;
	max-width: 800px;
	width: 100%;
}
body.realestate section#start table {
	width: 335px;
}
body.realestate section#start table th,
body.realestate section#start table td {
	padding: 10px;
}
body.realestate section#start .wrap {
	max-width: 800px;
	margin: 0 auto;
}
body.realestate section#start .wrap h2.sub_title {
	font-size: 20px;
	font-weight: bold;
	margin-bottom: 20px;
}
body.realestate section#start .wrap p.catch {
	margin-bottom: 40px;
}
body.realestate section#start .wrap h2.price_title {
	font-size: 20px;
	text-align: center;
	color: #e60012;
	margin-bottom: 10px;
}
body.realestate section#start .wrap p.price {
	text-align: center;
	font-size: 20px;
}
body.realestate section#start .wrap p.price strong {
	font-size: 28px;
	font-weight: bold;
	color: #e60012;
}
/* 768 */
@media (max-width: 768px) {
	body.realestate section#start .flex .left {
		flex: initial;
		width: 100%;
		margin-right: 0;
		margin-bottom: 30px;
	}
	body.realestate section#start .flex .right {
		width: 100%;
	}
	body.realestate section#start .flex .right table {
		width: 100%;
	}
	body.realestate section#start .wrap h2.sub_title,
	body.realestate section#start .wrap h2.price_title,
	body.realestate section#start .wrap p.price {
		font-size: 18px;
	}
}
/* 580 */
@media (max-width: 580px) {
	body.realestate section#start .wrap h2.sub_title,
	body.realestate section#start .wrap h2.price_title {
		font-size: 16px;
	}
	body.realestate section#start .wrap p.price {
		font-size: 14px;
	}
	body.realestate section#start .wrap p.price strong {
		font-size: 24px;
	}
}
/* section#madori */
body.realestate section#madori ul li {
	margin-bottom: 60px;
}
body.realestate section#madori ul li h2 {
	text-align: center;
	font-size: 20px;
	margin-bottom: 20px;
}
body.realestate section#madori ul li img {
	margin-bottom: 30px;
}
body.realestate section#madori ul li p.txt {
	text-align: center;
	font-size: 20px;
	color: #e60012;
}
/* 768 */
@media (max-width: 768px) {
	body.realestate section#madori ul li h2 {
		font-size: 18px;
	}
	body.realestate section#madori ul li img {
		margin-bottom: 20px;
	}
	body.realestate section#madori ul li p.txt {
		font-size: 18px;
	}
}
/* 580 */
@media (max-width: 580px) {
	body.realestate section#madori ul li {
		margin-bottom: 40px;
	}
	body.realestate section#madori ul li h2 {
		font-size: 16px;
	}
	body.realestate section#madori ul li p.txt {
		font-size: 16px;
	}
}
/* section#kukaku */
body.realestate section#kukaku img {
	margin-bottom: 20px;
}
/* section#map */
body.realestate section#map iframe {
	width: 100%;
	height: clamp(300px, 56vw, 500px);
}
/* section#info */
body.realestate section#info table {
	margin-bottom: 30px;
}
body.realestate section#info table th {
	width: 30%;
	text-align: left;
	padding-left: 3vw;
}
/* 580 */
@media (max-width: 580px) {
	body.realestate section#info table th {
		display: block;
		width: 100%;
		padding-top: 6px;
		padding-bottom: 5px;
	}
	body.realestate section#info table td {
		display: block;
		padding-left: 3vw;
	}
}
/* section#shop */
body.realestate section#shop ul.shop_list li:not(:last-child) {
	margin-bottom: 60px;
}
body.realestate section#shop ul.shop_list li h2 {
	font-size: 20px;
	font-weight: bold;
	margin-bottom: 30px;
}
body.realestate section#shop ul.shop_list li .flex {
	margin-bottom: 40px;
	flex-wrap: wrap;
}
body.realestate section#shop ul.shop_list li table {
	flex: 1;
	margin-right: 5vw;
}
body.realestate section#shop ul.shop_list li table th {
	width: 30%;
}
body.realestate section#shop ul.shop_list li p img {
	width: 270px;
}
body.realestate section#shop ul.shop_list li p.txt {
	font-size: 20px;
	font-weight: bold;
	text-align: center;
	margin-bottom: 25px;
}
/* 580 */
@media (max-width: 580px) {
	body.realestate section#shop ul.shop_list h2 {
		font-size: 18px;
		margin-bottom: 20px;
	}
	body.realestate section#shop ul.shop_list li .flex {
		margin-bottom: 30px;
	}
	body.realestate section#shop ul.shop_list li table {
		flex: initial;
		margin-right: 0;
		margin-bottom: 30px;
	}
	body.realestate section#shop ul.shop_list li table th {
		display: block;
		width: 100%;
		text-align: left;
		padding-top: 6px;
		padding-bottom: 5px;
		padding-left: 3vw;
	}
	body.realestate section#shop ul.shop_list li table td {
		display: block;
		padding-left: 3vw;
	}
	body.realestate section#shop ul.shop_list li table + p {
		width: 100%;
	}
	body.realestate section#shop ul.shop_list li p img {
		width: 100%;
	}
	body.realestate section#shop ul.shop_list li p.txt {
		font-size: 16px;
		margin-bottom: 20px;
	}
}
/* section#list */
body.realestate section#list {
	background: #f2f4f3;
}
body.realestate section#list header h1 {
	font-size: 20px;
	color: rgba(0,72,33,1);
	text-align: center;
	margin-bottom: 60px;
}
body.realestate section#list ul#estate_list {
	display: flex;
	flex-wrap: wrap;
	margin-bottom: 30px;
}
body.realestate section#list ul#estate_list li span.thum img {
	width: 100%;
}
/* 768 */
@media (max-width: 768px) {
	body.realestate section#list ul#estate_list li:nth-child(3) {
		display: none;
	}
	body.realestate section#list ul#estate_list li {
		width: calc(95% / 2);
		margin-right: 5%;
	}
	body.realestate section#list ul#estate_list li:nth-child(2) {
		margin-right: 0;
	}
}
/* 580 */
@media (max-width: 580px) {
	body.realestate section#list header h1 {
		margin-bottom: 30px;
	}
	body.realestate section#list ul#estate_list {
		margin-bottom: 0;
	}
	body.realestate section#list ul#estate_list li {
		width: 100%;
		margin-right: 0;
		margin-bottom: 50px;
	}
	body.realestate section#list .block {
		padding-bottom: 30px;
	}
}

.brokered #estate_list.flex{flex-wrap: wrap;}


/*--------------------------------------------------------------*/
/* 会社案内 /company/ PAGE */
/*--------------------------------------------------------------*/
body.company .company_btn {flex-wrap: wrap;}
body.company .company_btn li{width: 30%;margin: 0 5% 4% 0;}
body.company .company_btn li a{display: block;}
body.company .company_btn li:nth-child(3n){margin-right: 0;}
body.company .company_btn li .btn{display:inline-block;max-width:380px;background:rgba(0,72,33,1);color:#fff;padding:15px 0;width:80%;position:relative;cursor:pointer;transition:1s;outline:none;border:solid 1px rgba(0,72,33,1);font-size:14px;letter-spacing: 0;display: flex;margin:0 auto;justify-content: center;margin-top:-30px;}
body.company .company_btn li a:hover .btn{background:#fff;color:rgba(0,72,33,1)}
body.company .company_btn li .btn:after{content: '';width: 16px;height: 4px;border-bottom: solid 1px;border-right: solid 1px;transform: skew(45deg);position: absolute;right: 40px;top:40%;transition:0.5s;}
body.company #sdgs {
	border: solid 5px rgba(0,72,33,1);
	padding: 30px 40px;
	justify-content: space-between;
	align-items: center;
	flex-direction: row-reverse;
	flex-wrap: wrap;
}
body.company #sdgs p.img{width: 38%}
body.company #sdgs div{width: 58%;}
body.company #sdgs div p a{margin:0;padding:20px 0; }
body.company #sdgs div p.copy {
	font-size: clamp(18px, 2.5vw, 22px);
	line-height: 180%;
	letter-spacing: 0;
	padding: 0 0 30px;
}
/* 768 */
@media (max-width: 768px) {
	body.company .company_btn li .btn {
		padding: 8px 0;
		margin-top: -10px;
	}
	body.company .company_btn li .btn::after {
		content: none;
	}
}
/* 580 */
@media (max-width: 580px) {
	body.company .company_btn {
		margin-bottom: 20px;
	}
	body.company .company_btn li {
		width: calc(96% / 2);
		margin-right: 4%;
	}
	body.company .company_btn li:nth-child(3n) {
		margin-right: 4%;
	}
	body.company .company_btn li:nth-child(2n) {
		margin-right: 0;
	}
	body.company .company_btn li .btn {
		padding: 6px 0;
		margin-top: -18px;
	}
	body.company #sdgs {
		padding: 25px;
	}
	body.company #sdgs p.img {
		width: 100%;
		margin-bottom: 15px;
	}
	body.company #sdgs div {
		width: 100%;
	}
}

/*--------------------------------------------------------------*/
/* 会社案内 /company/zeh/ ZEH普及への取り組み PAGE */
/*--------------------------------------------------------------*/
body.company #zeh .img01{
	max-width: 728px;
	width: 100%;
	margin: 0 auto;
}
body.company #zeh .img02 {
	max-width: 508px;
	width: 100%;
	margin: 0 auto;
}
body.company #zeh .copy{line-height: 180%;text-align: center;letter-spacing: 0;}
body.company #zeh .flex {
	margin: 50px 0;
	justify-content: space-between;
	flex-wrap: wrap;
}
body.company #zeh .flex li {
	text-align: center;
	width: calc(96% / 3);
}
body.company #zeh .flex li:last-child{margin-right: 0;}

body.company #zeh .flex li h4 {
	font-size: clamp(16px, 2.5vw, 20px);
	padding: 15px 0;
}
body.company #zeh table {margin-bottom: 30px;}
body.company #zeh table td{text-align: center;}

body.company #zeh table td{text-align: center;}
/* 768 */
@media (max-width: 768px) {
	body.company h2,
	body.company #zeh p.copy,
	body.company p.tl_copy {
		text-align: left;
	}
}
/* 580 */
@media (max-width: 580px) {
	body.company h2,
	body.company #zeh p.copy,
	body.company p.tl_copy {
		margin-bottom: 20px;
	}
	body.company #zeh ul.flex {
		margin-top: 20px;
	}
	body.company #zeh ul.flex li {
		width: 100%;
		margin-bottom: 40px;
	}
	body.company #zeh ul.flex li:last-child {
		margin-bottom: 0;
	}
	body.company #zeh table {
		margin-bottom: 10px;
	}
	body.company #zeh table tr:first-child th:nth-child(n+2) {
		width: initial;
		padding-left: 10px;
		padding-right: 10px;
	}
	body.company #zeh table tr th:nth-child(1) {
		width: 80px;
		padding-left: 10px;
		padding-right: 10px;
	}
}

/*--------------------------------------------------------------*/
/* 会社案内 /company/shoplist/ 店舗一覧 PAGE */
/*--------------------------------------------------------------*/
body.company #shop_list .subtl{margin-bottom: 25px;line-height: 100%;}
body.company #shop_list .subtl span {
	font-size: clamp(24px, 3vw, 30px);
}
body.company #shop_list .subtl {
	font-size: clamp(18px, 2.5vw, 22px);
}
body.company #shop_list .flex {
	justify-content: space-between;
	flex-wrap: wrap;
}
body.company #shop_list .flex table {
	width: 62%;
}
body.company #shop_list .flex table th{width: 25%}
body.company #shop_list .flex p {
	width: 35%;
}
body.company #shop_list .btn {
	margin: 30px auto clamp(60px, 10vw, 90px) auto;
}
body.company #shop_list .btn:last-child {
	margin: 30px auto 20px auto;
}
body.company #shop_list2 {justify-content: space-between;}
body.company #shop_list2 li{width: 48%;}
body.company #shop_list2 li h3{padding: 15px 0;text-align: center;}
body.company #shop_list3 {
	justify-content: space-between;
	flex-wrap: wrap;
}
body.company #shop_list3 li {
	width: calc(95% / 3);
}
body.company #shop_list3 li h3{padding: 15px 0;text-align: center;}
body.company #shop_list2 li .btn,
body.company #shop_list3 li .btn{width: 80%;margin:0 auto;}
body.company .sumail_bnr{margin-bottom: 100px;text-align: center;}
/* 768 */
@media (max-width: 768px) {
	body.company #shop_list #honten.mb90 {
		margin-bottom: clamp(60px, 10vw, 90px)!important;
	}
	/* #shop_list3 */
	body.company #shop_list3 li p.btn a {
		padding: 8px 0;
	}
	body.company #shop_list3 li p.btn a::after {
		content: none;
	}
}
/* 580 */
@media (max-width: 580px) {
	body.company #shop_list .flex table {
		width: 100%;
		margin-bottom: 20px;
	}
	body.company #shop_list .flex table th {
		width: 80px;
		padding-left: 10px;
		padding-right: 10px;
	}
	body.company #shop_list .flex p,
	body.company #shop_list .flex p img {
		width: 100%;
	}
	/* #shop_list2 */
	body.company #shop_list2 li p.btn a {
		padding: 8px 0;
	}
	body.company #shop_list2 li p.btn a::after {
		content: none;
	}
	/* #shop_list3 */
	body.company #shop_list3 li {
		width: 100%;
		margin-bottom: 40px;
	}
	body.company #shop_list3 li p.btn a::after {
		content: '';
	}
}

/*--------------------------------------------------------------*/
/* 会社案内 /company/shoplist/---/ 店舗詳細 PAGE */
/*--------------------------------------------------------------*/
body.company .shop_detail ul.nav {
	justify-content: space-between;
	flex-wrap: wrap;
	background: rgba(0,72,33,1);
	padding: 20px 30px;
	margin-bottom: 50px;
}
body.company .shop_detail ul.nav li.btn{background: #fff;}
body.company .shop_detail ul.nav li.btn{text-align:center;width: 48%}
body.company .shop_detail ul.nav li.btn a {
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	background: #fff;
	color: rgba(0,72,33,1);
	font-size: clamp(16px, 2.4vw, 22px);
	letter-spacing: 0;
	padding: 15px 0;
	margin: 0 auto;
	max-width: 100%;
	width: 100%;
	position: relative;
	outline: none;
	border: solid 1px rgba(0,72,33,1);
	cursor: pointer;
	transition: 1s;
}
body.company .shop_detail ul.nav li.btn a:hover{background:#fff;color:rgba(0,72,33,1)}
body.company .shop_detail ul.nav li.btn a:after{content: '';width: 16px;height: 4px;border-bottom: solid 1px;border-right: solid 1px;transform: skew(45deg);position: absolute;right: 40px;top:42%;transition:0.5s;}
body.company .shop_detail ul.nav li.btn a:hover:after{right: 20px;}
body.company .shop_detail .copy{margin-bottom: 50px;text-align: center;line-height: 180%}
body.company .shop_detail .img img{width: 100%}

body.company .shop_detail table{margin:50px auto;}
body.company .shop_detail table th{width: 30%;}
body.company .shop_detail .back{
	padding-top: clamp(40px, 8.5vw, 100px);
}
/* 768 */
@media (max-width: 768px) {
	body.company .shop_detail ul.nav li.btn {
		width: 100%;
	}
	body.company .shop_detail ul.nav li.btn:first-child {
		margin-bottom: 1px;
	}
}
/* 580 */
@media (max-width: 580px) {
	body.company .shop_detail ul.nav {
		margin-bottom: 30px;
	}
	body.company .shop_detail ul.nav li.btn a::after {
		content: none;
	}
	body.company .shop_detail .copy {
		margin-bottom: 10px;
		text-align: left;
	}
	body.company .shop_detail table {
		margin: 40px auto;
	}
	body.company .shop_detail table tr th,
	body.company .shop_detail table tr td {
		display: block;
		width: 100%;
	}
	body.company .shop_detail table tr th {
		padding: 10px;
	}
	body.company .shop_detail table tr td {
		padding: 15px;
	}
	body.company .shop_detail iframe {
		height: 300px;
	}
}

/*--------------------------------------------------------------*/
/* 会社案内 /company/about/ 会社情報 PAGE */
/*--------------------------------------------------------------*/
body.company #company_concept {background:url(./img/com_concept_bk.jpg) center center no-repeat;background-size:cover;height: 640px;display: flex;align-items: center;justify-content: flex-end;}
body.company #company_concept .concept_box {
	padding: clamp(20px, 3.5vw, 50px);
	background: #fff;
	box-shadow: 0 0 8px rgb(0 0 0 / 20%);
}
body.company #company_concept .concept_box h3{font-size: 22px;line-height: 180%;letter-spacing: 0.2em;padding-bottom: 20px;color:rgba(0,72,33,1);}
body.company #company_concept .concept_box p{line-height: 200%;letter-spacing: 0}

body.company .mini .block{max-width:800px; }
body.company .message .message_box {
	display: flex;
	flex-direction: row-reverse;
	flex-wrap: wrap;
	width: 100%;
	justify-content: center;
}
body.company .message .message_box p.copy {
	line-height: 280%;
	margin-right: 1.1em;
}
body.company .message .message_box .ph {
	/*width: 35%;*/
	position: relative;
	text-align: left;
}
body.company .message .message_box .ph img {
	width: 80%;
}
body.company .message .message_box .ph h4 {
	writing-mode: vertical-rl;
	right: 0;
	font-size: 30px;
	top: 20px;
}
body.company .message .message_box div.copy_block {
	writing-mode: vertical-rl;
	width: 65%;
	padding-right: 5%;
}
body.company .message .message_box .ph h4 span{font-size: 16px;display: block;margin-left: 5px;margin-top: -20px;}
body.company .outline th{text-align: left;width: 25%;vertical-align: top;}
body.company .outline td {line-height: 180%;}
body.company .outline td h4{color:rgba(0,72,33,1);font-weight: bold;}
body.company .outline td p{margin-bottom: 10px;}
body.company .outline td p:last-child{margin-bottom: 0;}

body.company .rinen p{text-align: center;line-height: 200%}
body.company .rinen strong {
	font-family: 'Shippori Mincho', serif;
	display: block;
	text-align: center;
	font-size: clamp(25px, 5vw, 50px);
	line-height: 140%;
	margin-bottom: 30px;
}
/* 800 */
@media (max-width: 800px) {
	body.company .message .message_box p.copy {
		line-height: 5.4vw;
		margin-right: 1.1em;
	}
}
/* 580 */
@media (max-width: 580px) {
	body.company #company_concept {
		height: 400px;
	}
	body.company .block.s01 {
		padding: 0;
	}
	body.company .block.s01 h2 {
		padding-left: 12px;
	}
	body.company #company_concept .concept_box {
		background: rgba(255,255,255,0.8);
		margin-right: 12px;
	}
	body.company #company_concept .concept_box h3 {
		font-size: 20px;
		line-height: 150%;
		letter-spacing: 0em;
		padding-bottom: 10px;
	}
	/* message_box */
	body.company .message .message_box .ph {
		width: auto;
		margin-bottom: 25px;
	}
	body.company .message .message_box .ph img {
		width: auto;
	}
	body.company .message .message_box div.copy_block {
		width: 65%;
		padding-right: 0;
	}
	body.company .message .message_box p.copy {
		line-height: calc(100vw * 0.06);
		margin-right: 1.1em;
	}
	/* table */
	body.company .outline table th,
	body.company .outline table td {
		display: block;
		width: 100%;
	}
	body.company .outline table th {
		padding: 8px 20px;
	}
	body.company div.box:last-child {
		padding-bottom: 80px;
	}
}

/*--------------------------------------------------------------*/
/* 会社案内 /company/social_contributions/ 社会貢献活動 PAGE */
/*--------------------------------------------------------------*/
body.company #social ul {
	justify-content: space-between;
	flex-wrap: wrap;
}
body.company #social li{width: 48%;}
body.company #social li h3 {
	padding: 15px 0;
	font-size: 26px;
}
body.company #social li p{letter-spacing: 0;}
body.company #news .news_box{margin-bottom: 0}
/* 768 */
@media (max-width: 768px) {

}
/* 580 */
@media (max-width: 580px) {
	body.company #social li {
		width: 100%;
		margin-bottom: 40px;
	}
	body.company #social li h3 {
		padding: 10px 0;
		font-size: 20px;
	}
}

.sdgs_area {max-width: 750px;margin:0 auto;border-bottom: dotted 1px #ccc;}
.sdgs_area dl{display: flex;justify-content: space-between;align-items: center;padding:2vw 0;border-top: dotted 1px #ccc;}
.sdgs_area dl dt{width:20%;}
.sdgs_area dl dd{width:75%;font-size: 18px;}
.sdgs_area dl dd li{list-style: disc;margin-left: 1.2em;padding:5px 0}

@media (max-width: 810px) {
	.sdgs_area dl{align-items: flex-start;letter-spacing: 0;}
	.sdgs_area dl dt{padding:5px 0}
	.sdgs_area dl dd li{font-size: 14px;padding: 2px 0;line-height: 140%;}
}

/*--------------------------------------------------------------*/
/* スタッフ一覧 [Staff List] */
/*--------------------------------------------------------------*/
body.staff #staff_list ul.flex {flex-wrap: wrap;}
body.staff #staff_list ul.flex li{width: 31%;margin-right: 3.5%;margin-bottom:4.5%;position: relative;}
body.staff #staff_list ul.flex li:nth-child(3n){margin-right: 0}
body.staff #staff_list ul.flex li span.thum {
	display: block;
	position: relative;
}
body.staff #staff_list ul.flex li .name {
	position: absolute;
	left: 8px;
	bottom: 0px;
	background: #fff;
	padding: 10px 10px 3px 10px;
	font-size: 12px;
	letter-spacing: 0;
	color: rgba(0,72,33,1);
	min-width: 115px;
	max-width: 150px;
	width: 15vw;
}
body.staff #staff_list ul.flex li .name strong {
	font-size: clamp(14px, 2.5vw, 20px);
	display: block;
	letter-spacing: 0.1em
}
body.staff #staff_list ul.flex li .tl{font-size: 16px;text-align: center;padding:10px 0 15px;display: block;color:#000;margin:0;}

body.staff #staff_list ul.flex li .btn{display:inline-block;max-width:380px;background:rgba(0,72,33,1);color:#fff;padding:15px 0;width:90%;position:relative;cursor:pointer;transition:1s;outline:none;border:solid 1px rgba(0,72,33,1);font-size:14px;letter-spacing: 0;display: flex;margin:0 auto;justify-content: center;}
body.staff #staff_list ul.flex li a:hover .btn{background:#fff;color:rgba(0,72,33,1)}
body.staff #staff_list ul.flex li .btn:after{content: '';width: 16px;height: 4px;border-bottom: solid 1px;border-right: solid 1px;transform: skew(45deg);position: absolute;right: 40px;top:40%;transition:0.5s;}
body.staff #staff_list ul.flex li a:hover .btn:after{right: 20px;}
/* 768 */
@media (max-width: 768px) {
	body.staff #staff_list ul.flex li {
		width: calc(96% / 2);
		margin-right: 4%;
	}
	body.staff #staff_list ul.flex li:nth-child(2n) {
		margin-right: 0;
	}
	body.staff #staff_list ul.flex li .tl {
		font-size: 14px;
	}
	body.staff #staff_list ul.flex li .name {
		padding: 6px 6px 2px 10px;
		line-height: 1.4;
	}
	body.staff #staff_list ul.flex li .name strong {
		margin-bottom: 3px;
	}
}
/* 580 */
@media (max-width: 580px) {
	body.staff #staff_list ul.flex li .tl {
		line-height: 1.4;
		padding: 10px 0 6px 0;
	}
	body.staff #staff_list ul.flex li .name {
		left: 4px;
		padding: 6px 10px 3px 6px;
		min-width: initial;
		max-width: 150px;
		width: initial;
		line-height: 1.2;
	}
	body.staff #staff_list ul.flex li .name strong {
		margin-bottom: 3px;
	}
	body.staff #staff_list ul.flex li .btn {
		padding: 8px 0;
		width: 90%;
	}
	body.staff #staff_list ul.flex li .btn:after {
		content: none;
	}
	#staff_list.sp_three_none ul li:nth-chlid(3) {
		display: none;
	}
}

/*--------------------------------------------------------------*/
/* スタッフ詳細 [Staff Introduction] */
/*--------------------------------------------------------------*/
body.staff #staff_detail .tl span{display: block;font-size: 16px;}
body.staff #staff_detail .main {
	background: rgba(0,72,33,1);
	justify-content: space-between;
	align-items: stretch;
	flex-direction: row-reverse;
	flex-wrap: wrap;
}
body.staff #staff_detail .main .copy{
	width: 40%;
	padding: 25px;
	text-align: center;
	color: #fff;
}
body.staff #staff_detail .main .copy h3{
	font-size: clamp(15px, 2.5vw, 18px);
	margin-bottom: 30px;
}
body.staff #staff_detail .main .copy h3 strong {
	font-size: clamp(20px, 4vw, 30px);
	display: block;
}
body.staff #staff_detail .main .copy h4 {
	font-size: clamp(16px, 3vw, 24px);
	margin-bottom: 30px;
	line-height: 180%;
	letter-spacing: 0;
}
body.staff #staff_detail .main .copy p{line-height: 180%;text-align: left;letter-spacing: 0}
body.staff #staff_detail .main p.img {
	width: 60%;
}
body.staff #staff_detail .main p.img img {
	object-fit: cover;
	height: 100%;
}
body.staff #staff_detail .message {
	justify-content: space-between;
	padding: clamp(40px, 8.5vw, 100px) 0;
	flex-wrap: wrap;
}
body.staff #staff_detail .message.reverce {
	flex-direction: row-reverse;
}
body.staff #staff_detail .message:nth-child(2n){flex-direction: row-reverse;}
body.staff #staff_detail .message .img {
	width: 55%;
}
body.staff #staff_detail .message .copy {
	width: 42%;
}
body.staff #staff_detail .message .copy h4 {
	line-height: 180%;
	padding-bottom: 30px;
	font-size: clamp(16px, 2.7vw, 24px);
	color: rgba(0,72,33,1);
}
body.staff #staff_detail .message .copy p{line-height: 180%;letter-spacing: 0;margin-bottom: 1em;letter-spacing: 0}
body.staff #staff_detail .message .copy p:last-child{margin-bottom: 0;}
/* 768 */
@media (max-width: 768px) {

}
/* 580 */
@media (max-width: 580px) {
	body.staff #staff_detail .main .copy {
		width: 100%;
		padding: 25px 20px;
	}
	body.staff #staff_detail .main p.img {
		width: 100%;
	}
	body.staff #staff_detail .message .img {
		width: 100%;
	}
	body.staff #staff_detail .message .copy {
		width: 100%;
		margin-bottom: 20px;
	}
	body.staff #staff_detail .message .copy h4 {
		padding-bottom: 12px;
	}
}

/*--------------------------------------------------------------*/
/* ページナビ */
/*--------------------------------------------------------------*/
tablenav:after{content:".";display:block;clear:both;height:0;visibility:hidden}
.tablenav{min-height:1px}
* html .tablenav{height:1px}
.tablenav{display:table;color:#004821;margin:50px auto ;line-height:2em;text-align:center;border:solid 1px #ddd;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;box-shadow:0 1px 2px rgba(0,0,0,0.047);font-size:12px;background: #fff;}
a.page-numbers,.tablenav .current{display:table-cell;color:#004821;padding:4px 0;text-decoration:none;margin:0;border-right:solid 1px #ddd; width:3em;}
.tablenav .page-numbers{transition:.3s ease;display:table-cell;color:#004821;padding:4px 0;text-decoration:none;margin:0;border-right:solid 1px #ddd;width:3em;}
a.page-numbers:hover{color:white;background:#004821}
.tablenav .current{background:#f5f5f5;color:#999}
.tablenav .next,.tablenav .prev{width:4em;}
.tablenav .dots{display: none;}
.tablenav .next {
	border-right: none;
	border-radius: 0 4px 4px 0;
}
.tablenav .prev {
	border-radius: 4px 0 0 4px;
}
.tablenav span:last-child {border-right: none;}

/*--------------------------------------------------------------*/
/* body.blog お知らせ一覧 */
/*--------------------------------------------------------------*/
.post_col2 {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	flex-wrap: wrap;
	padding-top: 20px;
}
/* main */
.post_col2 div.post_main {
	width: 70%;
}
.post_col2 div.post_main ul.post_list > li {
	background: #fff;
	border-top: 1px solid #ccc;
	padding: 20px 5px;
	display: flex;
	justify-content: space-between;
	align-items: center;
	flex-wrap: wrap;
}
.post_col2 div.post_main ul.post_list > li:last-child {
	border-bottom: 1px solid #ccc;
}
.post_col2 div.post_main ul.post_list > li figure {
	width: 35%;
	margin: 0 30px 0 0;
	padding: 0;
}
div.post_main ul.post_list > li figure a img {
	transition: opacity .3s ease;
}
div.post_main ul.post_list > li figure a:hover img {
	opacity: 0.8;
}
div.post_main ul.post_list > li div.text {
	flex: 1;
}
div.post_main ul.post_list > li div.text time {
	font-size: 14px;
	display: inline-block;
	margin-right: 10px;
}
div.post_main ul.post_list > li div.text ul.tags {
	display: inline-block;
}
div.post_main ul.post_list > li div.text ul.tags li {
	display: inline-block;
	margin: 0 10px 10px 0;
}
div.post_main ul.post_list > li div.text ul.tags li a {
	display: inline-block;
	font-size: 12px;
	background: #013316;
	color: #fff;
	padding: 0 10px;
	transition: .2s;
}
div.post_main ul.post_list > li div.text ul.tags li a:hover {
	opacity: 0.8;
}
div.post_main ul.post_list > li div.text h2 {
	font-size: 22px;
	margin-top: 10px;
	margin-bottom: 20px;
	font-weight: bold;
	line-height: 1.4;
}
div.post_main ul.post_list > li div.text h2 a {
	color: #013316;
	transition: opacity .3s ease;
}
div.post_main ul.post_list > li div.text h2 a:hover {
	opacity: 0.8;
}
div.post_main ul.post_list > li div.text h2 + p.txt {
	margin-bottom: 20px;
}
/* sidebar */
.post_col2 div.sidebar {
	width: 25%;
}
/* .newlist */
dl.newlist {
	margin-bottom: 60px;
}
dl.newlist dt {
	position: relative;
	font-size: 18px;
	padding: 8px 8px 8px 15px;
	margin-bottom: 20px;
	background: #013316;
	color: #fff;
}
dl.newlist dd {
	padding: 0;
	margin-bottom: 20px;
}
dl.newlist dd a.flex {
	align-items: center;
}
dl.newlist dd a.flex figure {
	width: 95px;
	margin: 0;
}
dl.newlist dd a.flex div.text {
	flex: 1;
	padding-left: 8px;
}
dl.newlist dd a.flex div.text time {
	font-size: 12px;
	color: #013316;
}
dl.newlist dd a.flex div.text h3 {
	line-height: 1.2;
	color: #013316;
}
dl.newlist dd a.flex * {
	transition: .3s ease;
}
dl.newlist dd a.flex:hover * {
	opacity: 0.8;
}
/* .catlist */
dl.catlist {
	margin-bottom: 60px;
}
dl.catlist dt {
	position: relative;
	font-size: 18px;
	padding: 8px 8px 8px 15px;
	background: #013316;
	color: #fff;
}
dl.catlist dd {
	padding: 12px 15px;
	font-size: 16px;
	border-bottom: 1px solid #ccc;
}
dl.catlist dd a {
	display: block;
	position: relative;
	color: #013316;
}
dl.catlist dd a::after {
	content: '';
	width: 16px;
	height: 4px;
	border-bottom: solid 1px;
	border-right: solid 1px;
	transform: skew(45deg);
	position: absolute;
	right: 15px;
	top: 40%;
	transition: 0.5s;
}
dl.catlist dd a:hover::after {
	right: 5px;
}
/* 768 */
@media (max-width: 768px) {
	/* main */
	.post_col2 div.post_main {
		width: 100%;
		margin-bottom: 60px;
	}
	/* sidebar */
	.post_col2 div.sidebar {
		width: 100%;
	}
}
/* 580 */
@media (max-width: 580px) {
	/* ul.post_list */
	.post_col2 div.post_main ul.post_list > li {
		display: block;
	}
	.post_col2 div.post_main ul.post_list > li figure {
		max-width: 100%;
		width: 100%;
		margin-right: 0;
		margin-bottom: 20px;
	}
	.post_col2 div.post_main ul.post_list > li figure img {
		width: 100%;
	}
	.post_col2 div.post_main ul.post_list > li div.text {
		width: 100%;
	}
	.post_col2 div.post_main ul.post_list > li div.text h2 {
		font-size: 18px;
		margin-bottom: 15px;
	}
	/* col2 */
	.post_col2 div.post_main ul.post_list > li div.text h2 + p.txt {
		font-size: 15px;
	}
	/* .newlist */
	dl.newlist {
		margin-bottom: 40px;
	}
	/* .catlist */
	dl.catlist {
		margin-bottom: 40px;
	}
}
/* single */
body.single section#page_parent article.post-wrap {
	padding: 0;
}
article.post-wrap header {
	margin-bottom: 30px;
}
article.post-wrap header time {
	display: inline-block;
	font-size: 14px;
	font-weight: bold;
	color: #013316;
	margin-right: 4px;
}
article.post-wrap header ul.tags {
	display: inline-block;
}
article.post-wrap header ul.tags li {
	display: inline-block;
	margin: 0 1px 10px 0;
}
article.post-wrap header ul.tags li a {
	display: inline-block;
	font-size: 12px;
	background: #013316;
	color: #fff;
	padding: 0 10px;
	transition: .2s;
}
article.post-wrap header ul.tags li a:hover {
	opacity: 0.8;
}
article.post-wrap header h1 {
	font-size: 20px;
	font-weight: bold;
	color: #013316;
	margin-bottom: 20px;
}
article.post-wrap header figure {
	margin: 0 0 20px 0;
	box-shadow: 1px 1px 5px 2px rgb(0 0 0 / 35%);
}
article.post-wrap header figure img {
	width: 100%;
}
article.post-wrap div.entry {
	border: 1px solid #ccc;
	padding: 30px 30px 20px 30px;
	background: #fff;
}
article.post-wrap div.entry p {
	margin-bottom: 15px;
}
article.post-wrap div.entry figure {
	line-height: 1;
	margin-bottom: 20px;
}
article.post-wrap div.entry figure figcaption {
	padding: 10px 5px 7px 10px;
	margin-top: -3px;
	background: #013316;
	line-height: 1.3;
	font-size: 14px;
	color: #fff;
}
/* h1～h6 */
article.post-wrap div.entry h1 {
	font-size: 18px;
	font-weight: bold;
	background: #f5fff5;
	border-left: 5px solid #013316;
	padding: 5px 5px 5px 10px;
	margin-top: 20px;
	margin-bottom: 10px;
}
article.post-wrap div.entry h2 {
	font-size: 18px;
	background: rgba(1,51,22,0.1);
	border-left: 5px solid #013316;
	padding: 3px 3px 3px 15px;
	margin-top: 20px;
	margin-bottom: 15px;
	font-weight: bold;
}
article.post-wrap div.entry h3 {
	font-size: 16px;
	background: rgba(1,51,22,0.1);
	padding: 5px 5px 5px 10px;
	margin-top: 20px;
	margin-bottom: 10px;
	border-bottom: 2px solid #013316;
	font-weight: bold;
}
article.post-wrap div.entry h4 {
	font-size: 16px;
	margin-top: 20px;
	margin-bottom: 10px;
	padding: 5px;
	border-bottom: 2px solid #013316;
}
article.post-wrap div.entry h5 {
	font-size: 16px;
	margin-top: 20px;
	margin-bottom: 10px;
	padding: 5px;
	border-bottom: 2px solid #666;
}
article.post-wrap div.entry h6 {
	font-size: 16px;
	font-weight: bold;
	margin-top: 20px;
	margin-bottom: 10px;
	padding: 5px;
}
article.post-wrap div.entry ul {
	list-style-type: disc;
	margin-left: 20px;
	margin-top: 20px;
	margin-bottom: 15px;
}
article.post-wrap div.entry ul li {
	font-size: 14px;
}
/* blockquote */
article.post-wrap div.entry blockquote {
	position: relative;
	padding: 35px 15px 10px 15px;
	box-sizing: border-box;
	font-style: italic;
	background: #f5fff5;
	color: #000;
	border-left: 4px solid #013316;
}
article.post-wrap div.entry blockquote::before{
	display: inline-block;
	position: absolute;
	top: 5px;
	left: 3px;
	content: "''";
	font-family: sans-serif;
	color: #013316;
	font-size: 90px;
	line-height: 1;
}
article.post-wrap div.entry blockquote p {
	padding: 0;
	margin: 7px 0;
	line-height: 1.7;
}
article.post-wrap div.entry blockquote cite {
	display: block;
	text-align: right;
	color: #888888;
	font-size: 0.9em;
}
/* hr */
article.post-wrap div.entry hr {
	border-top: none;
	border-bottom: 1px dotted #dcdcdc;
	margin: 30px 0;
}

article.post-wrap div.entry strong{font-weight: bold;}
article.post-wrap div.entry img{margin: 0 0 15px}
article.post-wrap div.entry iframe{width: 100%;height: 500px;}

article.post-wrap div.entry .mejs-mediaelement {
	padding-top: 56.25%;
	width: 100%;
	position: relative;
}
article.post-wrap div.entry video {
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0px;
	left: 0px;
}

/* wp-block-columns */
.wp-block-columns {
	display: flex;
	flex-wrap: wrap;
	margin-bottom: 20px;
}
/* wp-block-button */
.wp-block-button {
	display: inline-block;
	margin: 10px;
}
.wp-block-button .wp-block-button__link {
	display: block;
	position: relative;
	max-width: 200px;
	width: 100%;
	text-align: center;
	margin: 20px;
	padding: 10px;
	color: #fff;
	background: #d3381c;
	border: none;
	font-size: 16px;
	transition: 0.3s all;
}
.wp-block-button .wp-block-button__link::after {
	position: absolute;
	top: 50%;
	right: 15px;
	-webkit-transform: translate(0, -50%);
	transform: translate(0, -50%);
	color: #fff;
	font-family: "Ionicons";
	content: '\f488';
	font-size: 14px;
	transition: 0.3s all;
}
.wp-block-button .wp-block-button__link:hover {
	background: #d3381c;
	color: #fff;
	box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.4);
	opacity: 0.9;
}
.wp-block-button .wp-block-button__link:hover::after {
	right: 10px;
}
/* table */
article.post-wrap div.entry table {
	width: 100%;
	border-left: 1px solid #ccc;
	border-top: 1px solid #ccc;
}
article.post-wrap div.entry table th {
	color: #fff;
	background: #708392;
	text-align: center;
	width: 160px;
	position: relative;
}
article.post-wrap div.entry table th,
article.post-wrap div.entry table td {
	padding: 15px;
	border-right: 1px solid #ccc;
	border-bottom: 1px solid #ccc;
	font-size: 15px;
}
article.post-wrap div.entry table.page_navi {
	margin-top: 30px;
	width: 100%;
	background: #fff;
	border: none;
}
article.post-wrap div.entry table.page_navi th,
article.post-wrap div.entry table.page_navi td {
	border: none;
	width: calc(100%/3);
	text-align: center;
}
article.post-wrap div.entry li#reserve table th {
	width: 240px;
}
article.post-wrap div.entry li#reserve table th span.hissu {
	position: absolute;
	top: 50%;
	right: 10px;
	-webkit-transform: translate(0, -50%);
	transform: translate(0, -50%);
	display: inline-block;
	padding: 5px;
	background: #e71919;
	color: #fff;
	font-size: 12px;
	line-height: 1;
}
/* gallery */
article.post-wrap div.entry ul.blocks-gallery-grid {
	list-style-type: none;
	margin: 0;
	display: flex;
	justify-content: space-between;
}
/* a.btn_link.news_list */
a.btn_link.news_list {
	width: 100%;
	padding: 5px;
	max-width: initial;
}
/* sns */
.sns__container {
	display: flex;
	margin-top: 40px;
}
.sns__container a {
	width: 100%;
	text-align: center;
	color: #fff;
	padding: 5px;
	line-height: 0;
	transition: .3s ease;
}
.sns__container a:hover {
	opacity: 0.6;
}
.sns__container a i {
	font-size: 30px;
}
.sns__twitter {
	background: #55acee;
}
.sns__facebook {
	background: #3b5998;
}
.sns__line {
	background: #1dcd00;
}
article.post-wrap div.btn.back {
	margin-top: 60px;
}
/* 580 */
@media (max-width: 580px) {
	article.post-wrap div.entry {
		padding: 20px 15px;
	}
	article.post-wrap div.btn.back {
		margin-top: 40px;
	}
	/* table */
	article.post-wrap div.entry table {
		border-bottom: none!important;
	}
	article.post-wrap div.entry li#reserve table th {
		width: 100%;
	}
	article.post-wrap div.entry table th {
		padding: 11px 15px!important;
		text-align: left;
	}
	article.post-wrap div.entry table th,
	article.post-wrap div.entry table td {
		padding: 15px 0;
		display: block;
		width: 100%;
		font-size: 14px;
	}
}

/*--------------------------------------------------------------*/
/* single オープンハウス */
/*--------------------------------------------------------------*/
div.entry.openhouse {
	border: none!important;
	padding: 0!important;
}
.openhouse table td a{color:#013316;text-decoration: underline;}
/* op_nav */
div.entry.openhouse ul.op_nav {
	display: flex;
	flex-wrap: wrap;
	list-style: none;
	margin: 45px 0 0 0;
}
div.entry.openhouse ul.op_nav li {
	width: calc(100%/5);
}
div.entry.openhouse ul.op_nav li a {
	display: block;
	padding: 20px 10px;
	font-size: 16px;
	font-weight: bold;
	letter-spacing: -1px;
	color: #013316;
	background: #d9e1dc;
	text-align: center;
	border-right: 1px solid #c4d0c9;
	transition: .3s background ease;
}
div.entry.openhouse ul.op_nav li a:hover {
	background: #ffe8be;
}
div.entry.openhouse ul.op_nav li:nth-child(1) a {
	border-radius: 60px 0 0 60px;
}
div.entry.openhouse ul.op_nav li:nth-child(5) a {
	border-radius: 0 60px 60px 0;
	border-right: none;
}
/* table */
div.entry.openhouse table {
	border-top: 1px solid #ccc;
	border-left: none!important;
	margin-bottom: 50px;
}
div.entry.openhouse table th {
	background: #e6ebe8!important;
	color: #013316!important;
	font-weight: bold;
	border-top: #ccc!important;
	border-left: none!important;
	border-right: none!important;
}
div.entry.openhouse table td {
	border-top: #ccc!important;
	border-left: none!important;
	border-right: none!important;
}
/* btn.orange */
.btn.orange a {
	background: #f39800;
	border: 1px solid #f39800;
}
.btn.orange a:hover {
	background: #013316;
	color: #fff;
	border: 1px solid #013316;
}
div.entry.openhouse div.house_the_content {
	padding: 40px 0 20px 0;
}
div.entry.openhouse ul.detail,
div.entry.openhouse ul.madori {
	list-style: none;
	margin: 0;
}
div.entry.openhouse ul.madori {
	margin-bottom: 40px;
}
div.entry.openhouse ul.detail {
	margin-top: 100px!important;
}
div.entry.openhouse ul.detail > li {
	margin-bottom: 100px!important;
}
div.entry.openhouse ul.detail > li h2 {
	background: #fff;
	border: 1px solid #013316;
	padding: 12px 10px 11px 10px;
	text-align: center;
}
div.entry.openhouse ul.detail > li h3 {
	background: #fff;
	border-bottom: 1px solid #013316;
	padding: 12px 10px 11px 10px;
	margin-bottom: 30px;
	text-align: center;
}
/* li.map */
div.entry.openhouse ul.detail li.map p.txt {
	text-align: center;
	margin: 30px 0 20px 0;
	font-size: 16px;
}
div.entry.openhouse ul.detail li.map iframe {
	width: 100%;
	height: 500px;
}
/* li.about */
div.entry.openhouse ul.detail li.about h2 {
	margin-bottom: 25px;
}
div.entry.openhouse ul.detail li.about p.txt {
	font-size: 16px;
}
div.entry.openhouse ul.detail li.about figure {
	width: 100%;
	margin: 20px 0;
}
div.entry.openhouse ul.detail li.about div.covid {
	border: 1px solid red;
	padding: 0 30px 30px 30px;
}
div.entry.openhouse ul.detail li.about div.covid h3 {
	margin: 15px 0 10px 0;
	border: none;
	color: red;
	font-size: 18px;
}
div.entry.openhouse ul.detail li.about div.covid ul li {
	margin-bottom: 5px;
}
/* li.reserve */
div.entry.openhouse ul.detail li.form h1 {
	background: #fff;
	border: 1px solid #013316;
	padding: 12px 10px 11px 10px;
	text-align: center;
}
/* btn2 */
.flex.btn2 {
	justify-content: center;
	flex-wrap: wrap;
}
.flex.btn2 .btn {
	width: 40%;
}
.flex.btn2 .btn:nth-child(1) {
	margin-right: 5%;
}
div.entry.openhouse p.price {
	text-align: center;
	font-size: 20px;
}
div.entry.openhouse p.price strong {
	font-size: 28px;
	font-weight: bold;
	color: #e60012;
}
div.entry.openhouse figure.main {
	margin: 0;
}

/* 768 */
@media (max-width: 768px) {
	div.entry.openhouse p.price {
		font-size: 18px;
	}
}
/* 580 */
@media (max-width: 580px) {
	div.entry.openhouse div.house_the_content {
		padding: 20px 0 20px 0;
	}
	div.entry.openhouse ul.detail > li h2 {
		font-size: 16px;
		font-weight: bold;
	}
	/* op_nav */
	div.entry.openhouse ul.op_nav {
		justify-content: center;
	}
	div.entry.openhouse ul.op_nav li {
		width: calc(100%/3);
		margin-bottom: 20px;
	}
	div.entry.openhouse ul.op_nav li a {
		display: block;
		padding: 12x 7px;
		font-size: 13px;
	}
	div.entry.openhouse ul.op_nav li a:hover {
		background: #ffe8be;
	}
	div.entry.openhouse ul.op_nav li:nth-child(4) a {
		border-radius: 60px 0 0 60px;
		padding-left: 25px;
	}
	div.entry.openhouse ul.op_nav li:nth-child(3) a {
		border-radius: 0 60px 60px 0;
		border-right: none;
	}
	div.entry.openhouse ul.op_nav li:nth-child(5) a {
		padding-right: 25px;
	}
	div.entry.openhouse ul.op_nav li:nth-child(4),
	div.entry.openhouse ul.op_nav li:nth-child(5) {
		width: calc(70%/2);
	}
	/* p.price */
	div.entry.openhouse p.price {
		font-size: 14px;
	}
	div.entry.openhouse p.price strong {
		font-size: 24px;
	}
	div.entry.openhouse ul.detail {
		margin-top: 60px!important;
	}
	div.entry.openhouse ul.detail > li {
		margin-bottom: 60px!important;
	}
	/* btn2 */
	.flex.btn2 .btn {
		width: 80%;
	}
	.flex.btn2 .btn:nth-child(1) {
		margin-left: auto;
		margin-right: auto;
		margin-bottom: 15px;
	}
	/* li.about */
	div.entry.openhouse ul.detail li.about p.txt {
		font-size: 14px;
	}
	/* covid */
	div.entry.openhouse ul.detail li.about div.covid {
		padding: 0 20px 20px 20px;
	}
}

/*--------------------------------------------------------------*/
/* FORM 共通 */
/*--------------------------------------------------------------*/
input[type=text],
input[type=password],
input[type=email],
input[type=tel],
input[type=checkbox],
input[type=button],
input[type=number],
button,
select,
textarea {
	border-radius: 2px;
	border: 1px solid #ddd;
	margin: 0;
	padding: 5px 8px;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	font-size: initial;
}
input[type=text]:focus,
input[type=password]:focus,
input[type=email]:focus,
input[type=tel]:focus,
select:focus,
textarea:focus {
	outline: none;
	background-color: #FFFFDF;
}
input[type=submit],
input[type=button],
button {
	outline: none;
	cursor: pointer;
}
select {
	background: url(../images/arrow.png) right 50% no-repeat #fff;
	background-size: contain;
	padding-right: 40px;
}
/* checkbox */
input[type=checkbox] {
	display: none;
}
input[type=checkbox] + .mwform-checkbox-field-text {
	position: relative;
	display: inline-flex;
}
input[type=checkbox] + .mwform-checkbox-field-text:before {
	content: "\f372";
	font-family: "Ionicons";
	color: #ccc;
	font-size: 22px;
	margin-right: 4px;
	vertical-align: middle;
}
input[type=checkbox]:checked + .mwform-checkbox-field-text:before {
	content: "\f374";
	color: #004821;
}
/* radio */
input[type=radio] {
	display: none;
}
input[type=radio] + .mwform-radio-field-text {
	display: inline-flex;
}
input[type=radio] + .mwform-radio-field-text:before {
	content: "\f3a6";
	font-family: "Ionicons";
	color: #ccc;
	font-size: 21px;
	margin-right: 3px;
}
input[type=radio]:checked + .mwform-radio-field-text:before {
	content: "\f3a7";
	color: #004821;
}
form label {
	cursor: pointer;
}
form label:hover span {
	opacity: 0.9;
}
/* 580 */
@media (max-width: 580px) {
	input[type=text],
	input[type=password],
	input[type=email],
	input[type=tel],
	input[type=checkbox],
	input[type=button],
	input[type=number],
	button,
	select,
	textarea {
		width: 100%;
	}
}

/*--------------------------------------------------------------*/
/* プライバシー・ポリシー */
/*--------------------------------------------------------------*/
#privacy dl dt {
	font-size: 18px;
	font-weight: bold;
	margin-top: 30px;
	margin-bottom: 10px;
	color: rgba(0,72,33,1);
}
#privacy ul {
	list-style: disc;
	margin-left: 25px;
}
/* 580 */
@media (max-width: 580px) {
	#privacy dl dt {
		font-size: 16px;
	}
}

/*--------------------------------------------------------------*/
/* お問い合わせ */
/*--------------------------------------------------------------*/
/* s01 */
body.contact section.s01 header {
	margin-bottom: 40px;
}
body.contact section.s01 header p.time {
	text-align: center;
	margin-top: -20px;
}
body.contact section.s01 div.shops {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
body.contact section.s01 div.shops table {
	border-left: 1px solid #004821;
}
body.contact section.s01 div.shops table tr th {
	border-right: 1px solid #004821;
	background: #004821;
	color: #fff;
}
body.contact section.s01 div.shops table tr td {
	text-align: center;
	font-size: 14px;
	vertical-align: top;
	border-right: 1px solid #004821;
	padding: 20px;
}
body.contact section.s01 div.shops table tr td a {
	font-size: 20px;
	font-weight: bold;
	color: #004821;
	transition: color .2s ease;
}
body.contact section.s01 div.shops table tr td a:hover {
	color: orange;
}
body.contact section.s01 div.shops table.nara {
	width: 57.9%;
}
body.contact section.s01 div.shops table.nara tr td {
	width: calc(100% / 3);
}
body.contact section.s01 div.shops table.wakayama {
	width: 38.7%;
}
body.contact section.s01 div.shops table.wakayama tr td {
	width: calc(100% / 2);
}
/* 768 */
@media (max-width: 768px) {
	body.contact section.s01 div.shops table.nara {
		width: 100%;
		margin-bottom: 25px;
	}
	body.contact section.s01 div.shops table.wakayama {
		width: 100%;
	}
	body.contact section.s01 div.shops table tr td {
		padding: 15px;
	}
}
/* 580 */
@media (max-width: 580px) {
	body.contact section.s01 div.shops table tr td a {
		font-size: 17px;
	}
	body.contact section.s01 div.shops table tr td {
		padding: 15px 5px;
	}
}
/* s02 */
body.contact section.s02 header {
	margin-bottom: 40px;
}
body.contact section.s02 header p.txt {
	text-align: center;
	margin-top: -20px;
}
/* フォーム */
body.contact form table {
	width: 100%;
}
body.contact form table + div.btn,
body.request form table + div.btn {
	padding: 80px 0 30px 0;
}
body.contact form table tr th,
body.contact form table tr td {
	padding: 30px 20px;
}
body.contact form table th {
	width: 210px;
	white-space: nowrap;
	text-align: left;
	padding: 0 55px 0 10px;
	vertical-align: middle;
	position: relative;
}
body.contact form table tr th span.hissu {
	position: absolute;
	top: 50%;
	right: 10px;
	-webkit-transform: translate(0, -50%);
	transform: translate(0, -50%);
	display: inline-block;
	padding: 5px;
	background: #e71919;
	color: #fff;
	font-size: 12px;
	line-height: 1;
}
body.contact form table tr td textarea {
	width: 100%;
	height: 200px;
}
body.contact form table tr:last-child th {
	vertical-align: top;
	padding-top: 40px;
}
body.contact form table tr:last-child th span.hissu {
	top: 53px;
	right: 10px;
}
body.contact form input[type=text],
body.contact form input[type=email],
body.contact form textarea {
	padding: 10px;
	width: 100%;
}
body.contact form input[type=text],
body.contact form input[type=email] {
	width: 100%;
}
body.contact form input.tel {
	width: 120px;
}
/* 確認画面 */
body.confirm section.s02 {
	border-top: none;
}
body.confirm div.btn {
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
}
body.confirm div.btn input {
	margin: 10px;
}
/* 送信完了 */
.mw_wp_form .error,
body.send p strong {
	color: #e71919!important;
}
.mw_wp_form_send_error {
	color: red;
	padding-top: 30px;
}
body.send p {
	line-height: 2.0;
	margin-bottom: 60px;
}
body.send #content .block {
	max-width: 860px;
}
/* 768 */
@media (max-width: 768px) {
	/* 送信完了 */
	body.send body.contact div.main.send {
		padding: 40px 0 0 0;
	}
}
/* 580 */
@media (max-width: 580px) {
	/* フォーム */
	body.contact form dl.note {
		padding: 20px;
	}
	body.contact form dl.note dt {
		font-size: 1.7rem;
	}
	body.contact form table + div.btn,
	body.request form table + div.btn {
		padding: 50px 0 30px 0;
	}
	/* table */
	body.contact form table tr th,
	body.confirm body.contact form table tr th {
		display: block;
		width: 100%;
		padding: 10px 10px 8px 10px;
		font-weight: bold;
	}
	body.contact form table tr th span.hissu {
		top: 50%;
	}
	/* tr:last-child */
	body.contact form table tr:last-child th {
		vertical-align: top;
		padding: 10px 10px 8px 10px;
	}
	body.contact form table tr:last-child th span.hissu {
		top: 50%;
		right: 10px;
	}
	body.contact form table tr td {
		display: block;
		width: 100%;
		padding: 10px 5px 20px 5px;
	}
	body.contact form table td textarea {
		height: 180px;
	}
	body.contact form input[type=text],
	body.contact form input[type=email],
	body.contact form textarea {
		padding: 10px;
		width: 100%;
	}
	body.contact form input.tel {
		width: 29%;
	}
	body.contact form form {
		margin-bottom: 60px;
	}
	body.contact form .btn_link {
		display: inline-block;
		margin: 40px 10px 0 10px;
	}
	/* 送信完了 */
	body.send p {
		margin-bottom: 30px;
	}
}

/*--------------------------------------------------------------*/
/* 資料請求 */
/*--------------------------------------------------------------*/
body.request section header {
	margin-bottom: 40px;
}
body.request section header p {
	text-align: center;
	margin-top: -20px;
}
/* s00 */
body.contact section.s00 ul.catalog {
	max-width: 600px;
	margin: 0 auto;
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
body.contact section.s00 ul.catalog > li {
	width: 48%;
	text-align: center;
	display: flex;
	flex-direction: column;
	font-size: 13px;
}
body.contact section.s00 ul.catalog > li img {
	margin-bottom: 15px;
}
body.contact section.s00 ul.catalog > li div.btn {
	margin-top: auto;
}
body.contact section.s00 ul.catalog > li div.btn a {
	margin-top: 15px;
	padding: 5px 0;
	max-width: 200px;
}
body.contact section.s00 ul.catalog > li div.btn a:after {
	right: 15px;
}
body.contact section.s00 ul.catalog > li div.btn a:hover:after {
	right: 10px;
}
body.contact section.s00 ul.catalog > li ul.tag {
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	margin-bottom: 15px;
}
body.contact section.s00 ul.catalog > li ul.tag li {
	margin: 1px;
	padding: 0 3px;
	font-size: 12px;
	letter-spacing: -0.5px;
	color: #fff;
}
body.contact section.s00 ul.catalog > li:nth-child(1) ul.tag li {
	background: #009944;
}
body.contact section.s00 ul.catalog > li:nth-child(2) ul.tag li {
	background: #00296b;
}
body.contact section.s00 ul.catalog > li:nth-child(3) ul.tag li {
	background: #0068b7;
}
/* s02 */
body.request section.s02 table tr:nth-child(1) td div.flex {
	display: flex;
	color: #fff;
}
body.request section.s02 table tr:nth-child(1) td div.flex div.select {
	color: initial;
}
body.request section.s02 table tr:nth-child(1) td div.flex span.mwform-checkbox-field {
	width: calc(100% / 3);
	max-width: 260px;
}
body.request section.s02 table tr:nth-child(1) td div.flex span.mwform-checkbox-field label span.mwform-checkbox-field-text {
	display: flex;
	justify-content: space-evenly;
	padding-right: 5%;
}
body.request form table tr td div.flex div.select {
	font-size: 14px;
	text-align: center;
}
body.request form table tr td div.flex div.select img {
	margin-bottom: 5px;
}
/* 580 */
@media (max-width: 580px) {
	body.contact section.s00 ul.catalog > li {
		width: 100%;
		margin-bottom: 40px;
	}
	body.request section.s02 table tr:nth-child(1) td div.flex div.select {
		font-size: 12px;
	}
	body.request section.s02 table tr:nth-child(1) td div.flex span.mwform-checkbox-field label span.mwform-checkbox-field-text {
		padding-right: 0;
	}
}

/*--------------------------------------------------------------*/
/* 404 */
/*--------------------------------------------------------------*/
#fn_body p {
	line-height: 2.4;
}

/*--------------------------------------------------------------*/
/* Footer */
/*--------------------------------------------------------------*/
#foot{background:rgba(0,72,33,1);color:#fff;font-size: 14px;}
#foot .ft_box{width: 20%;margin-bottom: 20px}
#foot .ft_box h3{padding-bottom: 20px;letter-spacing: 0.05em;}
#foot .ft_box ul {padding:0 0 15px;}
#foot .ft_box ul li a{display: block;color:#fff;font-size: 13px;padding:8px 0;letter-spacing: 0;text-indent: -1.5em;margin-left: 1.5em;transition:0.5s;}
#foot .ft_box ul li a:hover{padding-left: 5px;}
#foot .ft_box ul li a:before{content: ">";font-size: 10px;margin-right: 3px}
#foot .ft_box ul li li a{padding:6px 0;}
#foot .ft_box ul li li a:before{content: "-";margin-left: 1em;}
#foot .flex{justify-content: space-between;}
#foot .flex .btn{width: 26%}
#foot .flex .btn a{border:solid 1px #fff;font-size: 16px;letter-spacing: 0;}
#foot .flex .sns{width: 16%;justify-content: center;align-items: center;}
#foot .flex .sns li {margin:0 12px;}
#foot .flex .sns li img{width: 35px;}
#foot .ft_b_btn{border-bottom: solid 1px rgba(255,255,255,0.5);padding-bottom: 100px}
#foot #copyright{text-align: center;color:#fff;font-size: 12px;padding-top:100px;}
#foot div#logo a {
	margin: 0 auto;
}
/* 768 */
@media (max-width: 768px) {
	/* area01 */
	#foot .flex.area01 {
		flex-wrap: wrap;
		justify-content: initial;
	}
	#foot .flex.area01 .ft_box {
		width: calc(100% / 3);
	}
	#foot .flex.area01 .ft_box h3 {
		font-weight: bold;
	}
	/* area02 */
	#foot .flex.area02 {
		display: flex;
		flex-wrap: wrap;
	}
	#foot .flex.area02 p.btn {
		width: calc(96% / 2);
		margin-bottom: 20px;
	}
	#foot .flex .sns{
		width: 33%;
	}
}
/* 580 */
@media (max-width: 580px) {
	#foot div.flex {
		display: none;
	}
	/* area02 */
	#foot .flex.area02 {
		display: none;
	}
	#foot #logo a.flex {
		justify-content: center;
		align-items: center;
		color: #fff;
		padding: 0;
	}
	#foot #copyright {
		padding-top: 30px;
	}
}

/* 武内 */
.gallery-item{
	float: left;
}
.clear{
	clear: both;
}
.social_a {
    justify-content: space-between;
}
.social_a li{
    width: 49%;
}
.social_a li h4{
    font-size: 18px;
}
.social_a li p{
    font-size: 14px;
    text-align: left !important;
    line-height: 160%;
}
.s_btn {
    color: #fff;
    background-color: #004821;
    width: 400px;
    padding: 10px 0;
    margin: 0 auto;
}
.s_btn a {
    color: #fff;
    width: 100%;
    display: block;
}


#kukaku .gallery-columns-3{display: flex;flex-wrap: wrap;}
#kukaku .gallery-columns-3 .gallery-item{width: 32%;margin:2% 0 0;margin-right: 2%;}
#kukaku .gallery-columns-3 .gallery-item:nth-child(3n){margin-right: 0;}
#kukaku .gallery-columns-3 .gallery-item img{width: 100%;margin-bottom: 5px;}

#kukaku .gallery-columns-4{display: flex;flex-wrap: wrap;}
#kukaku .gallery-columns-4 .gallery-item{width: 23.5%;margin:2% 0 0;margin-right: 2%;}
#kukaku .gallery-columns-4 .gallery-item:nth-child(4n){margin-right: 0;}
#kukaku .gallery-columns-4 .gallery-item img{width: 100%;margin-bottom: 5px;}
