body {
	font-family: 'Noto Sans JP', sans-serif;
	overflow-x: hidden;
}
body a {
	color: #000;
}
.hidden {
	display: none;
}
img {
	display: block;
	max-width: 100%;
}

.fadeup {
	transform: translate(0, 3vw);
	opacity: 0;
	transition: all 1s .2s ease-out;
}
.fadeup1 {
	transform: translate(0, 3vw);
	opacity: 0;
	transition: all 1s .6s ease-out;
}
.fadeup2 {
	transform: translate(0, 3vw);
	opacity: 0;
	transition: all 1s 1.0s ease-out;
}
.fadeleft {
	transform: translate(-3vw, 0);
	opacity: 0;
	transition: all 1s .2s ease-out;
}
.faderight {
	transform: translate(3vw, 0);
	opacity: 0;
	transition: all 1s .2s ease-out;
}
.fadeup.effect, .fadeup2.effect, .fadeup.effect, .fadeup1.effect, .fadeleft.effect, .faderight.effect {
	transform: translate(0, 0);
	opacity: 1;
}

.fade-delay-0 {
    transition: all 1s 0s ease-out !important;
}


/* voiceフィルタリング  */
.page.voicetop [value="All"]:checked ~ .filters [for="All"],
.page.voicetop [value="cat-nb"]:checked ~ .filters [for="cat-nb"],
.page.voicetop [value="cat-rfm"]:checked ~ .filters [for="cat-rfm"],
.page.voicetop [value="cat-c"]:checked ~ .filters [for="cat-c"],
.page.voicetop [value="cat-d"]:checked ~ .filters [for="cat-d"],
.page.voicetop [value="cat-e"]:checked ~ .filters [for="cat-e"],
.page.voicetop [value="cat-f"]:checked ~ .filters [for="cat-f"] {
  background: #DCD3C7;
  color: #000;
}
.page.voicetop [value="All"]:checked ~ .targets [data-category] {
  display: block;
}
.page.voicetop [value="cat-nb"]:checked ~ .targets .target:not([data-category~="cat-nb"]),
.page.voicetop [value="cat-rfm"]:checked ~ .targets .target:not([data-category~="cat-rfm"]),
.page.voicetop [value="cat-c"]:checked ~ .targets .target:not([data-category~="cat-c"]),
.page.voicetop [value="cat-d"]:checked ~ .targets .target:not([data-category~="cat-d"]),
.page.voicetop [value="cat-e"]:checked ~ .targets .target:not([data-category~="cat-e"]),
.page.voicetop [value="cat-f"]:checked ~ .targets .target:not([data-category~="cat-f"]) {
  display: none;
}
/* フィルタリングアニメーション  */
.page.voicetop [value="cat-nb"]:checked ~ .targets .target,
.page.voicetop [value="cat-rfm"]:checked ~ .targets .target,
.page.voicetop [value="cat-c"]:checked ~ .targets .target,
.page.voicetop [value="cat-d"]:checked ~ .targets .target,
.page.voicetop [value="cat-e"]:checked ~ .targets .target,
.page.voicetop [value="cat-f"]:checked ~ .targets .target {
  animation: checked_animation 0.4s ease-in-out both;
}
/*
.page.voicetop [value="All"]:checked ~ .targets [data-category] {
  animation: checked_animation 0.4s ease-in-out both;
}
*/
/*.page.voicetop .target {
  animation: checked_animation 0.4s ease-in-out both;
}*/
@keyframes checked_animation {
  0% {
  transform: translate(0, 300px);
  opacity: 0;
  }
  100% {
  transform: translate(0, 0);
  opacity: 1;
  }
}

/*===============================================
●style.css 画面の横幅が641px以上
===============================================*/
@media all and (min-width: 768px) {

.sp {
	display: none;
}

body {
font-size: 14px;
line-height: 1.5em;
}

body a {
	transition: all 0.5s;
}
body a:hover {
	opacity: 0.7;
}
a[href^="tel:"] {
    pointer-events: none;
}

.drawer--right .drawer-hamburger {
	display: none;
}

#fixhead {
	z-index: 99;
	width: calc(100% - 70px);
	min-width: 1280px;
	background: #FFF;
	height: 100px;
	position: fixed;
	top: 35px;
	left: 35px;
	border-radius: 10px;
	box-shadow: 0vw 0vw 10px rgba(12, 12, 12, 0.1);
}
#fixhead .tagline {
	display: none;
}
.home #fixhead .toplogo, #fixhead .toplogo a {
	width: 307px;
	height: 58px;
	background: url(../img/head-logo.svg) center / contain no-repeat;
	text-indent:100%;
	white-space: nowrap;
	overflow: hidden;
	position: absolute;
	top: 20px;
	left: 20px;
}
#fixhead ul {
	position: absolute;
	right: 20px;
	bottom: 0;
	display: flex;
	width: 820px;
	justify-content: space-between;
}
#fixhead ul li {
	font-size: 16px;
	line-height: 50px;
	position: relative;
}
#fixhead ul li a {
	color: #000;
}
#fixhead ul li a:hover {
	opacity: 0.9;
	background: #FFF;
}
#fixhead ul li a.menu__link {
	padding-right: 1.2em;
	background: url(../img/head-menu-arrow.svg) right 7px / 1em no-repeat;
}
#fixhead ul li .drop-menu {
  position: absolute;
  top: 50px;
  left: 0;
  transition: all .3s;
  display: block;
  width: 230px;
}
#fixhead ul li .drop-menu__link {
  display: none;
  background-color: rgba(230, 230, 230, 0.9);
  transition: all 0.5s;
	padding: 12px 17px;
	line-height: 20px;
}
#fixhead #nav li:hover .drop-menu__link {
  display: block;
}
.active .drop-menu__link {
  display: block;
}
#fixhead ul li .drop-menu__link:hover {
  background-color: #FFF;
}
#fixhead .contact .insta {
	position: absolute;
	top: 10px;
	right: 10px;
	width: 40px;
	height: 40px;
	background: url(../img/sns-insta.png) center / contain no-repeat;
	text-indent:100%;
	white-space: nowrap;
	overflow: hidden;
	position: absolute;
}
#fixhead .contact .line {
	position: absolute;
	top: 10px;
	right: 70px;
	width: 40px;
	height: 40px;
	background: url(../img/sns-line.svg) center / contain no-repeat;
	text-indent:100%;
	white-space: nowrap;
	overflow: hidden;
	position: absolute;
}
#fixhead .contact .form {
	position: absolute;
	top: 0px;
	right: 125px;
	width: 135px;
	height: 50px;
	background: #7BAB81 url(../img/head-form.svg) center / contain no-repeat;
	text-indent:100%;
	white-space: nowrap;
	overflow: hidden;
	position: absolute;
}
#fixhead .contact .mail {
	position: absolute;
	top: 0px;
	right: 260px;
	width: 135px;
	height: 50px;
	background: #000 url(../img/head-mail.svg) center / contain no-repeat;
	text-indent:100%;
	white-space: nowrap;
	overflow: hidden;
	position: absolute;
}
#fixhead .contact .tel {
	position: absolute;
	top: 0px;
	right: 395px;
	width: 240px;
	height: 50px;
	background: url(../img/head-tel.svg) center / contain no-repeat;
	text-indent:100%;
	white-space: nowrap;
	overflow: hidden;
	position: absolute;
}
#fixhead .contact h2 {
	position: absolute;
	font-weight: bold;
	font-size: 14px;
	line-height: 50px;
	top: 0px;
	right: 645px;
}

.home .mainslide {
	position: relative;
}
.home .mainslide .slick div {
	position: relative;
	background: #CCC;
}
.home .mainslide .slick .tagline h2 {
	position: absolute;
	top: 22vw;
	left: 13vw;
	font-weight: 800;
	font-size: 2vw;
	line-height: 1.4em;
	text-shadow: 2px 2px 10px #fff ,
				-2px 2px 10px #fff ,
				2px -2px 10px #fff ,
				-2px -2px 10px #fff;
}
.home .mainslide .topinfo {
	position: absolute;
	right: 40px;
	bottom: 40px;
	background: rgba(255, 255, 255, .7);
	width: auto;
	height: 45px;
}
.home .mainslide .topinfo a {
	font-size: 16px;
	line-height: 45px;
	padding: 0 15px;
	color: #000;
	display: inline-block;
}
.home .mainslide .topinfo a.tolist {
	background: #000;
	color: #FFF;
}
.home .mainslide .slick_pause {
	width: 2.4vw;
	height: 2.4vw;
	position: absolute;
	bottom: 3vw;
	left: 6vw;
	z-index: 10;
	background: url(../img/locslide-pause.svg) center / cover no-repeat;
	text-indent:150%;
	white-space: nowrap;
	overflow: hidden;
	border: none;
}
.home .mainslide .slick_pause.paused {
	background: url(../img/locslide-play.svg) center / cover no-repeat;
}
.home .mainslide .slick_pause:hover {
	opacity: 0.7;
	cursor: pointer;
}
.home .mainslide .slick .arrow {
	width: 2.4vw;
	position: absolute;
	bottom: 3vw;
	z-index: 10;
}
.home .mainslide .slick .arrow:hover {
	opacity: 0.7;
	cursor: pointer;
}
.home .mainslide .slick .arrow.arleft {
	left: 3vw;
}
.home .mainslide .slick .arrow.aright {
	left: 9vw;
}
.home .mainslide .slick-dotted.slick-slider {
	margin-bottom: 0;
}
.home .mainslide img {
	width: 100%;
}
.home .mainslide .slick-dots {
	position: absolute;
	bottom: 6vw;
	left: 2vw;
	z-index: 10;
	width: fit-content;
	width: 10.3vw;
}
.home .mainslide .slick-list {
	padding: 0;
}

.home .slick-list {
	padding: 0 0 1vw;
}
.home .slick-dots {
	bottom: -2vw;
}
.home .slick-dots li {
	width: 2vw;
	height: calc(0.5vw + 1.6px);
}
.home .slick-dots li:hover {
	cursor: pointer;
}
.home .slick-dots li.slick-active button, .home .slick-dots li:hover button {
	background: #000;
}
.home .slick-dots li button {
	padding: 0;
	line-height: 0.8vw;
	width: 2vw;
	height: 0.6vw;
	border: 1.6px solid #000;
}
.home .slick-dots li button:before {
	display: none;
}

.home .intro {
	background: #7BAB81;
	display: flex;
}
.home .intro .inner {
	font-feature-settings: 'palt';
	box-sizing: border-box;
	width: 54vw;
	padding: 4vw 0 4vw 21vw;
	background: url(../img/ysg-logo.svg) 5vw center / 10vw no-repeat;
}
.home .intro .inner h2 {
	font-weight: 800;
	font-size: 1.85vw;
	line-height: 1.5em;
}
.home .intro .inner p {
	font-size: 0.94vw;
	line-height: 1.9em;
	margin: 1vw 0 1.5vw;
}
.home .intro .inner a {
	display: block;
	width: fit-content;
	font-size: 0.94vw;
	line-height: 3.1vw;
	color: #FFF;
	background: url(../img/bot-bg_pc.svg) right center / cover no-repeat;
	padding: 0 4vw 0 1vw;
}
.home .intro .inner a:hover {
	opacity: 0.7;
}
.home .intro .aboutmenu {
	background: url(../img/aboutmenu-bg_pc.jpg) center / cover no-repeat;
	width: 46vw;
	display: flex;
	  justify-content: center;
	  align-items: center;
}
.home .intro .aboutmenu ul {
	display: flex;
	flex-wrap: wrap;
	padding: 0 5vw;
	justify-content: space-between;
}
.home .intro .aboutmenu li {
	width: 47%;
}
.home .intro .aboutmenu li a {
	font-weight: 600;
	font-size: 1.15vw;
	line-height: 4.2vw;
	color: #FFF;
	display: block;
	border-bottom: 2px dotted #FFF;
	background: url(../img/intro-menu-arrow.svg) right 1vw center / 1.2vw auto no-repeat;
}
.home .intro .aboutmenu li a:hover {
	padding-left: 1.2vw;
	background: rgba(255, 255, 255, .2) url(../img/intro-menu-arrow.svg) right 1vw center / 1.2vw auto no-repeat;
	opacity: 1;
}

