@charset "utf-8";
/* CSS Document */

.slick-slide {
	line-height: 1;
}
.fc-pink {
	color: #FD5573;
}
.fc-pink02 {
	color: #FF0066;
}
.fc-orange {
	color: #FF6600;
}
.fc-red {
	color: #F00;
}
.fs-m {
	font-size: 1.11rem;
}
.fs-l {
	font-size: 1.25rem;
}
.fw-m {
	font-weight: 500;
}
.top-tx {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
}
.top-tx .image {
	width: 45%;
}
.top-tx .tx {
	width: 55%;
	text-align: left;
}
ul.c3-p {
	width: 100%;
	margin: -20px 0 0 0;
	padding: 0;
	list-style-type: none;
	display: flex;
	flex-wrap: wrap;
}
ul.c3-p li {
	width: calc(100% / 3);	
}
ul.c3-p li:nth-child(2) {
	position: relative;
	z-index: 3;
	margin-top: 20px;
}
ul.c3-p li:nth-child(1) img {
	height: auto;
	transform: rotate( -8deg );
	margin-left: 10px;
}
ul.c3-p li:nth-child(3) img {
	height: auto;
	transform: rotate( 8deg );
}
ul.c3-p li img {
	border: 3px solid #FFF;
	box-shadow: 0px 0px 5px 0px rgba(0, 0, 0, 0.6);
}
.top-tx .tx h2 {
	color: #003300;
	font-size: 1.1rem;
	box-sizing: border-box;
	padding: 5px 20px;
	background-image: url(../images/top-ikigai-bg.png);
	background-position: left top;
	background-repeat: no-repeat;
	margin-top: -1px;
}
.top-tx .tx p {
	font-size: .9rem;
	padding-top: 5px;
	line-height: 1.375;
}
.top-content {
	display: flex;
	flex-wrap: wrap;
	margin: 25px auto;
	text-align: left;
	align-items: flex-start;
}
.top-content .recruit {
	position: relative;
	width: 32%;
	margin-left: 3%;
}
.top-content .topics {
	position: relative;
	width: 59%;
	margin: 0 3%;
}
.bnr {
	margin-bottom: 5px;
}
dl.top-dl {
	margin: 0 auto 14px auto;
	position: relative;
	background-color: #FFECB3;
	display: flex;
	flex-wrap: wrap;
	justify-content: stretch;
}
dl.top-dl::before {
	position: absolute;
	left: 0;
	bottom: -7px;
	content: '';
	width: 100%;
	height: 1px;
	border-bottom: 1px dotted #999;
}
dl.top-dl dt {
	width: 22%;
	background-color: #FFD860;
	text-align: center;
	font-size: .85rem;
	line-height: 1.1;
	display: inline-flex;
	justify-content: center;
	align-items: center;
	letter-spacing: normal;
	font-weight: 700;
	position: relative;
	padding: 40px 5px 10px 5px;
}
dl.top-dl dt::before {
	content: '';
	position: absolute;
	top: 50%;
	left: 100%;
	margin-top: -8px;
	border: 8px solid transparent;
	border-left: 10px solid #FFD860;
}
dl.top-dl dt::after {
	position: absolute;
	left: 0;
	right: 0;
	top: 10px;
	margin: auto;
	content: '';
	width: 24px;
	height: 24px;
	background-position: center top;
	background-repeat: no-repeat;
	background-size: 100%;
}
dl.top-dl dt.pamhlet::after {
	background-image: url(../images/icon-pamhlet.png);
}
dl.top-dl dt.mousikomi::after {
	background-image: url(../images/icon-mousikomi.png);
}
dl.top-dl dd {
	padding: 10px 10px 10px 20px;
	width: 78%;
}
ul.c2 {
	display: flex;
	flex-wrap: wrap;
	width: 100%;
	list-style-type: none;
}
ul.c2 li {
	width: 48%;
	margin: 0 1%;
}
.blog .h-title {
	background-color: #D5EA8B;
	color: #003300;
	font-weight: 700;
	padding: 5px 10px;
	position: relative;
}
.blog .h-title .fs-s {
	display: inline-block;
	margin-left: 8px;
	font-size: .9rem;
}
.blog .h-title::after {
	position: absolute;
	right: 10px;
	top: 7px;
	content: 'staff blog';
	color: #619F44;
	font-size: .75rem;
	font-weight: 400;
}
.blog ul {
	width: 100%;
	margin: 3px auto 0 auto;
	list-style-type: none;
}
.blog ul li {
	margin: 0;
	border-bottom: 1px dotted #666;
	padding: 5px;
}
.blog ul li a {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	text-decoration: none;
	color: #000;
}
.blog ul li a .image {
	margin: 0 0 3px 0;
	position: relative;
	width: 11%;
}
.blog ul li a .image::before {
	content: '';
	display: block;
	padding-top: 100%;
}
.blog ul li a .image img {
	position: absolute;
	width: 100%;
	height: 100%;
	top: 5px;
	right: 0;
	bottom: 0;
	left: 0;
	margin: auto;
	object-fit: cover;
}
.blog ul li a .tx {
	margin: 4px 0 0 4%;
	text-align: left;
	line-height: 1.375;
	font-size: .95rem;
	letter-spacing: normal;
	width: 85%;
}
.blog ul li a .tx .title {
	color: #036;
}
.blog .more {
	text-align: right;
	margin: 8px 0 0 0;
}
.blog .more a {
	display: inline-block;
	text-decoration: none;
	color: #000;
	background-color: #D6D6D6;
	line-height: 1;
	padding: 6px 15px;
	font-size: .85rem;
}
.recruit-box {
	border: 4px solid #FF6699;
	background-color: #FEEFF0;
}
.entry .title {
	background-color: #F69;
	text-align: center;
	position: relative;
	padding: 20px 0;
}
.entry .title::before {
	content: "";
	position: absolute;
	top: 100%;
	left: 50%;
	margin-left: -7px;
	border: 7px solid transparent;
	border-top: 7px solid #FF6699;
}
.entry .title h3 {
	font-size: 1.375rem;
	color: #FFF;
	letter-spacing: 0.1em;
	padding: 0 50px;
	display: inline-block;
	position: relative;
}
.entry .title h3::before {
	position: absolute;
	left: 0;
	top: 10px;
	content: '';
	width: 36px;
	height: 24px;
	background-image: url(../images/icon-recruit.png);
	background-position: left center;
	background-repeat: no-repeat;
	background-size: 100%;
}
.entry p {
	margin: 20px auto;
	text-align: center;
	line-height: 1.375;
	font-weight: 500;
}
.recruit .entry ul {
	list-style-type: none;
	margin: 0 auto;
	width: 100%;
}
.recruit .entry ul li {
	width: 80%;
	margin: 0 auto 10px auto;
	max-width: 160px;
}
.recruit .voice {
	padding: 30px 0;
	text-align: center;
}
.recruit .voice .fuki-h {
	color: #F76091;
	position: relative;
	padding: 0 35px;
	display: inline-block;
	line-height: 1.25;
}
.recruit .voice .fuki-h::before {
	position: absolute;
	left: 0;
	bottom: 0;
	content: '';
	width: 28px;
	height: 43px;
	background-image: url(../images/fuki-pink-l.png);
	background-position: left bottom;
	background-repeat: no-repeat;
	background-size: 100%;
}
.recruit .voice .fuki-h::after {
	position: absolute;
	right: 0;
	bottom: 0;
	content: '';
	width: 28px;
	height: 43px;
	background-image: url(../images/fuki-pink-r.png);
	background-position: left bottom;
	background-repeat: no-repeat;
	background-size: 100%;
}
.recruit .voice p {
	text-align: left;
	font-weight: 400;
	font-size: .85rem;
	line-height: 1.375;
	width: 92%;
	margin: 0 auto;
	padding: 10px 0;
	letter-spacing: normal;
}
.bnr-house {
	max-width: 380px;
	margin: 0 auto;
	width: 88%;
}
.v-bnr {
	margin: 20px auto 0 auto;
	border: 1px solid #CCC;
	width: 80%;
}
.v-bnr a {
	background-color: #FEF8E7;
	display: flex;
	flex-wrap: wrap;
	text-decoration: none;
	width: 100%;
}
.v-bnr a .tx {
	color: #600;
	font-weight: 700;
	letter-spacing: normal;
	font-size: .9rem;
	position: relative;
	padding: 20px 10px 40px 10px;
	line-height: 1.25;
	width: 62%;
}
.v-bnr a .image {
	width: 38%;
}
.v-bnr a .image img {
	height: 100px;
	object-fit: cover;
}
.v-bnr a .en {
	font-weight: normal;
	font-size: .75rem;
}
.v-bnr a .tx::before {
	position: absolute;
	left: 0;
	right: 0;
	bottom: 12px;
	margin: auto;
	content: '';
	width: 26px;
	height: 26px;
	background-image: url(../images/icon-voice.png);
	background-position: center bottom;
	background-repeat: no-repeat;
	background-size: 100%;	
}
.top-bottom-guide {
	max-width: 960px;
	text-align: left;
	margin: 0 auto;
}
.top-bottom-guide .title {
	background-color: #C8E368;
	color: #003300;
	margin: 0 auto 10px auto;
	padding: 5px 10px;
	font-weight: 700;
	font-size: 1.11rem;
}
.top-bottom-guide ul.guide {
	width: 100%;
	list-style-type: none;
	display: flex;
	flex-wrap: wrap;
	justify-content: stretch;
}
.top-bottom-guide ul.guide li {
	width: 25%;
	margin: 0 auto 10px auto;
	padding: 0 4px;
	display: inline-flex;
	justify-content: center;
	align-items: center;
	min-height: 110px;
}
.top-bottom-guide.sub ul.guide li {
	width: calc(100% / 3);
}
.top-bottom-guide ul.guide li a {
	display: block;
	background-color: #FEF9E6;
	box-sizing: border-box;
	border: 1px solid #CCC;
	text-decoration: none;
	color: #000;
	line-height: 1.25;
	padding: 3px 8px;
	width: 100%;
	height: 100%;
	font-weight: 500;
	position: relative;
}
.top-bottom-guide ul.guide li a::after {
	position: absolute;
	right: 5px;
	bottom: 5px;
	content: '→詳細を見る';
	background-color: #4F5B71;
	color: #FFF;
	line-height: 1;
	font-size: .8rem;
	display: inline-block;
	box-sizing: border-box;
	padding: 5px;
	font-weight: 400;
}
.top-bottom-guide ul.guide li a .fs-s {
	font-size: .75rem;
	font-weight: 400;
	letter-spacing: normal;
}
.top-bottom-guide ul.guide li a strong {
	color: #660000;
	font-size: 1.25rem;
}
.top-bottom-guide ul.guide li.tiiki a,.top-bottom-guide ul.guide li.acc a {
	padding-top: 20px;
}
.top-bottom-guide ul.guide li.acc a {
	position: relative;
}
.top-bottom-guide ul.guide li.acc a strong, .top-bottom-guide ul.guide li.acc span {
	position: relative;
	z-index: 3;
}
.top-bottom-guide ul.guide li.acc a::before {
	position: absolute;
	left:30px;
	top: 20px;
	content: '';
	width: 92px;
	height: 74px;
	background-image: url(../images/acc-map.png);
	background-position: left top;
	background-repeat: no-repeat;
	background-size: 100%;
}
.top-bottom-guide ul.guide li.buena img {
	width: 100%;
	max-width: 175px;
	height: auto;
	margin-top: 5px;
	line-height: 1;
}
.kojya {
	margin: 0 auto 3px auto;
	padding: 0;
	text-align: center;
}
ul.list-pdf {
	list-style-type: none;
	margin: 10px auto;
	width: 100%;
	text-align: left;
}
ul.list-pdf.mb0 {
	margin-bottom: 0;
}
ul.list-pdf li {
	position: relative;
	padding: 3px 3px 3px 35px;
	margin: 0 0 5px 0;
}
ul.list-pdf li:last-child {
	margin: 0;
}
ul.list-pdf li::before {
	position: absolute;
	left: 5px;
	top: 5px;
	content: '';
	background-image: url(../images/icon-pdf.png);
	background-position: left top;
	background-repeat: no-repeat;
	background-size: 100%;
	width: 20px;
	height: 22px;
}
table.t-type01 {
	border: none;
	background-color: #FFF;
	border-collapse: collapse;
	border-spacing: 0;
	border-width: 0;
	text-align:left;
	margin: 0 auto;
	width: 100%;
	max-width: 1000px;
}
table.t-type01 th,table.t-type01 td {
	padding: 0.25rem 0;
	border-width: 0;
	vertical-align: top;
	text-align: left;
}
table.t-type01 th {
	font-weight: 400;
	width: 30%;
}
table.flow {
	max-width: 620px;
	margin: 15px auto 0 auto;
	width: 100%;
	border: 1px solid #666;
	border-collapse: collapse;
	border-spacing: 0;
	background-color: #FEE3C2;
}
table.flow th, table.flow td {
	padding: .25rem .5rem;
	vertical-align: top;
}
table.flow tr {
	border-bottom: 1px solid #666;
}
table.flow th {
	width: 36%;
	letter-spacing: normal;
	background-color: #FFC;
	border-right: 1px dotted #666;
}
table.flow tr.bb-no {
	border-bottom: none;
}
.e-box {
	display: flex;
	flex-wrap: wrap;
}
.e-box .image {
	width: 100%;
	margin: 0 auto 20px auto;
	padding-top: .5rem;
}
.e-box .info {
	width: 100%;
}
ul.col2 {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	list-style-type: none;
	width: 100%;
	margin: 10px auto;
}
ul.col2 li {
	width: 48%;
	margin: 0 1%;
}
ul.col2.eco li {
	border: 1px solid #CCC;
	border-radius: 6px;
	background: #ffffff;
	background: linear-gradient( #ffff9a 0%, #ffffff 50%, #ffffff 100%);
	background-repeat: no-repeat;
	text-align: center;
	color: #300;
}
ul.col2.eco li img {
	padding: 8px;
}
ul.col2.eco li strong {
	display: inline-block;
	position: relative;
	padding-left: 20px;
	font-size: .95rem;
	margin-bottom: 8px;
}
ul.col2.eco li strong::before {
	width: 15px;
	height: 15px;
	position: absolute;
	top: 7px;
	left: 0;
	content: '';
	background-color: #FFA3A3;
	border-radius: 50vh;
}
ul.col2.eco li strong::after {
	content: '';
	width: 3px;
	height: 3px;
	border: 0;
	border-bottom: solid 1px #FFF;
	border-right: solid 1px #FFF;
	position: absolute;
	top: 12px;
	left: 5px;
	transform: rotate(-45deg);
	background-image: none;
}
.map-link {
	display: inline-block;
	text-align: left;
	margin: 10px 0;
}
body.sub .content .map-link a {
	background-color: #0000FF;
	color: #FFF;
	padding: 7px 16px;
	text-decoration: none;
	font-size: .9rem;
	font-weight: 500;
}
dl.circle-pink {
	margin: 10px 0;
	padding: 0;
}
dl.circle-pink dt {
	font-weight: 500;
	color: #300;
	margin: 0;
	position: relative;
	padding: 5px 10px 5px 25px;
	border-bottom: 1px dotted #999;
}
dl.circle-pink dt::before {
	width: 15px;
	height: 15px;
	position: absolute;
	top: 11px;
	left: 0;
	content: '';
	background-color: #FFA3A3;
	border-radius: 50vh;
}
dl.circle-pink dt::after {
	content: '';
	width: 3px;
	height: 3px;
	border: 0;
	border-bottom: solid 1px #FFF;
	border-right: solid 1px #FFF;
	position: absolute;
	top: 17px;
	left: 5px;
	transform: rotate(-45deg);
	background-image: none;
}
dl.circle-pink dd {
	margin: 0;
	padding: 5px 0 15px 0;
}
dl.circle-pink dd:last-child {
	padding-bottom: 0;
}
body.sub h2.subh-type01 {
	background: #7ad2de;
	background: linear-gradient( #49c0d0 0%, #7ad2de 100%);
	color:#FFF;
	border-bottom: none;
	padding: 5px;
}
body.sub h2.subh-type01::before {
	position: absolute;
	left: 0;
	top: 2px;
	width: 100%;
	height: 1px;
	border-radius: 0;
	background-color: #FFF;
}
body.sub h2.subh-type01::after {
	position: absolute;
	left: 0;
	bottom: 2px;
	width: 100%;
	height: 1px;
	border: none;
	background-color: #FFF;
	transform: initial;
	top: initial;
}
.fac-info-box01,.fac-info-box02,.fac-info-box03 {
	display: flex;
	flex-wrap: wrap;
	padding: 10px 0;
}
.fac-info-box01 .info {
	width: 42%;
	margin-right: 3%;
	padding-top: 5px;
}
.fac-info-box01 .image {
	width: 55%;
}
.fac-info-box02 .info {
	width: 55%;
	margin-right: 3%;
}
.fac-info-box02 .image {
	width: 42%;
}
.fac-info-box03 .info {
	width: 52%;
}
.fac-info-box03 .image {
	width: 45%;
	margin: 0 3% 0 0;
}
body.sub .fac-info-box01 h2,body.sub .fac-info-box02 h2 {
	margin-top: 5px;
	font-size: 1.11rem;
}
body.sub .fac-info-box01 h2::before,body.sub .fac-info-box02 h2::before {
	top: 14px;
}
body.sub .fac-info-box01 h2::after,body.sub .fac-info-box02 h2::after {
	top: 18px;
}
ul.col2.eco.fac li {
	margin-bottom: 20px;
}
.fac-info-box03 .info strong,.fac-info-box02 .info strong {
	display: inline-block;
	margin-bottom: 8px;
	line-height: 1.55;
}
.yellowg-box {
	width: 96%;
	border-radius: 6px;
	margin: 10px auto;
	background: #ffffff;
	background: linear-gradient( #ffff9a 0%, #ffffff 10%, #ffffff 100%);
	padding: 0 20px;
	border: 1px solid #999;
}
.service-box {
	display: flex;
	flex-wrap: wrap;
	padding: 15px 0;
	border-bottom: 1px dotted #999;
	width: 100%;
	align-items: center;
}
.service-box .image {
	width: 40%;
	margin: 0 4% 0 0;
}
.service-box .tx {
	width: 56%;
}
.service-box .tx dl.circle-pink {
	margin: 0;
}
.service-box .tx dl.circle-pink dt {
	padding: 0 0 0 25px;
	border-bottom: none;
}
.service-box .tx dl.circle-pink dt::before {
	top: 8px;
}
.service-box .tx dl.circle-pink dt::after {
	top: 13px;
}
.service-box .tx dl.circle-pink dd {
	line-height: 1.5;
}
table.flow.iori {
	max-width: initial;
}
table.flow.iori th {
	width: 30%;
}
table.flow.iori tr td {
	font-size: .95rem;
	/* line-height: 1.25; */
}
ul.col2.eco.fac li.v-image img {
	max-height:300px;
	width: auto;
}
.iori-image {
	padding-top: 20px;	
}
ul.col2.eco li.water {
	width: 34%;
}
ul.col2.eco li.garden {
	width: 62%;
}
ul.col2.eco.iori li img {
	height: 160px;
	object-fit: cover;
}
body.sub h2.aoyagi-catch {
	padding: 10px 0;
	color: #0BC1A6;
	line-height: 1.25;
	font-weight: 900;
	letter-spacing: 0.075em;
}
body.sub h2.aoyagi-catch::before, body.sub h2.aoyagi-catch::after {
	display: none;
}
body.sub .content .btn-blue.btn-blue02 a {
	position: relative;
	line-height: 1.5;
	padding: 10px 20px 10px 36px;
	font-weight: 500;
}
body.sub .content .btn-blue.btn-blue02 a::before {
	position: absolute;
	left: 9px;
	content: '';
	width: 14px;
	height: 55px;
	background-color: #FFF;
	top: 7px;
}
body.sub .content .btn-blue.btn-blue02 a::after {
	position: absolute;
	left: 11px;
	top: 0;
	content: '→';
	color: #00C;
	font-size: 10px;
	font-weight: 700;
	display: inline-flex;
	height: 100%;
	align-items: center;
}
.inner.kyotaku .fac-info-box02 .image p {
	font-weight: 700;
	color: #F8003A;
	font-size: .9rem;
	line-height: 1.75;
	padding: 10px 20px 20px 20px;
}
.inner.kyotaku .fac-info-box02 .image p .txbr {
	display: inline-block;
	width: 100%;
}
.renkei-area {
	margin-top: 80px;
}
body.sub .content .inner.kyotaku {
	padding-top: 100px;
	background-image: url(../images/bg-skyblue03.jpg);
	background-position: center top;
	background-repeat: no-repeat;
}
body.sub h2.renkei-title {
	text-align: left;
	padding: 5px 10px;
	font-size: 1.375rem;
	background-image: url(../images/top-ikigai-bg.png);
	background-position: left top;
	background-repeat: no-repeat;
	margin: 0 auto 10px auto;
	border-bottom: none;
}
body.sub h2.renkei-title::before,body.sub h2.renkei-title::after {
	display: none;
}
body.sub .renkei-area h2:first-of-type,body.sub .renkei-area h2 {
	margin-top: 10px;
}
.kyotaku-image img {
	mask-image: linear-gradient(to bottom, transparent 0%, #000 20%, #000 100%, transparent 100%);
	-webkit-mask-image: linear-gradient(to bottom, transparent 0%, #000 20%, #000 100%, transparent 100%);
}
ul.link {
	padding: 0 10px;
	list-style-type: none;
}
ul.link li {
	margin: 0 0 3px 0;
}
ul.circle-gray li {
	padding-left: 22px;
	position: relative;
}
ul.circle-gray li::before {
	width: 13px;
	height: 13px;
	position: absolute;
	top: 9px;
	left: 0;
	content: '';
	background-color: #999;
	border-radius: 50vh;
}
ul.circle-gray li::after {
	content: '';
	width: 3px;
	height: 3px;
	border: 0;
	border-bottom: solid 1px #FFF;
	border-right: solid 1px #FFF;
	position: absolute;
	top: 13px;
	left: 4px;
	transform: rotate(-45deg);
	background-image: none;
}
/* form */
table.ef {
	border: 1px #666 solid;
	background-color:#FFFFFF;
	border-collapse: collapse;
	border-spacing: 0;
	text-align:left;
	width: 96%;
	margin: 15px auto;
}
table.ef th,table.ef td {
	padding: 10px;
	border:1px solid #666;
	border-width: 0 0 1px 1px;
	text-align:left;
}
table.ef td label {
	display: inline-block;
}
table.ef td.sei label:first-child {
	margin-right: 40px;
}
table.ef td.koumoku label {
	margin-right: 30px;
}
table.ef td p {
	padding-bottom: 8px;
}
table.ef td label,table.ef td input[type='checkbox'] {
	cursor: pointer;
}
table.ef th {
	background-color:#FFC;
	width: 30%;
}
table.ef th .hissu {
	background-color: #E53B2F;
	color: #FFF;
	font-size: 13px;
	display: inline-block;
	line-height: 1;
	padding: 2px 6px;
	margin-left: 10px;
}
table.ef input[type="text"], table.ef textarea {
	width: 98%;
	margin: auto;
	border: 1px solid #999;
}
table.ef input[type="text"], table.ef select {
	padding: 4px 0px;
}
.form-btn {
	text-align: center;
	margin: 0 auto;
	padding-top: 20px;
}
.form-btn input[type="submit"],.form-btn input[type="reset"] ,.form-btn input[type="button"]{
	padding: 8px 20px;
	letter-spacing: 0.06em;
	margin: 0 15px 15px 15px;
}
body.sub .content .inner.inq p {
	width: 96%;
	padding-bottom: 10px;
	margin: 0 auto;
	font-size: .95rem;
	letter-spacing: normal;
}
body.sub .content .inner.inq table.ef td p {
	width: 100%;
}
.house-gal {
	margin: 0 auto;
	padding: 10px 0 50px 0;
	width: 100%;
	display: flex;
	flex-wrap: wrap;
}
.house-gal .large {
	width: 50%;
}
.house-gal .small {
	width: 48%;
	margin: 0 0 0 2%;
}
.house-gal .small ul.col2 {
	padding: 0;
	margin: 0;
}
.house-gal .small ul.col2 li {
	margin: 5px 1%;
}
.house-gal .small ul.col2 li a {
	position: relative;
	display: block;
}
.house-gal .small ul.col2 li a::before {
	position: absolute;
	bottom: 5px;
	right: 5px;
	margin: auto;
	content: '';
	width: 28px;
	height: 28px;
	background-image: url(../images/zoom.png);
	background-position: top left;
	background-repeat: no-repeat;
	background-size: 100%;
	z-index: 2;
	pointer-events: none;
}
.house-gal.pb0 {
	padding-bottom: 0;
}
h3.sq {
	margin: 5px 0;
	text-align: left;
	font-weight: 500;
	font-size: 1rem;
}
ul.col2-list {
	list-style-type: none;
	width: 100%;
	display: flex;
	flex-wrap: wrap;
}
ul.col2-list li {
	width: 48%;
	margin: 0 1% 5px 1%;
	position: relative;
	padding-left: 1.25rem;
}
ul.col2-list li::before {
	position: absolute;
	left: 0;
	top: 0;
	content: '・';
}
ul.col2-list li.wide {
	width: 98%;
}
/* accordion */
dl.accordion {
	margin: 0 auto;
	width: 100%;
	text-align: left;
}
dl.accordion.last {
	margin-bottom: 30px;
}
dl.accordion dt {
	display: block;
	cursor: pointer;
	margin: 5px 0px;
	padding: 3px 3px 3px 35px;
	color: #060;
	text-decoration: underline;
	box-sizing: border-box;
	position: relative;
}
dl.accordion dt::before {
	position: absolute;
	left: 5px;
	top: 5px;
	content: '';
	background-image: url(../images/icon-pdf.png);
	background-position: left top;
	background-repeat: no-repeat;
	background-size: 100%;
	width: 20px;
	height: 22px;
}
dl.accordion dt.open {
}
dl.accordion dd {
	display: none;
	text-align: left;
	margin: 0;
	height :auto;
	box-sizing: border-box;
	padding-left: 32px;
}
dl.accordion dd ul.arrow {
	margin: 0;
	padding: 0;
	list-style-type: none;
	width: 100%;
}
dl.accordion dd ul.arrow li {
	box-sizing: border-box;
	position: relative;
	padding-left: 20px;
	margin: 0 0 6px 0;
}
dl.accordion dd ul.arrow li:last-child {
	margin-bottom: 8px;
}
dl.accordion dd ul.arrow li::before {
	position: absolute;
	content: '';
	width: 5px;
	height: 5px;
	border-top: solid 2px #900;
	border-right: solid 2px #900;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	top: 10px;
	left: 4px;
}
/* schedule */
#tabs {
    font-size: .9rem;
    margin: 15px auto auto;
	width: 100%;
    max-width: 670px;
}
#tabs ul {
	background: none repeat scroll 0 0 #FFFFFF;
	display: flex;
	margin: auto;
	padding-top: 4px;
	flex-wrap: wrap;
	justify-content: center;
}
#tabs li {
    line-height: 1;
    list-style: none outside none;
    margin: 0;
	padding:0 10px;
	width: calc(100% / 3);
}
* html #tabs li {
    display: inline;
}
#tabs li a {
    line-height: 32px;
    text-align: center;
	display: block;
}
#tabs li a {
    background-color: #C8E368;
    color: #006600;
}
#tabs li a:hover {
    background-color: #61BC34;
}
#tabs ul li.active {
}
#tabs ul li.active a {
}
#tabs div {
    max-width: 670px;
}
#tabs ul li a {
    color: #000000;
    font-weight: bold;
    text-decoration: none;
}
.thumbs {
    border: 1px solid #000000;
    float: left;
    margin-bottom: 20px;
    margin-right: 20px;
}
.ft10 {
    font-size: 10px;
}
body.sub .content p.lb {
	border-bottom: 1px solid #999;
	padding-bottom: 5px;
	margin-bottom: 9px;
}
.scrollable-table iframe {
	width: 670px;
	height: 630px;
}
@media screen and (min-width:769px){
	.top-content .recruit {
		order: 2;
		margin-left: 0;
		margin-right: 3%;
	}
	.top-content .topics {
		order: 1;
	}
}
@media screen and (min-width:1025px){
	.top-tx .tx p .txbr {
		display: inline-block;
		width: 100%;
	}
	ul.c3-p li {
		position: relative;
	}
	ul.c3-p li img {
		position: absolute;
		left: 0;
		right: 0;
		margin: auto;
		width: 140px;
		z-index: 2;
		max-width: initial;
	}
	.top-tx .tx h2, .top-tx .tx p {
		padding-left: 65px;
		letter-spacing: normal;
	}
	.top-content .recruit {
		order: 2;
		width: 230px;
		margin-left: 20px;
		margin-right: 0;
	}
	.top-content .topics {
		order: 1;
		width: 470px;
		margin: 0;
	}
	.e-box .image {
		width: 35%;
		margin: 0 0 0 2%;
		order: 2;
	}
	.e-box .info {
		width: 63%;
		order: 1;
	}
}
@media screen and (max-width:1024px){
	.top-tx .tx p {
		padding: 20px;
	}
	.top-bottom-guide {
		padding: 10px;
	}
	.top-bottom-guide ul.guide li {
		width: 50%;
	}
	.e-box .image {
		max-width: 560px;
	}
	table.t-type01 {
		width: 90%;
	}
	body.sub h1,body.sub h2.renkei-title {
		padding: 25px 10px;
	}
}
@media screen and (max-width:768px){
	.top-content {
		margin: 0 auto;
	}
	.top-content .recruit {
		width: 100%;
		margin: 0 auto;
		padding: 15px;
		background-color: #FFF7F8;
	}
	.top-content .topics {
		width: 100%;
		margin: 0 auto;
		padding: 20px 25px;
	}
	.recruit .entry ul {
		max-width: 400px;
		display: flex;
		flex-wrap: wrap;
	}
	.recruit .entry ul li {
		width: 46%;
		margin: 0 2%;
		max-width: initial;
	}
	.v-bnr {
		max-width: 320px;
		margin-top: 10px;
	}
	.v-bnr a {
		align-items: center;
	}
	.v-bnr a .image img {
		height: 130px;
	}
	.v-bnr a .tx {
		font-size: 1.125rem;
		padding-bottom: 50px;
	}
	.entry p {
		font-size: 1.25rem;
	}
	.recruit .voice .fuki-h {
		font-weight: 500;
		font-size: 1.125rem;
	}
	.recruit .voice .fuki-h br {
		display: none;
	}
	.recruit .voice .fuki-h .txbr {
		display: inline-block;
		width: 100%;
	}
	.entry {
		margin-bottom: 20px;
	}
	.entry .title h3 {
		font-size: 1.6rem;
	}
	dl.top-dl {
		margin: 20px auto;
	}
	dl.top-dl::before {
		display: none;
	}
	dl.top-dl dt {
		width: 100%;
		font-size: 1.11rem;
		padding: 15px 10px;
	}
	dl.top-dl dt br {
		display: none;
	}
	dl.top-dl dt::after {
		display: none;
	}
	dl.top-dl dt::before {
		top: 100%;
		left: 50%;
		margin-top: initial;
		margin-left: -8px;
		border-left: 8px solid transparent;
		border-top: 10px solid #FFD869;
	}
	dl.top-dl dd {
		width: 100%;
		padding: 30px 20px 20px 20px;
	}
	dl.top-dl dt .icon{
		position: relative;
		display: inline-block;
		width: 24px;
		height: 24px;
		margin-right: 10px;
	}
	dl.top-dl dt .icon::after {
		position: absolute;
		left: 0;
		top: 2px;
		margin: auto;
		content: '';
		width: 24px;
		height: 24px;
		background-position: center top;
		background-repeat: no-repeat;
		background-size: 100%;
	}
	dl.top-dl dt.pamhlet .icon::after {
		background-image: url(../images/icon-pamhlet.png);
	}
	dl.top-dl dt.mousikomi .icon::after {
		background-image: url(../images/icon-mousikomi.png);
	}
	dl.top-dl dd ul.c2 {
		max-width: 360px;
		margin: 0 auto;
	}
	dl.top-dl dd ul.c2 li {
		width: 44%;
		margin: 1px 3%;
	}
	.blog {
		margin: 40px auto 60px auto;
	}
	.blog .h-title {
		padding: 10px 15px;
	}
	.blog .h-title::after {
		top: 14px;
	}
	.top-bottom-guide {
		padding: 0 20px;
		position: relative;
		display: flex;
		flex-wrap: wrap;
	}
	.top-bottom-guide .title {
		order: 1;
		width: 100%;
	}
	.top-bottom-guide ul.guide {
		order: 3;
	}
	.top-bottom-guide p {
		order: 2;
		width: 100%;
		padding: 0 0 12px 0;
		line-height: 1.375;
	}
	.top-bottom-guide.sub {
		padding: 10px 0 0 0;
	}
	.top-bottom-guide.sub ul.guide li {
		width: 50%;
	}
	.fac-info-box03 .info, .fac-info-box03 .image {
		width: 100%;
		margin: 0 auto 10px auto;
	}
	body.sub .content .inner.kyotaku {
		background-position: right top;
	}
	.recruit .voice {
		margin: 30px auto 0 auto;
		padding-bottom: 10px;
	}
}
@media screen and (max-width:671px){
	.scrollable-table {
		overflow-x: scroll;
		display: block;
		transform: rotateX(180deg);
		margin-top: 15px;
		padding-top: 15px;
	}
	.scrollable-table iframe {
		transform: rotateX(180deg);
	}
	.scrollable-table::-webkit-scrollbar {
		height: 10px;
	}
	.scrollable-table::-webkit-scrollbar-track {
		margin: 0 2px;
		background: #ccc;
		border-radius: 5px;
	}
	.scrollable-table::-webkit-scrollbar-thumb {
		border-radius: 5px;
		background: #666;
	}
}
@media screen and (max-width:640px){
	.top-bottom-guide ul.guide li {
		width: 100%;
		min-height: initial;
	}
	.top-bottom-guide ul.guide li a {
		padding: 12px 15px;
	}
	.top-bottom-guide ul.guide li a::after {
		right: 10px;
		bottom: initial;
		top: 32%;
		font-size: .85rem;
		padding: 10px;
	}
	.top-bottom-guide ul.guide li.acc a::before {
		top: 12px;
		width: 70px;
		height: 56px;
		left: 17px;
	}
	.top-tx {
		position: relative;
	}
	.top-tx .tx {
		order: 1;
		position: relative;
		z-index: 3;
		width: 100%;
		margin-top: -1px;
	}
	.top-tx .tx h2 {
		padding: 15px 30% 15px 20px;
		font-size: 1.25rem;
		line-height: 1.5;
	}
	.top-tx .tx p {
		font-size: 1.05rem;
		line-height: 2;
		padding: 25px 40% 48px 25px;
		letter-spacing: 0.08em;
	}
	.top-tx .image {
		width: 30%;
		position: absolute;
		z-index: 4;
		right: 0;
		top: 30px;
	}
	ul.c3-p {
		width: 90%;
		margin: 0;
	}
	ul.c3-p li {
		width: 100%;
		text-align: right;
	}
	ul.c3-p li:nth-child(2) {
		margin: -35px 0 0 0;
		text-align: left;
	}
	ul.c3-p li img {
		max-width: 120px;
	}
	ul.c3-p li:nth-child(1) img {
		margin-left: 0;
	}
	ul.c3-p li:nth-child(2) img {
		height: 75px;
		width: 100px;
		object-fit: cover;
		object-position: center;
		margin-left: -30px;
	}
	ul.c3-p li:nth-child(3) img {
		margin-top: -30px;
	}
	.top-bottom-guide.sub ul.guide li {
		width: 100%;
	}
	table.t-type01 th, table.t-type01 td {
		width: 100%;
		display: block;
	}
	table.t-type01 td {
		border-bottom: 1px solid #CCC;
		padding: 0 0 .5rem 0;
	}
	.fac-info-box01 .info, .fac-info-box01 .image,.fac-info-box02 .info, .fac-info-box02 .image {
		width: 100%;
		margin: 0 auto 10px auto;
	}
	.service-box .tx {
		width: 100%;
		margin: 5px auto;
	}
	.service-box .image {
		width: 90%;
		text-align: center;
		max-width: 480px;
		margin: 5px auto;
	}
	table.flow {
		background-color: #FFF;
	}
	table.flow th, table.flow td,table.flow.iori th,table.flow.iori td {
		width: 100%;
		display: block;
	}
	table.flow th {
		background-color: #FEE3C2;
		border-right: none;
	}
	table.flow th.empty,table.flow td.empty {
		display: none;
	}
	.inner.sawarabi .fac-info-box01 .image img,.inner.short .fac-info-box02 .image img {
		max-width: 480px;
		margin: auto;
		display: block;
		width: 100%;
		height: auto;
	}
	ul.col2.eco li.water {
		width: 98%;
		margin: 10px auto;
		max-width: 260px;
	}
	ul.col2.eco li.garden {
		width: 98%;
		margin: 10px auto;
	}
	.inner.kyotaku .fac-info-box02 .image p {
		font-size: 1rem;
		padding: 0 10px 20px 10px;
	}
	.inner.kyotaku .fac-info-box02 .image p .txbr {
		display: initial;
	}
	table.ef th,table.ef td {
		width: 100%;
		display: block;
		border-width: 0 0 1px 0;
	}
	table.ef td.koumoku label {
		margin-right: 30px;
		margin-right: 0;
		width: 100%;
	}
	.house-gal .large, .house-gal .small {
		width: 100%;
		margin: 0 auto;
	}
	.house-gal .small {
		padding-top: 10px;
	}
	ul.col2-list li {
		width: 98%;
	}
}
@media screen and (max-width:480px){
	.top-bottom-guide ul.guide li a::after {
		font-size: .75rem;
	}
	.top-tx .image {
		position: static;
		order: 2;
		width: 100%;
	}
	.top-tx .tx h2 {
		padding: 15px;
	}
	.top-tx .tx p {
		padding: 15px;
		line-height: 1.5;
		font-size: 1rem;
	}
	ul.c3-p {
		width: 100%;
	}
	ul.c3-p li {
		width: calc(100% / 3);
		text-align: center;
	}
	ul.c3-p li:nth-child(2) {
		margin-top: 20px;
	}
	ul.c3-p li img {
		max-width: initial;
		width: 100%;
		height: auto;
	}
	ul.c3-p li:nth-child(1) img {
		margin-left: 25px;
	}
	ul.c3-p li:nth-child(2) img {
		margin-left: 0;
		width: 100%;
		height: auto;
		object-fit: initial;
	}
	ul.c3-p li:nth-child(3) img {
		margin-top: 0;
		margin-left: -45px;
	}
	.recruit .voice .fuki-h .txbr,.recruit .voice .fuki-h br {
		display: initial;
	}
	.recruit .entry ul {
		padding: 0 15px;
	}
	.blog ul li a .image {
		width: 15%;
	}
	.blog ul li a .tx {
		width: 81%;
	}
	ul.col2.eco li {
		width: 94%;
		margin: 10px auto;
	}
}
@media screen and (max-width:380px){
	.top-bottom-guide ul.guide li a {
		padding-bottom: 35px;
	}
	.top-bottom-guide ul.guide li a::after {
		font-size: .75rem;
		top: initial;
		bottom: 5px;
		right: 5px;
		padding: 6px 5px;
	}
	.entry p {
		font-size: 1rem;
		margin: 15px auto;
	}
	.entry .title h3 {
		font-size: 1.375rem;
	}
	.recruit .voice {
		padding-top: 15px;
	}
	.recruit .voice .fuki-h {
		font-size: 1rem;
	}
	.v-bnr a .tx {
		font-size: 1rem;
	}
	body.sub .content .btn-blue.btn-blue02 a::before {
		display: none;
	}
	body.sub .content .btn-blue.btn-blue02 a::after {
		color: #FFF;
	}
	.form-btn input[type="submit"], .form-btn input[type="reset"], .form-btn input[type="button"] {
		padding: 8px 10px;
		margin: 0 5px 15px 5px;
	}
}
@media screen and (max-width:320px){
	dl.top-dl dt {
		font-size: .9rem;
	}
	.blog .h-title::after {
		display: none;
	}
}