.home .bislink {
	background: url(../img/bg-w-wall.jpg) center top / 100vw auto;
	font-feature-settings: 'palt';
	box-sizing: border-box;
	padding: 10vw 0 2vw;
}
.home .bislink .tosales {
	box-sizing: border-box;
	background: #D6DBD0 url(../img/biz-sales-illust.png) 21.5vw 15.5vw / 15vw auto no-repeat;
	width: 87vw;
	height: 27vw;
	margin:0 0 5vw calc(100% - 87vw);
	padding: 3vw 3.6vw;
	position: relative;
	box-shadow: 0.5vw 0.5vw 0.5vw rgba(0, 0, 0, 0.3);
}
.home .bislink .tosales h2 {
	font-weight: 800;
	font-size: 1.85vw;
	line-height: 1.5em;
}
.home .bislink .tosales p {
	font-size: 0.94vw;
	line-height: 1.9em;
	margin: 1vw 0 1.5vw;
}
.home .bislink .tosales img {
	height: 27vw;
	position: absolute;
	left: 37vw;
	bottom: 3.6vw;
}
.home .bislink .tosales a {
	display: block;
	width: fit-content;
	font-size: 0.94vw;
	line-height: 3.1vw;
	color: #FFF;
	background: url(../img/bot-bg_pc.svg) right center / cover no-repeat;
	padding: 0 4vw 0 1.6vw;
}
.home .bislink .tosales a:hover {
	opacity: 0.7;
}

.home .bislink .torent {
	box-sizing: border-box;
	background: #D6DBD0 url(../img/biz-rental-illust.png) right 2vw bottom 1.6vw / 16vw auto no-repeat;
	width: 87vw;
	height: 27vw;
	margin:0 0 5vw;
	padding: 3vw 0 3vw 53.6vw;
	position: relative;
	box-shadow: 0.5vw 0.5vw 0.5vw rgba(0, 0, 0, 0.3);
}
.home .bislink .torent h2 {
	font-weight: 800;
	font-size: 1.85vw;
	line-height: 1.5em;
}
.home .bislink .torent p {
	font-size: 0.94vw;
	line-height: 1.9em;
	margin: 1vw 0 1.5vw;
}
.home .bislink .torent img {
	height: 27vw;
	position: absolute;
	left: 3.6vw;
	top: 3.6vw;
}
.home .bislink .torent a {
	display: block;
	width: fit-content;
	font-size: 0.94vw;
	line-height: 3.1vw;
	color: #FFF;
	background: url(../img/bot-bg_pc.svg) right center / cover no-repeat;
	padding: 0 4vw 0 1.6vw;
}
.home .bislink .torent a:hover {
	opacity: 0.7;
}

.home .tocolumn {
	box-sizing: border-box;
	margin: 7vw 3.6vw 5vw;
	padding: 3.6vw 0;
	background: #FFF;
	box-shadow: 0.5vw 0.5vw 0.5vw rgba(0, 0, 0, 0.3);
}
.home .tocolumn h2 {
	font-weight: 800;
	font-size: 1.85vw;
	line-height: 1.5em;
	text-align: center;
}
.home .tocolumn p {
	font-size: 0.94vw;
	line-height: 1.9em;
	margin: 1vw 0 1.5vw;
	text-align: center;
}
.home .tocolumn .slick {
	margin: 0 0 1vw;
}
.home .tocolumn .slick div a {
	display: block;
	width: 21vw;
	margin: auto;
	padding: 0;
	color: #000;
	background: #FFF;
	box-shadow: 0.3vw 0.3vw 0.6vw rgba(0, 0, 0, 0.3);
}
.home .tocolumn .slick div a img {
	width: 100%;
	height: 15vw;
	object-fit: cover;
	box-shadow: none;
	margin: 0 0 1vw;
}
.home .tocolumn .slick div a date {
	font-size: 0.83vw;
	line-height: 1.5em;
	margin: 0 1.5vw 0;
}
.home .tocolumn .slick div a p {
	font-size: 0.89vw;
	line-height: 1.5em;
	margin: 0.2vw 1.5vw;
	text-align: left;
	height: 5.5em;
}
.home .tocolumn a.tolist {
	display: block;
	width: fit-content;
	font-size: 0.94vw;
	line-height: 3.1vw;
	color: #FFF;
	background: url(../img/bot-bg_pc.svg) right center / cover no-repeat;
	padding: 0 4vw 0 1.6vw;
	margin: auto;
}
.home .tocolumn a.tolist:hover {
	opacity: 0.7;
}

.home .bislink .topvoice {
	box-sizing: border-box;
	background: #FFF;
	width: 87vw;
	height: 27vw;
	margin:0 0 5vw calc(100% - 87vw);
	padding: 3vw 3.6vw;
	position: relative;
	box-shadow: 0.5vw 0.5vw 0.5vw rgba(0, 0, 0, 0.3);
}
.home .bislink .topvoice h2 {
	font-weight: 800;
	font-size: 1.85vw;
	line-height: 1.5em;
}
.home .bislink .topvoice p {
	font-size: 0.94vw;
	line-height: 1.9em;
	margin: 1vw 0 1.5vw;
}
.home .bislink .topvoice a.tolist {
	display: block;
	width: fit-content;
	font-size: 0.94vw;
	line-height: 3.1vw;
	color: #FFF;
	background: url(../img/bot-bg_pc.svg) right center / cover no-repeat;
	padding: 0 4vw 0 1.6vw;
}
.home .bislink .topvoice a.tolist:hover {
	opacity: 0.7;
}
.home .bislink .topvoice .slick {
	width: 44vw;
	position: absolute;
	top: 3.5vw;
	left: 30vw;
}
.home .bislink .topvoice .slick a {
	display: block;
	width: 20vw;
	margin: 0 auto;
	color: #000;
	background: #FFF;
	box-shadow: 0.3vw 0.3vw 0.6vw rgba(0, 0, 0, 0.3);
	position: relative;
}
.home .bislink .topvoice .slick div a img {
	width: 100%;
  width: 100%;
  height: 14vw;
  object-fit: cover;
	margin: 0 0 0.5vw;
}
.home .bislink .topvoice .slick div a:after {
  content: '';
  width: 100%;
  height: 14vw;
  background: url(../img/voice-text-bg.svg) center bottom / contain no-repeat;
  position: absolute;
  top:0;
  left: 0;
  z-index: 9;
}
.home .bislink .topvoice .slick div a numv {
	font-weight: 800;
	font-size: 1.2vw;
	line-height: 1.5em;
	color: #FFF;
	position: absolute;
	left: 1vw;
	top: 11.5vw;
	z-index: 10;
}
.home .bislink .topvoice .slick div a cat {
	font-size: 1.1vw;
	line-height: 1.8vw;
	color: #FFF;
	position: absolute;
	right: 0;
	top: 0;
	padding: 0 0.6em;
}
.home .bislink .topvoice .slick div a cat.reform {
	background: #D79132;
}
.home .bislink .topvoice .slick div a cat.newbuild {
	background: #79A480;
}
.home .bislink .topvoice .slick div a p {
	font-size: 0.89vw;
	line-height: 1.5em;
	margin: 0 1vw;
	padding: 0;
	text-align: left;
	height: 4em;
}
.home .bislink .topvoice .slick .arrow {
	width: 2.4vw;
	position: absolute;
	top: 7vw;
}
.home .bislink .topvoice .slick .arrow:hover {
	opacity: 0.7;
	cursor: pointer;
}
.home .bislink .topvoice .slick .arrow.arleft {
	left: -3vw;
}
.home .bislink .topvoice .slick .arrow.aright {
	right: -3vw;
}

.home .bnrs ul {
	width: 66vw;
	margin: 7vw auto;
	display: flex;
	justify-content: space-between;
}
.home .bnrs ul li {
	width: 21vw;
	background: #FFF;
	box-shadow: 0.3vw 0.3vw 0.6vw rgba(0, 0, 0, 0.3);
}
.home .bnrs ul li a img {
	transition: all 0.5s;
}
.home .bnrs ul li a:hover img {
	opacity: 0.7
}
.torecruit {
	background: #FFF;
	width: 96%;
	margin: 2vw auto;
	box-shadow: 0.3vw 0.3vw 0.6vw rgba(0, 0, 0, 0.3);
}
.torecruit a img {
	transition: all 0.5s;
}
.torecruit a:hover img {
	opacity: 0.7
}


.page {
  padding: 280px 0 0;
  margin: auto;
}
.page h1 {
  font-weight: 800;
  font-size: 40px;
  line-height: 1.5em;
  position: relative;
  margin: auto;
  display: grid;
  grid-template-columns: 1fr 1200px 1fr;
  column-gap: 20px;
  align-items: center;
}
.page h1::before {
  content: '';
  height: 1px;
  border-bottom: 1px solid #999;
}
.page h1::after {
  content: '';
  font-weight: 500;
  font-size: 120px;
  line-height: 1.2em;
  position: absolute;
  color: #E3E2E2;
  bottom: 5px;
  left: calc(50% - 600px);
  z-index: -1;
}
.breadcrumb {
	margin: -2em auto 0;
	width: 1100px;
  display: flex;
  flex-wrap: wrap;
  list-style: none;
  font-size: 16px;
  line-height: 1.5em;
  justify-content: flex-end;
  position: relative;
  z-index: 2;
}
.breadcrumb li:not(:last-of-type)::after {
  content: "≫";
  margin: 0 .6em;
  color: #777; /* 記号の色 */
}
.breadcrumb li a {
	color: #000;
}
.breadcrumb li a:hover {
	opacity: 0.7;
}


/*建売住宅*/
.page.ready-built h1::after {
  content: 'HOUSE';
}
.page.ready-built .intro {
	background: #D6DBD0;
	position: relative;
	box-shadow: 0px 3px 5px rgba(0, 0, 0, .3);
	margin-top: 50px;
	padding: 0 calc(50% - 600px) 80px;
}
.page.ready-built .intro ul {
	padding-top: 1em;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	font-size: 18px;
}
.page.ready-built .intro ul li {
	width: 33%;
	border-bottom: 1px solid #000;
}
.page.ready-built .intro ul li a {
	display: block;
	padding: 1em 0 2.2em;
	font-weight: 600;
	text-align: center;
	line-height: 1.4vw;
	background: url(../img/ready-built-menu-arrow.svg) center 2.8em / 1em auto no-repeat;
}
.page.ready-built .intro h2 {
	font-weight: 800;
	text-align: center;
	font-size: 36px;
	line-height: 1.5em;
	margin: 2em auto 0.8em;
}
.page.ready-built .intro p {
	text-align: center;
	font-size: 18px;
	line-height: 1.5em;
	margin-top: 1em;
}
.page.ready-built .build {
	padding: 20px calc(50% - 600px) 100px;
}
.page.ready-built .build h2 {
	font-weight: 800;
	text-align: center;
	font-size: 36px;
	line-height: 1.5em;
	margin: 2em auto 1.5em;
}
.page.ready-built .build ul {
	margin: 0;
	display: flex;
	justify-content: space-between;
}
.page.ready-built .build ul li {
	width: 31%;
	position: relative;
	padding-bottom: 7%;
}
.page.ready-built .build ul li h3 {
	border-bottom: 1px solid #79A480;
	font-feature-settings: 'palt';
	font-weight: 600;
	font-size: 25px;
	line-height: 2.5em;
	text-align: center;
	display: flex;
}
.page.ready-built .build ul li h3 span.nomv {
	border-bottom: 3px solid #79A480;
	font-weight: 500;
	font-size: 52px;
	width: 1.8em;
}
.page.ready-built .build ul li h3 span {
	display: block;
	text-align: center;
	width: 100%;
}
.page.ready-built .build ul li img {
	margin-top: 30px;
}
.page.ready-built .build ul li p {
	text-align: center;
	font-size: 18px;
	line-height: 1.5em;
	text-align: justify;
	margin: 1em 0 0;
}
.page.ready-built .build ul li a {
	position: absolute;
	bottom: 0;
	left: 0;
	box-sizing: border-box;
	width: 100%;
	display: block;
	color: #FFF;
	text-align: center;
	font-feature-settings: palt;
	font-size: 18px;
	line-height: 3.33em;
	padding: 0 2.3em 0 0;
	margin: 0;
	background: url(../img/bot-bg_pc.svg) right center / cover no-repeat;
}
.page.ready-built .selling {
	background: #D6DBD0;
	position: relative;
	box-shadow: 0px 3px 5px rgba(0, 0, 0, .3);
	margin-top: 50px;
	padding: 80px calc(50% - 600px) 80px;
}
.page.ready-built .selling h2 {
	font-weight: 800;
	text-align: center;
	font-size: 36px;
	line-height: 1.5em;
	margin: 1em auto 0.8em;
}
.page.ready-built .selling p {
	text-align: center;
	font-size: 18px;
	line-height: 1.5em;
}
.page.ready-built .selling  ul {
	margin: 45px 0 0;
	display: flex;
	justify-content: center;
}
.page.ready-built .selling ul li {
	width: 31%;
	position: relative;
	padding-bottom: 8%;
	margin: 0 2.5%;
}
.page.ready-built .selling ul li h3 {
	border-left: 3px solid #79A480;
	font-feature-settings: 'palt';
	font-weight: 600;
	font-size: 25px;
	line-height: 2em;
	padding-left: 0.7em;
	margin: 0 0 0.5em;
}
.page.ready-built .selling ul li p {
	text-align: center;
	font-size: 18px;
	line-height: 1.5em;
	text-align: justify;
	margin: 1.5em 0 0;
}
.page.ready-built .selling ul li a {
	position: absolute;
	bottom: 0;
	left: 0;
	box-sizing: border-box;
	width: 100%;
	display: block;
	color: #FFF;
	text-align: center;
	font-feature-settings: palt;
	font-size: 18px;
	line-height: 3.33em;
	padding: 0 2.3em 0 0;
	margin: 0;
	background: url(../img/bot-bg_pc.svg) right center / cover no-repeat;
}
.page.ready-built .norm {
	position: relative;
	padding: 80px calc(50% - 600px) 0;
	overflow: auto;
}
.page.ready-built .norm h2 {
	font-weight: 800;
	text-align: center;
	font-size: 36px;
	line-height: 1.5em;
	margin: 1em auto 1.5em;
}
.page.ready-built .norm dl {
	margin: 40px 0 0;
}
.page.ready-built .norm dl dt {
	width: 48%;
	float: left;
	clear: both;
	font-feature-settings: 'palt';
}
.page.ready-built .norm dl dt:nth-of-type(odd) {
	float: right;
}
.page.ready-built .norm dl dt h3 {
	font-weight: 800;
	font-size: 28px;
	line-height: 1.3em;
	margin-bottom: 0.7em;
}
.page.ready-built .norm dl dt p {
	font-size: 18px;
	line-height: 1.66em;
}
.page.ready-built .norm dl dd {
	width: 44.5%;
	float: right;
	margin-bottom: 85px;
}
.page.ready-built .norm dl dd:nth-of-type(odd) {
	float: left;
}
.page.ready-built .normother {
	position: relative;
	padding: 40px calc(50% - 610px) 80px;
	overflow: auto;
}
.page.ready-built .normother h2 {
	font-weight: 800;
	text-align: center;
	font-size: 28px;
	line-height: 1.5em;
	margin: 0 auto 1.5em;
}
.page.ready-built .normother .slick .slick-track {
  display: flex;
}
.page.ready-built .normother .slick .slick-slide {
	height: auto !important;
	margin: 0 20px 20px;
	border: 5px solid #7BAB81;
	box-shadow: 7px 7px 10px rgba(0, 0, 0, 0.3);
}
.page.ready-built .normother .slick .slick-slide h3 {
	font-weight: 800;
	text-align: center;
	font-size: 24px;
	line-height: 1.5em;
	margin: 0.3em 4% 0.3em;
}
.page.ready-built .normother .slick .slick-slide p {
	text-align: justify;
	font-size: 18px;
	line-height: 1.5em;
	margin: 0.3em 5% 5%;
	word-break: break-all;
}
.page.ready-built .normother a.linkbot {
	display: block;
	color: #FFF;
	font-size: 18px;
	line-height: 3.33em;
	padding: 0 4.3em 0 2.77em;
	margin: 3em 0 0 calc(50% - 9.7em);
	background: url(../img/bot-bg_pc.svg) right center / cover no-repeat;
	width: fit-content;
}
.page.ready-built .story {
	background: #FFF;
	position: relative;
	padding: 80px 0;
}
.page.ready-built .story h2 {
	font-weight: 800;
	text-align: center;
	font-size: 36px;
	line-height: 1.5em;
	margin: 1em auto 1.5em;
}
.page.ready-built .story p {
	text-align: center;
	font-size: 18px;
	line-height: 1.5em;
}
.page.ready-built .story .background {
	margin: 80px auto 0;
	width: calc(100% - 70px);
	max-width: 1600px;
	background: url(../img/ready-built-history-bg_pc.jpg) center / cover no-repeat;
	border-radius: 40px;
}
.page.ready-built .story .background h2 {
	padding-top: 40px;
	margin: 0 auto;
}
.page.ready-built .story .background ul {
	margin: 40px auto 0;
}
.page.ready-built .story .background ul li {
	width: 450px;
}
.page.ready-built .story .background ul li .era {
	font-size: 30px;
	line-height: 2.33em;
	text-align: center;
	color: #FFF;
	background: #8c8c8c;
	border-radius: 10px;
}
.page.ready-built .story .background ul li:nth-of-type(1) .era {
	margin-left: calc(100% - 7em);
}
.page.ready-built .story .background ul li:nth-of-type(2) .era {
	margin-right: calc(100% - 7em);
	background-color: #878787;
}
.page.ready-built .story .background ul li:nth-of-type(3) .era {
	margin-left: calc(100% - 7em);
	background-color: #7a7a7a;
}
.page.ready-built .story .background ul li:nth-of-type(4) .era {
	margin-right: calc(100% - 7em);
	background-color: #666666;
}
.page.ready-built .story .background ul li:nth-of-type(5) .era {
	margin-left: calc(100% - 7em);
	background-color: #424242;
}
.page.ready-built .story .background ul li .box {
	margin-top: 3%;
	padding: 2% 4%;
	background: #FFF;
}
.page.ready-built .story .background ul li .box h3 {
	font-weight: 500;
	font-size: 22px;
	line-height: 1.4em;
	margin-bottom: 0.3em;
}
.page.ready-built .story .background ul li .box p {
	font-size: 16px;
	line-height: 1.7em;
	text-align: justify;
}
.page.ready-built .story .background ul li .balloon {
	position: relative;
  display: inline-block;
  margin: 0.3em 0 0 0.8em;
  padding: 0.2em 0.5em 0.5em;
  width: 415px;
  color: #555;
  font-size: 22px;
  background: #FFF;
  border: solid 4px #7BAB81;
  box-sizing: border-box;
  border-radius: 1em;
}
.page.ready-built .story .background ul li .balloon:before {
  content: "";
  position: absolute;
  top: -24px;
  left: 20%;
  margin-left: -15px;
  border: 12px solid transparent;
  border-bottom: 12px solid #FFF;
  z-index: 2;
}
.page.ready-built .story .background ul li .balloon:after {
  content: "";
  position: absolute;
  top: -31px;
  left: 20%;
  margin-left: -17px;
  border: 14px solid transparent;
  border-bottom: 14px solid #7BAB81;
  z-index: 1;
}
.page.ready-built .story .background ul li .balloon .at {
	font-weight: 600;
	font-size: 20px;
	line-height: 1.5em;
	color: #7BAB81;
}
.page.ready-built .story .background ul li .balloon .at span {
	font-weight: 400;
	font-size: 16px;
	color: #000;
}
.page.ready-built .story .background ul li .balloon p {
	font-size: 22px;
	line-height: 1.5em;
	color: #000;
}
.page.ready-built .story .background ul li .balloon p .green {
	font-weight: 800;
	font-size: 24px;
	color: #7BAB81;
}
.page.ready-built .story a.linkbot {
	display: block;
	color: #FFF;
	font-size: 18px;
	line-height: 3.33em;
	padding: 0 4.3em 0 2.77em;
	margin: 3em 0 0 calc(50% - 11em);
	background: url(../img/bot-bg_pc.svg) right center / cover no-repeat;
	width: fit-content;
}
.page.ready-built .other {
	padding: 110px calc(50% - 600px) 80px;
	background: #D6DBD0;
	margin-bottom: 2vw;
}
.page.ready-built .other ul {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.page.ready-built .other ul li h3 {
	font-weight: 800;
	font-size: 28px;
	line-height: 1.4em;
}
.page.ready-built .other ul li p {
	font-size: 18px;
	line-height: 1.66em;
	margin: 1em 0 1.66em;
}
.page.ready-built .other ul li a.linkbot {
	color: #FFF;
	font-size: 18px;
	line-height: 3.33em;
	text-align: center;
	margin: 0 4.3em 0 2.77em;
	padding: 0 3.3em 0 1.77em;
	box-sizing: revert;
	background: url(../img/bot-bg_pc.svg) right center / cover no-repeat;
}
.page.ready-built .other ul li#service {
	display: flex;
	width: 100%;
	padding: 0;
	margin-bottom: 72px;
	overflow: auto;
	gap: 30px;
}
.page.ready-built .other ul li#service div {
	display: flex;
    flex-direction: column;
	width: 50%;
	padding: 0;
	margin-bottom: 72px;
	overflow: auto;
}
.page.ready-built .other ul li#service img {
	width: 47%;
	padding: 0;
	overflow: auto;
}
.page.ready-built .other ul li#flow,
.page.ready-built .other ul li#voice {
	display: flex;
    flex-direction: column;
	width: 47%;
	padding: 0;
	overflow: auto;
	gap: 30px;
}
.page.ready-built .other ul li#flow div,
.page.ready-built .other ul li#voice div {
	display: flex;
    flex-direction: column;
	width: 100%;
	padding: 0;
	overflow: auto;
	order: 2;
}
.page.ready-built .other ul li#flow div p,
.page.ready-built .other ul li#voice div p {
	height: 3.5rem;
}
.page.ready-built .other ul li#flow img,
.page.ready-built .other ul li#voice img {
	width: 100%;
	padding: 0;
	overflow: auto;
	order: 1;
}
.page.ready-built .other ul li#voice a.linkbot {
	width: 50%;
	margin: auto;
	padding: 0 1em 0 0;
}

/*家づくり*/
.page.build h1::after {
  content: 'BUILD';
}
.page.build .stage {
	background: #F6F6F6;
	padding: 0 0 100px;
}
.page.build .stage ul.buildnav {
	border-bottom: 1px solid #A8A4A4;
	margin: 40px calc(50% - 600px);
	padding: 40px 0 0;
	display: flex;
	font-size: 18px;
}
.page.build .stage ul.buildnav li {
	width: 33.3%;
}
.page.build .stage ul.buildnav li a {
	background: url(../img/build-nav-arrow.svg) center 2.3em / 1em auto no-repeat;
	line-height: 2.2em;
	padding-bottom: 1.5em;
	box-sizing: border-box;
	display: block;
	text-align: center;
	transition: none;
}
.page.build .stage ul.buildnav li a.active, .page.build .stage ul.buildnav li a:hover {
	border-bottom: 5px solid #7BAB81;
	opacity: 1;
}
.page.build .stage h2 {
	margin: 60px auto 50px;
	text-align: center;
	font-weight: 800;
	font-size: 36px;
	line-height: 1.4em;
}


/*家づくりコンセプト*/
.page.build .stage ul.points {
	margin: 0 calc(50% - 600px);
}
.page.build .stage ul.points li {
	overflow: auto;
	padding-bottom: 10%;
}
.page.build .stage ul.points .point .nomv {
	font-weight: bold;
	font-size: 50px;
	line-height: 1.2em;
	color: #7BAB81;
}




.page.build .stage ul.points li div.point:nth-child(odd) {
display: grid;
grid-template-columns: repeat(2, 1fr);
grid-template-rows: 0.5fr 1fr;
grid-column-gap: 50px;
grid-row-gap: 0px;
}

.page.build .stage ul.points li:nth-child(odd)  div.pointh3 { grid-area: 1 / 1 / 2 / 2; }
.page.build .stage ul.points li:nth-child(odd)  div.point img { grid-area: 1 / 2 / 3 / 3; }
.page.build .stage ul.points li:nth-child(odd)  div.point p { grid-area: 2 / 1 / 3 / 2; }
.page.build .stage ul.points li:nth-child(even) div.point h3 { grid-area: 1 / 2 / 2 / 3; }
.page.build .stage ul.points li:nth-child(even) div.point img { grid-area: 1 / 1 / 3 / 	2; }
.page.build .stage ul.points li:nth-child(even) div.point div.embed { grid-area: 1 / 1 / 3 / 2; }
.page.build .stage ul.points li:nth-child(even) div.point p { grid-area: 2 / 2 / 3 / 3; }

.page.build .stage ul.points div.point h3 div {
    margin-bottom: 0.5em;
}




.page.build .stage ul.points h3 {
	font-weight: bold;
	font-size: 30px;
	line-height: 1.2em;
	border-bottom: 1px solid #A8A4A4;
	padding: 0.5em 0;
}
.page.build .stage ul.points p {
	font-size: 18px;
	line-height: 1.7em;
	margin: 0.7em 0 0;
	font-feature-settings: 'palt';
}

.page.build .stage .embed{
    position: relative;
    width: 100%;
    padding: calc(500 / 560 * 100%) 0 0;
}

.page.build .stage .embed iframe{
     position: absolute;
     top: 0;
     left: 0;
     width: 100%;
     height: 100%;
}

.page.build .stage .feature {
	border-top: 1px solid #A8A4A4;;
	margin: 0 calc(50% - 600px);
	padding: 120px 0 40px;
	height: 490px;
	position: relative;
}
.page.build .stage .feature h3 {
	font-weight: bold;
	font-size: 30px;
	line-height: 1.2em;
}


.page.build .stage .feature .item_text {
	width: 48%;
	font-size: 18px;
    line-height: 1.7em;
	margin: 0.7em 0 0;
}
.page.build .stage .feature ul.item {
	width: 48%;
	font-size: 18px;
	margin: 0.7em 0 0;
}
.page.build .stage .feature ul.item li {
	line-height: 1.7em;
	display: inline-block;
	padding-right: 1em;
}
.page.build .stage .feature ul.item li::before {
	content: '● ';
}
.page.build .stage .feature .slick ,
.page.build .stage .feature .slick2,
.page.build .stage .feature .slick3 {
	width: 48%;
	position: absolute;
	top: 120px;
	right: 0;
}
.page.build .stage .feature .slick p,
.page.build .stage .feature .slick2 p,
.page.build .stage .feature .slick3 p {
	font-size: 18px;
	line-height: 1.7em;
	padding-top: 0.3em;
}

.page.build .stage .feature .slick p.title,
.page.build .stage .feature .slick2 p.title,
.page.build .stage .feature .slick3 p.title {
	font-size: 18px;
	padding-top: 0.3em;
	font-weight: 800;
	margin-bottom: 5px;
}

.page.build .stage .feature .slick p.read,
.page.build .stage .feature .slick2 p.read,
.page.build .stage .feature .slick3 p.read {
	font-size: 13px;
	line-height: 1.5em;
	padding-top: 0.3em;
	margin-bottom: 15px;
}

.page.build .stage .feature .slick .arrow,
.page.build .stage .feature .slick2 .arrow,
.page.build .stage .feature .slick3 .arrow {
	width: 2.4em;
	position: absolute;
	top: calc(50% - 2em - 1.2em);
}
.page.build .stage .feature .slick .arrow:hover,
.page.build .stage .feature .slick2 .arrow:hover,
.page.build .stage .feature .slick3 .arrow:hover {
	opacity: 0.7;
	cursor: pointer;
}
.page.build .stage .feature .slick .arrow.arleft,
.page.build .stage .feature .slick2 .arrow.arleft,
.page.build .stage .feature .slick3 .arrow.arleft {
	left: -3vw;
}
.page.build .stage .feature .slick .arrow.aright,
.page.build .stage .feature .slick2 .arrow.aright,
.page.build .stage .feature .slick3 .arrow.aright {
	right: -3vw;
}
.page.build .stage .feature .slick-list {
	padding: 0 0 1em;
}
.page.build .stage .feature .slick-dots {
	bottom: -1.5em;
}
.page.build .stage .feature .slick-dots li {
	width: 2vw;
	height: calc(0.5vw + 1.6px);
}
.page.build .stage .feature .slick-dots li:hover {
	cursor: pointer;
}
.page.build .stage .feature .slick-dots li.slick-active button,
 .home .slick-dots li:hover button {
	background: #000;
}
.page.build .stage .feature .slick-dots li button {
	padding: 0;
	line-height: 0.8vw;
	width: 2vw;
	height: 0.6vw;
	border: 1.6px solid #000;
}
.page.build .stage .feature .slick-dots li button:before {
	display: none;
}

.dots-box,
.dots-box2 {
	width: 48%;
}
.dots-box .slide-dots,
.dots-box2 .slide-dots {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	margin-top: 10px;
	margin-bottom: 10px;
}
.dots-box .slide-dots li,
.dots-box2 .slide-dots li {
	padding: 5px 10px;
	border: 1px solid #333;
	cursor: pointer;
}
.dots-box .slide-dots li button,
.dots-box2 .slide-dots li button {
	display: none;
}
.dots-box .slide-dots li.slick-active,
.dots-box2 .slide-dots li.slick-active {
	background: #ccc;
}
.dots-box .slide-dots li:nth-of-type(1):after{ content: "小上がりタタミルーム"; }
.dots-box .slide-dots li:nth-of-type(2):after{ content: "アイランドキッチン"; }
.dots-box .slide-dots li:nth-of-type(3):after{ content: "ファミリークローゼット"; }
.dots-box .slide-dots li:nth-of-type(4):after{ content: "3畳洗面室"; }
.dots-box .slide-dots li:nth-of-type(5):after{ content: "引戸の採用"; }
.dots-box .slide-dots li:nth-of-type(6):after{ content: "各居室収納"; }

.dots-box2 .slide-dots li:nth-of-type(1):after{ content: "キッチン"; }
.dots-box2 .slide-dots li:nth-of-type(2):after{ content: "IHクッキングヒーター"; }
.dots-box2 .slide-dots li:nth-of-type(3):after{ content: "食器洗い乾燥機"; }
.dots-box2 .slide-dots li:nth-of-type(4):after{ content: "レンジフード"; }
.dots-box2 .slide-dots li:nth-of-type(5):after{ content: "バスルーム"; }
.dots-box2 .slide-dots li:nth-of-type(6):after{ content: "浴室暖房換気乾燥機"; }
.dots-box2 .slide-dots li:nth-of-type(7):after{ content: "洗面ドレッシング"; }
.dots-box2 .slide-dots li:nth-of-type(8):after{ content: "エコキュート"; }
.dots-box2 .slide-dots li:nth-of-type(9):after{ content: "トイレ"; }
.dots-box2 .slide-dots li:nth-of-type(10):after{ content: "室内ドア"; }
.dots-box2 .slide-dots li:nth-of-type(11):after{ content: "玄関収納"; }
.dots-box2 .slide-dots li:nth-of-type(12):after{ content: "インターホン"; }
.dots-box2 .slide-dots li:nth-of-type(13):after{ content: "照明器具"; }
.dots-box2 .slide-dots li:nth-of-type(14):after{ content: "玄関ドア"; }
.dots-box2 .slide-dots li:nth-of-type(15):after{ content: "網戸"; }



.page.build .stage .pageback a {
	display: block;
	width: fit-content;
	font-size: 18px;
	line-height: 3.33em;
	color: #FFF;
	background: url(../img/backbot-bg_pc.svg) left center / cover no-repeat;
	padding: 0 2.22em 0 5em;
	margin: auto;
	transform: translate(-0.6em);
}

.lity-container .lity-close {
position: absolute!important;
right: -10px!important;
top: -35px!important;
}


/*家づくり性能*/
.page.build .stage .main {
	margin: 0 calc(50% - 600px) 80px;
}
.page.build .stage ul.perflist {
	margin: 0 calc(50% - 600px) -120px;
}
.page.build .stage ul.perflist li {
	overflow: auto;
	padding-bottom: 6%;
}
.page.build .stage ul.perflist li img {
	width: 47%;
	float: right;
	padding-left: 4%;
}
.page.build .stage ul.perflist li:nth-of-type(even) img {
	float: left;
	padding: 0 4% 0 0;
}
.page.build .stage ul.perflist li .point {
	width: 47%;
	float: left;
}
.page.build .stage ul.perflist h3 {
	font-weight: bold;
	font-size: 30px;
	line-height: 1.2em;
	border-bottom: 1px solid #A8A4A4;
	padding: 0 0 0.5em;
}
.page.build .stage ul.perflist p {
	font-size: 18px;
	line-height: 1.7em;
	margin: 0.7em 0 0;
	font-feature-settings: 'palt';
}
.page.build .stage .enersave {
	margin: 0 calc(50% - 600px);
}
.page.build .stage .enersave h3 {
	font-weight: bold;
	font-size: 30px;
	line-height: 1.2em;
	border-bottom: 1px solid #A8A4A4;
	padding: 0.5em 0;
}
.page.build .stage .enersave p {
	font-size: 18px;
	line-height: 1.7em;
	margin: 0.7em 0 0;
	font-feature-settings: 'palt';
}
.page.build .stage .enersave .esimg {
	margin: 70px 0 0;
	display: flex;
	justify-content: space-between;
}
.page.build .stage .enersave .esimg img {
	width: 47%;
}
.page.build .zeh {
	margin: 0 calc(50% - 600px) 120px;
}
.page.build .zeh h2 {
	margin: 60px auto 50px;
	text-align: center;
	font-weight: 800;
	font-size: 36px;
	line-height: 1.4em;
}
.page.build .zeh .slick .slick-slide {
	margin: 0 30px;
}
.page.build .zeh .slick .slick-slide img {
	width: 55%;
	float: right;
	margin-left: 4%;
}
.page.build .zeh .slick .slick-slide h3 {
	font-weight: bold;
	font-size: 24px;
	line-height: 1.4em;
}
.page.build .zeh .slick .slick-slide p {
	font-size: 18px;
	line-height: 1.7em;
	word-break: break-word;
	margin: 0.5em 0;
}
.page.build .zeh .slick .arrow {
	width: 2.4em;
	position: absolute;
	top: calc(50% - 2em - 1.2em);
}
.page.build .zeh .slick .arrow:hover {
	opacity: 0.7;
	cursor: pointer;
}
.page.build .zeh .slick .arrow.arleft {
	left: -3vw;
}
.page.build .zeh .slick .arrow.aright {
	right: -3vw;
}
.page.build .zeh .slick-list {
	padding: 0 0 1em;
}
.page.build .zeh .slick-dots {
	bottom: -1.5em;
}
.page.build .zeh .slick-dots li {
	width: 2vw;
	height: calc(0.5vw + 1.6px);
}
.page.build .zeh .slick-dots li:hover {
	cursor: pointer;
}
.page.build .zeh .slick-dots li.slick-active button, .home .slick-dots li:hover button {
	background: #000;
}
.page.build .zeh .slick-dots li button {
	padding: 0;
	line-height: 0.8vw;
	width: 2vw;
	height: 0.6vw;
	border: 1.6px solid #000;
}
.page.build .zeh .slick-dots li button:before {
	display: none;
}

.page.build .stage.earthquake {
	padding: 20px 0 100px;
}
.page.build .stage.earthquake ul {
	margin: 0 calc(50% - 600px);
}
.page.build .stage.earthquake ul li {
	overflow: auto;
	padding-bottom: 10%;
}
.page.build .stage.earthquake ul li img {
	width: 47%;
	float: right;
	padding-left: 4%;
}
.page.build .stage.earthquake ul li:nth-of-type(even) img {
	float: left;
	padding: 0 4% 0 0;
}
.page.build .stage.earthquake ul li .point {
	width: 47%;
	float: left;
}
.page.build .stage.earthquake ul h3 {
	font-feature-settings: 'palt';
	font-weight: bold;
	font-size: 28px;
	line-height: 1.2em;
	border-bottom: 1px solid #A8A4A4;
	padding: 0 0 0.5em 1.3em;
	position: relative;
}
.page.build .stage.earthquake ul h3 span {
	float: left;
	position: absolute;
	left: 0;
	top: 0;
}
.page.build .stage.earthquake ul p {
	font-size: 18px;
	line-height: 1.7em;
	margin: 0.7em 0 0;
	font-feature-settings: 'palt';
}


/*家づくり品質*/
.page.build .stage .examination {
	border-bottom: 1px solid #A8A4A4;
	margin: 0 calc(50% - 600px) 0;
}
.page.build .stage .examination h3 {
	font-weight: bold;
	font-size: 30px;
	line-height: 1.4em;
}
.page.build .stage .examination p {
	font-size: 18px;
	line-height: 1.7em;
	margin: 1em 0 4em;
}
.page.build .stage .examination ul {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	padding-bottom: 40px;
}
.page.build .stage .examination ul li {
	width: 47%;
	padding: 0 0 6%;
}
.page.build .stage .examination li h4 {
	font-weight: bold;
	font-size: 24px;
	margin: 1.2em 0 0;
}
.page.build .stage .examination li p {
	font-size: 18px;
	margin: 0.7em 0 1.2em;
	word-break: break-word;
}
.page.build .stage .examination ul li:nth-of-type(7) {
	width: 100%;
	overflow: auto;
}
.page.build .stage .examination ul li:nth-of-type(7) img {
	width: 38%;
	float: right;
	margin-left: 2%;
}

.page.build .stage .quality {
	margin: 0 calc(50% - 600px) 0;
}
.page.build .stage .quality h3 {
	font-weight: bold;
	font-size: 30px;
	line-height: 1.4em;
	margin-top: 8%;
}
.page.build .stage .quality p {
	font-size: 18px;
	line-height: 1.7em;
	margin: 1em 0;
}
.page.build .stage .quality .qlist {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	padding-bottom: 40px;
}
.page.build .stage .quality .qlist li {
	width: 31%;
	background: #FFF;
	margin-bottom: 40px;
}
.page.build .stage .quality .qlist li h4 {
	font-weight: bold;
	font-size: 24px;
	margin: 1.2em 8% 0;
}
.page.build .stage .quality .qlist li p {
	font-size: 18px;
	margin: 0.7em 8% 1.2em;
	word-break: break-word;
}


/*保証とアフターサービス*/
.page.after h1::after {
  content: 'AFTER SERVICE';
}
.page.after .stage {
	background: #F6F6F6;
	margin-top: 3.1vw;
	padding: 100px calc(50% - 600px);
}
.page.after .stage h2 {
	font-weight: 800;
	font-size: 36px;
	line-height: 1.5em;
	text-align: center;
	margin-bottom: 7.8%;
}
.page.after .stage li {
	margin-bottom: 7.8%;
	overflow: auto;
}
.page.after .stage li h3 {
	font-weight: bold;
	font-size: 30px;
	line-height: 1.4em;
	padding-bottom: 0.4em;
	border-bottom: 1px solid #A8A4A4;
}
.page.after .stage li p {
	font-size: 18px;
	line-height: 1.66em;
	margin: 0.5em 0 1em;
}
.page.after .stage li ul.mt-s {
	margin-top: 1em;
}
.page.after .stage li ul {
	margin-left: 4.2%;
}
.page.after .stage li ul li {
	margin-bottom: 4%;
}
.page.after .stage li h4 {
	font-weight: bold;
	font-size: 26px;
	line-height: 1.4em;
}
.page.after .stage li img {
	margin: 0 auto 2%;
	display: block;
}
.page.after .stage li img.right {
	margin: 0 0 0 4.2%;
	float: right;
	width: 46%;
}
.page.after .stage li img.left {
	margin: 0 4.2% 0 0;
	float: left;
	width: 45%;
}
.page.after .stage li.imgright img {
	width: 45%;
	float: right;
	margin-left: 5%;
}
.page.after .stage li.imgright h3 {
	width: 50%;
}
.page.after .stage .pageback a {
	display: block;
	width: fit-content;
	font-size: 18px;
	line-height: 3.33em;
	color: #FFF;
	background: url(../img/backbot-bg_pc.svg) left center / cover no-repeat;
	padding: 0 2.22em 0 5em;
	margin: auto;
	transform: translate(-0.6em);
}


/*私たちがサンホームズです*/
.page.about h1::after {
  content: 'ABOUT';
}
.page.about .bggrn {
	background: #7BAB81;
}
.page.about .jumper {
	position: relative;
	margin: 70px calc(50% - 600px) 0;
	padding: 0;
	border-bottom: 1px solid #000;
	display: flex;
}
.page.about .jumper li {
	width: calc(100% / 6);
}
.page.about .jumper li a {
	display: block;
	font-weight: 600;
	font-size: 18px;
	line-height: 1.38em;
	text-align: center;
	padding: 1.38em 0 2em;
	background: url(../img/about-jump-arrow.svg) center 3.1em / 1em auto no-repeat;
}
.page.about .jumper li a:hover {
	background: url(../img/about-jump-arrow.svg) center 3.4em / 1em auto no-repeat;
}
.page.about #concept {
	padding: 7% 0;
}
.page.about #concept .concept-inner {
	width: 1000px;
	max-width: 95%;
	margin: 0 auto;
	-webkit-font-feature-settings: "palt";
	font-feature-settings: "palt";
}
.page.about #concept h2 {
	font-weight: 800;
	font-size: 36px;
	line-height: 1.5em;
	margin: 0 0 1em;
}
.page.about #concept p {
	font-size: 18px;
	line-height: 1.66em;
}
.page.about #concept .concept-col2 {
	display: flex;
}
.page.about #concept .concept-col2 .concept-l {
	width: 46%;
}
.page.about #concept .concept-col2 .concept-r {
	width: 54%;
}
.page.about #concept .concept-logo {
	max-width: 90%;
	margin: 0 auto;
}
.page.about #concept .concept-logo img {
	width: 308px;
	max-width: 58%;
    margin: 0 auto;
}
.page.about #message {
	margin: 0 calc(50% - 600px);
	padding: 8.3% 0;
	position: relative;
}
.page.about #message .right {
	float: right;
	width: 25%;
}
.page.about #message .right figcaption {
	text-align: center;
	font-size: 20px;
	line-height: 2.5em;
}
.page.about #message .right figcaption span {
	font-size: 24px;
}
.page.about #message h2 {
	font-weight: 800;
	font-size: 36px;
	line-height: 1.5em;
	margin: 0 0 1em;
}
.page.about #message p {
	font-size: 18px;
	line-height: 1.66em;
	width: 61.5%;
}
.page.about .bgpgrn {
	background: #D6DBD0;
}
.page.about #proud {
	margin: 0 calc(50% - 600px);
	padding: 8.3% 0;
}
.page.about #proud h2 {
	font-weight: 800;
	font-size: 36px;
	line-height: 1.5em;
	text-align: center;
	margin: 0 0 1.5em;
}
.page.about #proud ul {
	box-sizing: border-box;
	width: 73%;
	padding: 5% 0 1% 7.2%;
	margin: auto;
	background: #FFF;
}
.page.about #proud ul li {
	padding-bottom: 4%;
}
.page.about #proud ul li:not(:first-child) {
	margin-top: 30px;
}
.page.about #proud ul li .nomv {
	font-size: 60px;
	font-weight: 600;
	line-height: 1.5em;
	width: 23%;
	float: left;
	border-right: 1px solid #000;
}
.page.about #proud ul li .nomv span {
	font-size: 36px;
}
.page.about #proud ul li .point {
	font-weight: 800;
	font-size: 28px;
	line-height: 1.8em;
	padding-left: 28%;
	font-feature-settings: 'palt';
}
.page.about #proud ul li .point span {
	color: #7BAB81;
	border-bottom: 1px solid #7BAB81;
}
.page.about #proud ul li a {
	display: block;
	width: 15em;
	text-align: center;
	font-size: 18px;
	line-height: 3.33em;
	color: #FFF;
	background: url(../img/bot-bg_pc.svg) right center / cover no-repeat;
	padding: 0 4.5em 0 3.72em;
	margin: 1em 0 0 9em;
	transform: translate(-0.6em);
}
.page.about .bgrgly {
	background: #F7F7F7;
}
.page.about #business {
	margin: 0 calc(50% - 600px);
	padding: 8.3% 0;
	position: relative;
}
.page.about #business h2 {
	font-weight: 800;
	font-size: 36px;
	line-height: 1.5em;
	text-align: center;
	margin: 0 0 1em;
}
.page.about #business p {
	font-size: 18px;
	line-height: 1.66em;
	text-align: center;
}
.page.about #business ul li {
	margin-top: 8%;
	overflow: auto;
}
.page.about #business ul li h3 {
	font-weight: 800;
	font-size: 28px;
	line-height: 1.5em;
	margin: 0 0 1em;
}
.page.about #business ul li img {
	width: 44%;
}
.page.about #business ul li:nth-of-type(1) img {
	float: right;
	margin: 0 0 0 6%;
}
.page.about #business ul li:nth-of-type(2) img {
	float: left;
	margin: 0 6% 0 0;
}
.page.about #business ul li p {
	font-size: 18px;
	line-height: 1.66em;
	text-align: justify;
}

.page.about #numbers {
	margin: 0 calc(50% - 600px);
	padding: 8.3% 0;
	position: relative;
}
.page.about #numbers h2 {
	font-weight: 800;
	font-size: 36px;
	line-height: 1.5em;
	text-align: center;
	margin: 0 0 1em;
}
.page.about #numbers ul {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.page.about #numbers ul::after {
	width: 31%;
	height: 1px;
	content: '';
}
.page.about #numbers ul li {
	text-align: center;
	box-sizing: border-box;
	width: 31%;
	background: #7BAB81;
	margin: 4% 0 0;
	padding: 2% 3% 3%;
	position: relative;
	box-shadow: 4px 4px 8px rgba(0, 0, 0, 0.3);
}
.page.about #numbers ul li h3 {
	color: #FFF;
	font-weight: 800;
	font-size: 26px;
	line-height: 1.5em;
	margin-bottom: 0.3em;
}
.page.about #numbers ul li img {
	border-radius: 7%;
}
.page.about #numbers ul li p {
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	padding: 0 0 13%;
	color: #7BAB81;
	z-index: 2;
	font-feature-settings: 'palt';
	font-weight: 800;
	font-size: 30px;
	line-height: 1.2em;
}
.page.about #numbers ul li p span {
	font-size: 85px;
}
.page.about #numbers ul li:nth-of-type(3) p span {
	font-size: 40px;
}
.page.about #numbers ul li:nth-of-type(5) p span {
	font-size: 65px;
}
.page.about #numbers ul li p span.now {
	font-size: 20px;
	line-height: 1.4em;
	font-weight: 600;
	display: block;
}
.page.about #history {
	margin: 0 calc(50% - 600px);
	padding: 8.3% 0;
	position: relative;
}
.page.about #history h2 {
	font-weight: 800;
	font-size: 36px;
	line-height: 1.5em;
	text-align: center;
	margin: 0 0 1.5em;
}
.page.about #history h3 {
	font-weight: 800;
	font-size: 28px;
	line-height: 1.6em;
	margin-bottom: 0.5em;
}
.page.about #history p {
	font-size: 18px;
	line-height: 1.66em;
}
.page.about #history .map {
	overflow: auto;
	padding-bottom: 5%;
}
.page.about #history .map img {
	float: right;
	width: 47.5%;
}
.page.about #history .map p {
	width: 42%;
	text-align: justify;
}
.page.about #history ul {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.page.about #history ul h3 {
	text-align: center;
	width: 100%;
	margin-bottom: 1em;
}
.page.about #history ul li {
	width: 30%;
}
.page.about #history ul li p {
	margin-bottom: 0.5em 0 0;
	text-align: center;
	font-size: 22px;
}
.page.about #history a.textbot {
	display: block;
	width: 15em;
	text-align: center;
	font-size: 18px;
	line-height: 3.33em;
	color: #FFF;
	background: url(../img/bot-bg_pc.svg) right center / cover no-repeat;
	padding: 0 4.5em 0 3.72em;
	margin: 2.5em 0 0 34%;
	transform: translate(-0.6em);
}

.page.about #outline {
	margin: 0 calc(50% - 600px);
	padding: 0 0 8.3%;
	position: relative;
}
.page.about #outline h2 {
	font-weight: 800;
	font-size: 36px;
	line-height: 1.5em;
	text-align: center;
	margin: 0 0 .5em;
	padding-top: 8.3%;
}
.page.about #outline dl {
	display: flex;
	flex-wrap: wrap;
}
.page.about #outline dl dt {
	border-bottom: 4px solid #7BAB81;
	width: 25%;
	padding: 1em 1em;
	box-sizing: border-box;
	font-weight: 500;
	font-size: 18px;
	line-height: 1.4em;
}
.page.about #outline dl dd {
	border-bottom: 1px solid #7BAB81;
	width: 75%;
	padding: 1em 1em calc(1em + 3px);
	box-sizing: border-box;
	font-size: 18px;
	line-height: 1.4em;
}
.page.about #outline dl dd h3 {
	float: left;
	width: calc(100% - 670px);
}
.page.about #outline dl dd dt {
	border: none;
	width: 170px;
	padding: 0;
	box-sizing: border-box;
	font-size: 18px;
	line-height: 1.4em;
}
.page.about #outline dl dd dd {
	border: none;
	width: 500px;
	padding: 0 0 1em;
	box-sizing: border-box;
	font-size: 18px;
	line-height: 1.4em;
}
.page.about #outline dl dd dd.last {
	padding: 0;
}
.page.about #outline dl dd dl.social {
	display: flex;
	flex-wrap: wrap;
}
.page.about #outline dl dd dl.social dt {
	box-sizing: border-box;
	width: calc(100% - 500px);
	padding: 0 2em 1em 0;
}
.page.about #outline dl dd dl.social dd {
	width: 500px;
	display: table;
}
.page.about #outline dl dd dl.social dd p {
	display: table-cell;
	vertical-align: middle;
}
.page.about #outline dl dd dt.last {
	padding-bottom: 0!important;
}



/*サンホームズの歴史*/
.page.history h1::after {
  content: 'HISTORY';
}
.page.history .intro {
	background: #7BAB81;
	position: relative;
	margin-top: 300px;
	padding: 260px calc(50% - 600px) 90px;
}
.page.history .intro .main {
	width: 1200px;
	margin: 0 auto 80px;
	position: absolute;
	top: -230px;
	left: 0;
	right: 0;
}
.page.history h2 {
	font-weight: 800;
	font-size: 36px;
	line-height: 1.5em;
	text-align: center;
}
.page.history .intro h2 {
	margin: 1.66em auto;
	color: #FFF;
}
.page.history .map-title {
	font-size: 28px;
	line-height: 1.25;
	margin: 2em 0 0.5em;
}
.page.history .intro ul {
	background: #FFF;
	padding: 75px 75px 45px;
}
.page.history .intro ul li {
	border-top: 1px solid #A8A4A4;
	padding-top: 30px;
}
.page.history .intro ul li:nth-of-type(1) {
	border-top: none;
	padding-top: 0;
}
.page.history .intro ul li h3 {
	border-left: 5px solid #7BAB81;
	font-weight: 800;
	font-size: 28px;
	line-height: 1.4em;
	padding-left: 0.5em;
	margin-bottom: -0.5em;
}
.page.history .intro ul li h4 {
	font-weight: 800;
	font-size: 24px;
	line-height: 1.4em;
	margin: 1.25em 0 -0.8em;
}
.page.history .intro ul li p {
	font-size: 18px;
	line-height: 1.66em;
	margin: 1.66em 0;
}
.page.history .intro ul li .simg {
	display: flex;
	justify-content: space-between;
}
.page.history .intro ul li .simg img {
	height: 295px;
}
.page.history .intro ul li .simg figcaption {
	font-size: 16px;
	line-height: 1.4em;
	margin-bottom: 1.5em;
}

.page.history .historyofbiz {
	background: #F6F6F6;
	padding: 120px calc(50% - 600px) 120px;
}
.page.history .historyofbiz dl {
	background: #FFF;
	padding: 75px;
	overflow: auto;
}
.page.history .historyofbiz dl h2 {
	margin: 0 auto;
}
.page.history .historyofbiz dl dt {
	border-bottom: 4px solid #7BAB81;
	width: 35%;
	float: left;
	padding: 1em 1em;
	box-sizing: border-box;
	font-weight: 500;
	font-size: 18px;
	line-height: 1.4em;
}
.page.history .historyofbiz dl dd {
	border-bottom: 1px solid #7BAB81;
	width: 65%;
	float: left;
	padding: 1em 1em calc(1em + 3px);
	box-sizing: border-box;
	font-size: 18px;
	line-height: 1.4em;
}
.page.history .results {
	padding: 120px calc(50% - 600px) 120px;
}
.page.history .results .map {
	margin-bottom: 8%;
}
.page.history .results .accordion h3 {
	border-top: 1px solid #A8A4A4;
	font-size: 22px;
	line-height: 3.6em;
	margin: 0;
	background: url(../img/acd-arrow-down.svg) center right 2em / 0.7em auto no-repeat;
	cursor: pointer;
}
.page.history .results .accordion h3.Open {
	background: url(../img/acd-arrow-up.svg) center right 2em / 0.7em auto no-repeat;
}
.page.history .results .accordion ul li {
	padding: 4% 0 0 15%;
	overflow: auto;
	position: relative;
}
.page.history .results .accordion ul li:nth-of-type(odd) {
	background: #F7F8F8;
}
.page.history .results .accordion ul li .year {
	font-weight: 800;
	font-size: 20px;
	width: 15%;
	text-align: center;
	padding: 4% 0 0;
	position: absolute;
	top:0;
	left: 0;
}
.page.history .results .accordion ul li .year span {
	font-size: 16px;
	display: block;
}
.page.history .results .accordion ul.photo3 li figure {
	width: 33.3%;
	padding-bottom: 4%;
	float: left;
}
.page.history .results .accordion ul.photo3 li img {
	border-left: 45px solid #D6DBD0;
	border-right: 45px solid #D6DBD0;
	margin: auto;
}
.page.history .results .accordion ul.photo3 li h4 {
	width: 250px;
	margin: 0.5em auto 0;
	font-weight: 800;
	font-size: 18px;
	line-height: 1.4em;
}
.page.history .results .accordion ul.photo3 li p {
	width: 250px;
	margin: auto;
	font-size: 14px;
	line-height: 1.4em;
}

.page.history .results .accordion ul.text4 li {
	padding-left: 19%;
}
.page.history .results .accordion ul.text4 li figure {
	width: 25%;
	border-left: 5px solid #7BAB81;
	padding: 0 0 0 1%;
	margin-bottom: 5%;
	box-sizing: border-box;
	float: left;
}
.page.history .results .accordion ul.text4 li figure h4 {
	font-size: 18px;
	line-height: 1.5em;
	height: 3.5em;
	font-weight: 800;
}
.page.history .results .accordion ul.text4 li p {
	margin: auto;
	font-size: 14px;
	line-height: 1.4em;
}

.page.history .results .accordion ul.text1 li {
	padding: 4% 4% 4% 19%;
}
.page.history .results .accordion ul.text1 li .year {
	padding-top: 4%;
}
.page.history .results .accordion ul.text1 li p {
	font-size: 18px;
	line-height: 2em;
	font-weight: 800;
	display: table-cell;
	vertical-align: middle;
}

.page.history .cont {
	display: none;
}
.page.history .cont.Open {
	display: block;
}


/*お部屋を借りる*/
.page.rent h1::after {
  content: 'RENT';
}
.page.rent .intro {
	background: #D5DACF;
	position: relative;
	box-shadow: 0px 3px 5px rgba(0, 0, 0, .3);
	margin-top: 300px;
	padding: 260px calc(50% - 600px) 90px;
}
.page.rent .intro .main {
	width: 1200px;
	margin: 0 auto 80px;
	position: absolute;
	top: -230px;
	left: 0;
	right: 0;
}
.page.rent .intro .main ul {
	position: absolute;
	top: 28px;
	left: 70px;
	width: 612px;
}
.page.rent .intro .main ul li {
	text-indent:100%;
	white-space: nowrap;
	overflow: hidden;
	margin-bottom: 15px;
}
.page.rent .intro .main ul li:nth-of-type(1) {
	height: 40px;
	background: url(../img/rent-intro-a-room-made.svg) left center / contain no-repeat;
}
.page.rent .intro .main ul li:nth-of-type(2) {
	height: 46px;
	background: url(../img/rent-intro-individual.svg) left center / contain no-repeat;
}
.page.rent .intro h2 {
	margin: 75px auto 30px;
	font-weight: 800;
	font-size: 35px;
	line-height: 1.5em;
	text-align: center;
}
.page.rent .intro p {
	font-size: 18px;
	line-height: 1.9em;
	text-align: center;
}
.page.rent .col-gr {
	background: #F6F6F6;
}
.page.rent .col-gr .todoketai {
	width: 1200px;
	padding: 100px 0;
	margin: auto;
	overflow: auto;
}
.page.rent .col-gr .todoketai img {
	width: 350px;
	float: left;
}
.page.rent .col-gr .todoketai h2 {
	margin: 0 0 28px 440px;
	font-weight: 800;
	font-size: 36px;
	line-height: 2em;
	border-bottom: 1px solid #000;
}
.page.rent .col-gr .todoketai p {
	font-size: 18px;
	line-height: 1.9em;
	margin: 0 0 1em 440px;
}
.page.rent .col-gr .todoketai a {
	display: block;
	color: #FFF;
	font-size: 18px;
	line-height: 3.33em;
	padding: 0 4.3em 0 2.77em;
	margin: 0 0 0 440px;
	background: url(../img/bot-bg_pc.svg) right center / cover no-repeat;
	width: fit-content;
}
.page.rent .col-gr .roomtour {
	margin: 0 0 0 calc(50% - 600px);
	padding: 0 0 100px;
	overflow: auto;
}
.page.rent .col-gr .roomtour .left {
	float:left;
}
.page.rent .col-gr .roomtour h2 {
	font-feature-settings: 'palt';
	font-weight: 800;
	font-size: 35px;
	line-height: 1.5em;
	margin-bottom: 1em;
	padding-bottom: 0.4em;
	border-bottom: 1px solid #A7A3A3;
	width: 440px;
}
.page.rent .col-gr .roomtour p {
	font-size: 18px;
	line-height: 1.9em;
	width: 440px;
}
.page.rent .col-gr .roomtour .tiktok {
	width: calc(100% - 520px);
	max-width: 1000px;
	display: block;
	margin-left: 520px;
}
.page.rent .col-gr .roomtour .tiktok .tiktok-embed {
    max-width:780px;
    min-width:288px;
	margin: 0;
}
.page.rent .tovoice {
	padding: 100px 0 80px;
}
.page.rent .tovoice h2 {
	font-weight: 800;
	font-size: 36px;
	line-height: 1.5em;
	text-align: center;
}
.page.rent .tovoice p {
	font-size: 18px;
	line-height: 1.9em;
	text-align: center;
	margin: 1.5em auto;
}
.page.rent .tovoice .slick a {
	margin: auto;
	width: 96%;
	display: block;
}
.page.rent .linecontact {
	padding: 70px calc(50% - 500px);
	background: url(../img/rent-line-bg.jpg) center / cover no-repeat;
}
.page.rent .linecontact img {
	width: 240px;
	float: left;
}
.page.rent .linecontact h2 {
	margin: 0 0 0.3em 310px;
	font-weight: 800;
	font-size: 36px;
	line-height: 1.5em;
}
.page.rent .linecontact p {
	font-size: 18px;
	line-height: 1.9em;
	margin: 0 0 1em 310px;
}
.page.rent .linecontact a {
	display: block;
	color: #FFF;
	font-size: 18px;
	line-height: 3.33em;
	padding: 0 4.3em 0 2.77em;
	margin: 0 0 0 310px;
	background: url(../img/bot-bg-gn_pc.svg) right center / cover no-repeat;
	width: fit-content;
}
.page.rent .aboutcol {
	padding: 80px calc(50% - 640px);
	background: url(../img/rent-outline-bg.jpg) 50vw center / auto 100% no-repeat;
}
.page.rent .aboutcol dl {
	padding-top: 100px;
	margin-bottom: 1.5em;
	background: url(../img/head-logo.svg) left top / auto 75px no-repeat;
	width: 560px;
	display: flex;
	flex-wrap: wrap;
	font-size: 18px;
	line-height: 3em;
}
.page.rent .aboutcol dl dt {
	width: 5em;
	border-bottom: 3px solid #85A883;
	text-align: center;
}
.page.rent .aboutcol dl dd {
	width: calc(100% - 5em);
	border-bottom: 1px solid #85A883;
	box-sizing: border-box;
	padding: 0 0 0 1em;
}
.page.rent .aboutcol a {
	display: block;
	color: #FFF;
	font-size: 18px;
	line-height: 3.33em;
	padding: 0 4.3em 0 2.77em;
	margin: 0;
	background: url(../img/bot-bg_pc.svg) right center / cover no-repeat;
	width: fit-content;
}



/*ご契約の流れ*/
.page.flow h1::after {
  content: 'FLOW';
}
.page.flow .pageintro {
	margin: 80px auto;
	width: 1100px;
	font-size: 18px;
  line-height: 30px;
}
.page.flow ul {
	counter-reset:item;
	margin: 80px auto;
	width: 1100px;
}
.page.flow ul li {
	position: relative;
	padding-left: 130px;
	margin: 0 0 30px;
}
.page.flow ul li:before {
  counter-increment: item;
  content: counter(item);
  font-weight: bold;
  color: #FFF;
  width: 87px;
  height: 87px;
  font-weight: 800;
  font-size: 22px;
  line-height: 87px;
  text-align: center;
  background: url(../img/flow-no-bg.svg) left center / contain no-repeat;
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  z-index: 2;
}
.page.flow ul li h2 {
	font-weight: 800;
	font-size: 24px;
	line-height: 68px;
	background: url(../img/flow-h2-bg.svg) left bottom / auto 1px no-repeat;
}
.page.flow ul li p {
	margin: 26px 0 0;
	font-size: 18px;
	line-height: 30px;
}
.page.flow .proviso {
	font-size: 18px;
	line-height: 30px;
	width: 1100px;
	margin: 80px auto;
}
.page.flow ul .period {
	background: url(../img/flow-period-line-w52.svg) left top / 52px auto no-repeat;
	width: 52px;
	height: 360px;
	position: absolute;
	left: -50px;
  top: 44px;
  text-indent:100%;
	white-space: nowrap;
	overflow: hidden;
}
.page.flow ul .period.last {
	background: url(../img/flow-period-line-last.svg) left bottom / 52px auto no-repeat;
	height: 275px;
}

.page.voicetop h1::after {
  content: 'VOICE';
}
.page.voicetop .tabs ul {
	text-align: center;
	width: fit-content;
	margin: 60px auto;
	border-left: 1px solid #000;
}
.page.voicetop .tabs ul li {
	display: inline-block;
	border-right: 1px solid #000;
	padding: 0 15px;
}
.page.voicetop .tabs ul li a {
	padding: 0 15px;
	font-size: 20px;
	line-height: 28px;
	color: #000;
	display: block;
	opacity: 1;
}
.page.voicetop .tabs ul li.active a,.page.voicetop .tabs ul li a:hover {
	background: #DCD3C7;
}
.page.voicetop input[type="radio"] {
  position: absolute;
  left: -9999px;
}
.page.voicetop .filters {
  width: fit-content;
  margin: 60px auto;
  border-left: 1px solid #000;
}
.page.voicetop .filters li {
	border-right: 1px solid #000;
	padding: 0 15px;
  display: inline-block;
}
.page.voicetop .filters label {
  cursor: pointer;
  transition: all 0.2s;
  padding: 0 15px;
	font-size: 20px;
	line-height: 28px;
	color: #000;
	display: block;
	opacity: 1;
}
.page.voicetop .filters label:hover {
  background: #DCD3C7;
}
.page.voicetop .volist {
	width: 1100px;
	margin: 60px auto;
}
.page.voicetop .volist ul {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.page.voicetop .volist ul li {
	width: 31%;
	position: relative;
	padding-bottom: 50px;
	margin-bottom: 4.5%;
}
.page.voicetop .volist ul li .imgwrap {
	position: relative;
	border-image: fill 0 linear-gradient(#0003,#000);
}
.page.voicetop .volist ul li .imgwrap::after {
	position: absolute;
	left: 0;
	bottom: 0;
	width: 100%;
	height: 100%;
	background: url(../img/voice-text-bg.svg) center bottom / cover no-repeat;
}
.page.voicetop .volist ul li .num {
	font-weight: 800;
	font-size: 35px;
	line-height: 40px;
	margin: -57px 0 0;
	padding: 5px 15px;
	color: #FFF;
	position: relative;
	z-index: 3;
	background: linear-gradient(to top, rgba(0, 0, 0, 0.5), transparent);
}
.page.voicetop .volist ul li .num::before {
	content: 'Voice.';
	font-size: 20px;
}
.page.voicetop .volist ul li .cat {
	position: absolute;
	top: 0;
	right: 0;
	font-size: 14.25px;
	line-height: 23px;
	color: #FFF;
	background: #79A480;
	padding: 0 10px;
}
.page.voicetop .volist ul li.rfm .cat {
	background: #D79132;
}
.page.voicetop .volist ul li h2 {
	font-size: 16px;
	line-height: 24px;
	margin: 15px 0;
}
.page.voicetop .volist ul li a {
	position: absolute;
	bottom: 0;
	left: 25%;
	display: block;
	width: fit-content;
	font-size: 16px;
	line-height: 50px;
	color: #FFF;
	background: url(../img/bot-bg_pc.svg) right center / cover no-repeat;
	padding: 0 60px 0 30px;
}

/*お客様の声個別*/
.page.voicepost h1::after {
  content: 'VOICE';
}
.page.voicepost .read {
	width: 1200px;
	margin: auto;
	padding: 70px 0;
	text-align: center;
	font-size: 20px;
	line-height: 1.5em;
}
.page.voicepost .cat {
	width: 1200px;
	margin: auto;
	overflow: auto;
}
.page.voicepost .cat span {
	display: block;
	float: right;
	font-size: 18px;
	line-height: 30px;
	color: #FFF;
	background: #79A480;
	padding: 0 10px;
}
.page.voicepost .cat.reform span {
	background: #D79132;
}
.page.voicepost h2 {
	width: 1200px;
	margin: 80px auto 10px;
	font-weight: bold;
	font-size: 36px;
	line-height: 1.2em;
}
.page.voicepost .postmeta {
	width: 1200px;
	margin: auto;
	font-size: 18px;
	line-height: 1.5em;
}
.page.voicepost .qalist {
	width: 1200px;
	margin: 80px auto;
}
.page.voicepost .qalist dt {
	font-weight: bold;
	font-size: 30px;
	line-height: 1.3em;
	border-bottom: 1px solid #A8A4A4;
	padding: 0 0 10px;
}
.page.voicepost .qalist dd {
	font-size: 18px;
	line-height: 30px;
	margin: 30px 0 50px;
}
.page.voicepost .photos {
	background: #E4E3E3;
	padding: 1px 0;
}
.page.voicepost .photos ul {
	width: 1200px;
	margin: 40px auto;
	text-align: center;
}
.page.voicepost .photos ul h3 {
	font-weight: bold;
	font-size: 30px;
	line-height: 1.2em;
	margin-bottom: 10px;
}
.page.voicepost .photos ul li {
	display:  inline-block;
	margin: 0 25px;
	font-size: 14px;
	line-height: 20px;
}
.page.voicepost .photos ul li img {
	height: 350px;
	display: block;
	margin-bottom: 10px;
}
.page.voicepost .pageback {
	width: 1200px;
	margin: 60px auto;
}
.page.voicepost .pageback a {
	display: block;
	width: fit-content;
	font-size: 18px;
	line-height: 60px;
	color: #FFF;
	background: url(../img/backbot-bg_pc.svg) left center / cover no-repeat;
	padding: 0 40px 0 90px;
	margin: auto;
	transform: translate(-10px);
}
.lity-container .lity-close {
position: absolute!important;
right: -10px!important;
top: -35px!important;
}

/*住まいコラムTOP*/
.page.columntop h1::after {
  content: 'COLUMN';
}
.page.columntop .read {
	margin: 80px auto 0;
	border-top: 1px solid #A8A4A4;
	padding: 70px 0;
	font-size: 30px;
	line-height: 1.5em;
	text-align: center;
	width: 1200px;
}
.page.columntop .columnwrap {
	background: #EDEBE6;
}
.page.columntop .category {
	width: 1200px;
	margin: auto;
	padding: 70px 0;
}
.page.columntop .category h2 {
	float: left;
	width: 190px;
	border-right: 1px solid #A8A4A4;
	text-align: center;
	font-weight: bold;
	font-size: 20px;
	line-height: 60px;
	padding-left: 90px;
}
.page.columntop .category .search-box {
	display: flex;
	flex-wrap: wrap;
	margin: 0 90px 0 320px;
}
.page.columntop .category .search-box li {
	width: 33.3%;
	font-size: 18px;
	line-height: 30px;
	font-feature-settings: 'palt';
}
.page.columntop .category .search-box li input[type="checkbox"] {
  position: relative;
  width: 18px;
  height: 18px;
  border: 1px solid #000;
  vertical-align: -5px;
  margin-right: 0.5em;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}
.page.columntop .category .search-box li input[type="checkbox"]:checked:before {
  position: absolute;
  top: 0px;
  left: 4.5px;
  transform: rotate(50deg);
  width: 5px;
  height: 11px;
  border-right: 2px solid #000;
  border-bottom: 2px solid #000;
  content: '';
}
.page.columntop .columnlist {
	width: 1200px;
	margin: auto;
}
.page.columntop .columnlist ul {
	border-top: 1px solid #A8A4A4;
}
.page.columntop .columnlist ul li {
	border-bottom: 1px solid #A8A4A4;
	padding: 70px 0;
	position: relative;
	min-height: 260px;
	transition: all .5s ease-out;
}
.page.columntop .columnlist ul li.is-hide {
  height: 0;
  min-height: 0;
  opacity: 0;
  padding: 0;
  overflow: hidden;
}
.page.columntop .columnlist ul li img {
	float: left;
	display: block;
	width: 400px;
	height: 260px;
	object-fit: cover;
}
.page.columntop .columnlist ul li .cat {
	font-size: 16px;
	line-height: 30px;
	float: right;
	width: 180px;
	border: 1px solid #817556;
	color: #817556;
	text-align: center;
	background: #FFF;
}
.page.columntop .columnlist ul li .date {
	margin-left: 470px;
	font-size: 18px;
	line-height: 32px;
}
.page.columntop .columnlist ul li h2 {
	margin: 20px 0 10px 470px;
	font-weight: bold;
	font-size: 24px;
	line-height: 36px;
}
.page.columntop .columnlist ul li h2 a {
	text-decoration: underline;
}
.page.columntop .columnlist ul li p {
	font-size: 18px;
	line-height: 30px;
	margin-left: 470px;
}
.page.columntop .pagenation {
	padding: 70px 0;
}
.page.columntop .pagenation ul {
	text-align: center;
}
.page.columntop .pagenation ul li {
	display: inline-block;
	width: 40px;
	margin: 0 5px;
}
.page.columntop .pagenation ul li a {
	font-size: 18px;
	line-height: 36px;
	padding-bottom: 4px;
	text-align: center;
	display: block;
	border: 1px solid #666;
}
.page.columntop .pagenation ul li a:hover {
	background: #666;
	color: #FFF;
}

.no-article {
    font-size: 1.2em;
    text-align: center;
    padding: 2em 0px 0px;
}


/*住まいコラム記事*/
.page.columnpost h1::after {
  content: 'COLUMN';
}
.page.columnpost .columnwrap {
	background: #EDEBE6;
	margin-top: 75px;
	padding: 115px calc(50% - 600px) 0;
}
.page.columnpost .cat {
	font-size: 18px;
	line-height: 30px;
	float: right;
	width: 180px;
	border: 1px solid #817556;
	color: #817556;
	text-align: center;
	background: #FFF;
}
.page.columnpost .date {
	font-size: 21px;
	line-height: 32px;
}
.page.columnpost h2 {
	font-weight: bold;
	font-size: 36px;
	line-height: 1.4em;
	margin: 50px 0;
}
.page.columnpost .main {
	margin: 50px 0;
}
.page.columnpost .col {
	padding-top: 180px;
	margin: -180px 0 45px;
	overflow-y: auto;
}
.page.columnpost .col {
	padding-top: 180px;
	margin: -180px 0 45px;
	overflow-y: auto;
}
.page.columnpost .col h3 {
	font-weight: bold;
	font-size: 30px;
	line-height: 1.4em;
	border-bottom: 1px solid #A8A4A4;
	padding-bottom: 20px;
	margin: 0 0 35px;
}
.page.columnpost .main p {
	font-size: 13px;
	line-height: 1.66em;
	margin: 10px 0;
}

.page.columnpost .col p {
	font-size: 18px;
	line-height: 1.66em;
	margin: 30px 0;
}

.page.columnpost .col .check {
	font-size: 18px;
	line-height: 1.66em;
	margin: 1.66em 0 0;
}
.page.columnpost .col .check li {
	display: grid;
	grid-template-columns: 2em auto;
	margin-bottom: 0.5em;
}
.page.columnpost .col .check li::before {
	content: '';
	height: 1.66em;
	background: url(../img/column-check.svg) left 0.13em / 1.4em no-repeat;
}
.page.columnpost .col img {
	width: 540px;
	height: auto;
}
.page.columnpost .col img.fleft {
	float: left;
	margin: 5px 40px 35px 0;
}
.page.columnpost .col img.fright {
	float: right;
	margin: 5px 0 35px 40px;
}
.page.columnpost .jumper {
	border: 1px solid #817556;
	padding: 30px 35px;
	margin: 80px 0;
	color: #817556;
	background: #FFF;
}
.page.columnpost .jumper h3 {
	font-weight: bold;
	font-size: 22px;
	line-height: 1.4em;
	margin: 0 0 15px;
}
.page.columnpost .jumper ul {
	font-size: 18px;
	line-height: 1.66em;
}
.page.columnpost .jumper ul li a {
	text-decoration: underline;
}
.page.columnpost .jumper ul li:before {
	content: '○ ';
}
.page.columnpost .jumper ul li.matome {
	margin-top: 1.66em;
}
.page.columnpost .jumper ul li.matome:before {
	display: none;
}
.page.columnpost #matome.col p {
	margin: 0 0 30px;
}
.page.columnpost #matome.col h4 {
	font-weight: bold;
	font-size: 20px;
	line-height: 1.5em;
}
.page.columnpost .editor {
	border: 1px solid #817556;
	padding: 55px 45px;
	margin: 80px 0 0;
	background: #FFF;
	min-height: 150px;
	position: relative;
}
.page.columnpost .editor h4 {
	font-size: 20px;
	line-height: 2.5em;
	padding: 0 40px;
	position: absolute;
	top: -1.25em;
	left: 35px;
	border-radius: 1.25em;
	color: #FFF;
	background: #817556;
}
.page.columnpost .editor img {
	width: 130px;
	height: 150px;
	object-fit: cover;
	float: left;
}
.page.columnpost .editor .emeta {
	font-weight: bold;
	font-size: 25px;
	line-height: 1em;
	margin: 0 0 0.5em 175px;
}
.page.columnpost .editor p {
	font-size: 18px;
	line-height: 1.6em;
	margin: 0 0 0 175px;
	text-align: justify;
}
.page.columnpost .pagenation {
	padding: 70px 0;
}
.page.columnpost .pagenation ul {
	text-align: center;
}
.page.columnpost .pagenation ul li {
	display: inline-block;
	min-width: 2.22em;
	margin: 0 5px;
	font-size: 18px;
	line-height: 2.22em;
}
.page.columnpost .pagenation ul li a {
	text-align: center;
	display: block;
	border: 1px solid #666;
}
.page.columnpost .pagenation ul li a.back {
	padding: 0 1em;
}
.page.columnpost .pagenation ul li a:hover {
	background: #666;
	color: #FFF;
}

/*旧リクルートページ先輩からのメッセージ修正*/
#lower_wrap #record_about .btn-box.flex {
	flex-wrap: wrap;
}
#lower_wrap #record_about .btn-box.flex .panel-btn {
	width: 33%;
}
#lower_wrap #record_about .btn-box.flex .message-box {
	order: 4;
	padding-top: 20px;
}

/*フッター上CONTACT*/
.footcontact {
	background: #7BAB81;
	padding: 2vw;
}
.footcontact h2 {
	color: #FFF;
	font-weight: 800;
	font-size: 1.85vw;
	line-height: 1.5em;
	text-align: center;
}
.footcontact ul {
	width: 74vw;
	margin: 1vw auto 0;
	display: flex;
	justify-content: space-between;
}
.footcontact ul li a {
	text-align: center;
	color: #FFF;
	display: block;
	width: 23.7vw;
	height: 12vw;
	border: 1px solid #7BAB81;
	border-radius: 1.5vw;
	position: relative;
	box-shadow: 0.3vw 0.3vw 0.6vw rgba(0, 0, 0, 0.3);
}
.footcontact ul li a:hover {
	opacity: 0.7;
}
.footcontact ul li:nth-of-type(1) a:hover {
	opacity: 1;
}
.footcontact ul li a span {
	position: absolute;
	bottom: 1.5vw;
	left: 0;
	right: 0;
	color: #000;
	font-size: 0.93vw;
	line-height: 1.5vw;
	margin: auto;
}
.footcontact ul li:nth-of-type(1) a {
	background: url(../img/bottm-bnr-tel.svg) center / cover;
}
.footcontact ul li:nth-of-type(2) a {
	background: url(../img/bottm-bnr-mail.svg) center / cover;
}
.footcontact ul li:nth-of-type(3) a {
	background: url(../img/bottm-bnr-form.svg) center / cover;
}

#foot {
	font-feature-settings: 'palt';
	box-sizing: border-box;
	min-width: 1200px;
}
.home #foot {
	background: url(../img/bg-w-wall.jpg) center top / 100vw auto;
}
#foot .inner {
	padding: 3vw;
	max-width: 1400px;
	margin: auto;
	position: relative;
	overflow: auto;
}
#foot .inner .fmenu {
	margin: 0 0 0 auto;
	width: 520px;
	display: flex;
}
#foot .inner .left {
	float: left;
}
#foot .inner .left h2 {
	font-weight: 600;
	padding-top: 64px;
	background: url(../img/head-logo.svg) left top / auto 58px no-repeat;
	font-size: 32px;
	line-height: 40px;
	margin: 0 0 0.5vw;
}
#foot .inner .left p {
	font-size: 16px;
	line-height: 24px;
}
#foot .inner .left p a {
	color: #000;
}
#foot a:hover {
	opacity: 0.7;
}
#foot .inner .left p .gmap {
	margin-left: 1em;
	padding-left: 20px;
	background: url(../img/gmap-pin.svg) left center / auto 20px no-repeat;
	text-decoration: underline;
}
#foot .inner .left .sns {
	margin: 15px 0 0;
	width: 115px;
	display: flex;
	justify-content: space-between;
}
#foot .inner .left .sns .line {
	display: block;
	width: 45px;
	height: 45px;
	background: url(../img/sns-line.svg) center / contain no-repeat;
	text-indent:100%;
	white-space: nowrap;
	overflow: hidden;
}
#foot .inner .left .sns .insta {
	display: block;
	width: 45px;
	height: 45px;
	background: url(../img/sns-insta.png) center / contain no-repeat;
	text-indent:100%;
	white-space: nowrap;
	overflow: hidden;
}

#foot .inner .fmenu ul {
	width: 50%;
}
#foot .inner .fmenu ul li a {
	display: block;
	font-size: 16px;
	line-height: 28px;
	color: #000;
}
#foot .inner .fmenu ul li li a {
	font-size: 14px;
	line-height: 24px;
	width: 260px;
}
#foot .inner .fmenu ul li li a:before {
	content:'-　';
}

.copyright {
	font-size: 14px;
	line-height: 60px;
	text-align: center;
	color: #FFF;
	background: #7BAB81;
}

.backtotop {
	position: fixed;
	bottom: 3vw;
	right: 3vw;
	width: 4.5vw;
	height: 4.5vw;
	background: url(../img/backtotop_over.svg) center / contain no-repeat;
}
.backtotop a img {
	transition: all 0.5s;
}
.backtotop a:hover img {
	opacity: 0;
}

#end {}
}


@media screen and (min-width: 768px) and (max-width: 1400px) {

#fixhead {
	min-width: auto;
	height: 7.15vw;
	border-radius: 0.7vw;
}
#fixhead .tagline {
	display: none;
}
.home #fixhead .toplogo, #fixhead .toplogo a {
	width: 21.9vw;
	height: 4.2vw;
	top: 1.4vw;
	left: 1.4vw;
}
#fixhead ul {
	right: 20px;
	width: 58.6vw;
}
#fixhead ul li {
	font-size: 1.14vw;
	line-height: 3.57vw;
	position: relative;
}
#fixhead ul li a.menu__link {
	background: url(../img/head-menu-arrow.svg) right 0.5vw / 1em no-repeat;
}
#fixhead ul li .drop-menu {
  top: 3.57vw;
  width: 16.42vw;
}
#fixhead ul li .drop-menu__link {
  padding: 0.86vw 1.2vw;
}
#fixhead .contact .insta {
	top: 0.7vw;
	right: 0.7vw;
	width: 2.85vw;
	height: 2.85vw;
}
#fixhead .contact .line {
	top: 0.7vw;
	right: 5vw;
	width: 2.85vw;
	height: 2.85vw;
}
#fixhead .contact .form {
	right: 4.5vw;
	right: 8.8vw;
	width: 9.5vw;
	height: 3.57vw;
}
#fixhead .contact .mail {
	right: 14vw;
	right: 18.3vw;
	width: 9.5vw;
	height: 3.57vw;
}
#fixhead .contact .tel {
	right: 23.6vw;
	right: 27.8vw;
	width: 17.14vw;
	height: 3.57vw;
}
#fixhead .contact h2 {
	font-size: 1vw;
	line-height: 3.57vw;
	right: 41.4vw;
	right: 45.2vw;
}

#foot {
	min-width: auto;
}
#foot .inner {
	padding: 3vw;
}
#foot .inner .fmenu {
	width: 37vw;
}
#foot .inner .left h2 {
	padding-top: 4.6vw;
	background: url(../img/head-logo.svg) left top / auto 4.14vw no-repeat;
	font-size: 2.14vw;
	line-height: 2.86vw;
	margin: 0 0 0.5vw;
}
#foot .inner .left p {
	font-size: 1.14vw;
	line-height: 1.71vw;
}
#foot .inner .left p .gmap {
	padding-left: 1.43vw;
	background: url(../img/gmap-pin.svg) left center / auto 1.43vw no-repeat;
}
#foot .inner .left .sns {
	margin: 1vw 0 0;
	width: 8vw;
}
#foot .inner .left .sns .line {
	width: 3.2vw;
	height: 3.2vw;
}
#foot .inner .left .sns .insta {
	width: 3.2vw;
	height: 3.2vw;
}
#foot .inner .fmenu ul li a {
	font-size: 1.14vw;
	line-height: 2vw;
}
#foot .inner .fmenu ul li li a {
	font-size: 1vw;
	line-height: 1.71vw;
	width: 18.6vw;
}

.copyright {
	font-size: 1vw;
	line-height: 4.3vw;
}

#end {}
}

