@charset "UTF-8";

/*英語フォント*/
@font-face {
  font-family: 'TikTok Sans';
  src: url('/zenkankucho/css-font/TikTokSans-Variable.ttf') format('truetype');
  font-weight: 100 900;
  font-style: normal;
  font-display: swap;
}
.english-text {
  font-family: 'TikTok Sans', sans-serif;
}

/*breakpoint*/
@media all and (min-width: 769px) {
	.sp {display: none !important;}
	.pc{display: block !important;}}
@media all and (max-width: 768px) {
	.sp {display: block !important;}
	.pc{display: none !important;}}

/*ALL*/
.accent { color: #0073aa;}
.accent-green {color: #E2EEC5; text-shadow:2px 2px 3px #333;}
.content-text{text-align: justify;}
h1, h2, h3, h4, h5, h6 {font-weight: 500;}
img{width: 100%;}

@media (max-width: 430px){
	.accent-green { 
		text-shadow:
		1px 1px 1px #333;
	}
}


/*zenkankucho*/
.zenkankuchoPage {
  font-size: 16px;
  font-family: 'Zen Kaku Gothic New', sans-serif;
  scroll-behavior: smooth;
}

.inview {
    opacity: 0;
    transform: translate(0, 20px);
    -webkit-transform: translate(0, 20px);
    transition: .5s;
    -webkit-transition: .5s;
}
.jsInview {
	opacity: 1;
	transform: translate(0, 0);
	-webkit-transform: translate(0, 0);
}

/*header*/
div#Contents {
    padding-top: 100px;
}

@media (max-width: 430px){
#Contents {
    padding-top: 62px!important;
}
}

.zenkankucho-header {
  position: fixed;
  top: 0;
  width: 100%;
  height: 100px;
  margin: auto;
  background-color: rgba(240, 240, 240, 0.8);
  background-image: none;
  z-index: 1000;
  padding: 20px 40px;
  box-sizing: border-box;
}

.header-inner {
  display: flex;
  justify-content: space-between;
  align-items: center;
  max-width: 1540px;
  margin: 0 auto;
}

.logo img {
	max-width: 411px;
	width: 100%;
}

.header-buttonarea {
	display: flex;
	align-items: center;
	gap: 10px;
}

.showroom {
	margin-right: 25px;
	font-size: 18px;
	color: #333;
	font-weight: 500;
	white-space: nowrap;
}

/* ボタン共通 */
.btn {
	display: inline-block;
	margin: 0 3px;
	padding: 10px 40px;
	border-radius: 2px;
	color: #fff;
	font-size: 16px;
	transition: opacity 0.3s;
	vertical-align: middle!important;
	white-space: nowrap;
}

.btn:hover {opacity: 0.7;}
.btn.blue {background-color: #1F83C0;}
.btn.brown {background-color: #9E8A5E;}

@media screen and (max-width: 960px) {
	.showroom {
		font-size: 14px;
	}
	.btn {
		padding: 5px 20px;
		font-size: 14px;
	}

}

@media screen and (max-width: 820px) {

.logo img {
	max-width: 380px;
}

}

@media screen and (max-width: 768px) {

	.zenkankucho-header{
		padding: 20px 20px;
	}
	
	.header-inner {
		gap: 10px;
	}

	.header-buttonarea {
		display: flex;
		align-items: center;
		gap: 8px;
	}
  
	.button-group {
		display: flex;
		gap: 6px;
	}

	.showroom {
		margin-left: auto;
		margin-right: 20px;;
	}
	
	.btn {
		padding: 5px 8px;
	}

}

@media screen and (max-width: 430px) {

	.zenkankucho-header{
		height: 62px;
		padding: 10px 20px;
	}
	
	.header-inner {
		align-items: center;
		gap: 10px;
	}

	.header-buttonarea {
		display: flex;
		flex-direction: column;
		align-items: flex-start;
		gap: 8px;
	}
  
	.button-group {
		display: flex;
		gap: 6px;
	}

	.logo img {
		max-width: 192px;
	}

	.showroom {
		margin-left: auto;
		margin-right: 0;
		font-size: 10px;
	}
	
	.btn {
		padding: 5px 8px;
		font-size: 10px;
	}

}









/*mv*/
.mv {
  position: relative;
}

.mv h1 {
  position: relative;
  z-index: 1;
}

.mv h1 img{
	width: 100%;
}

.black-band {
	width: 100%;
	height: 28px;
	background-color: #000;
}

.syohyo{
	text-align: right;
	margin-right: 10px; 
	margin-top: 5px;
	font-size: 14px;
}

@media screen and (max-width: 768px) {
	.syohyo{
		margin-top: 3px;
		font-size: 12px;
	}

}


/*scroll*/

.scroll-indicator {
	position: absolute;
	left: 20px;
	bottom: 0;
	display: flex;
	flex-direction: column;
	align-items: center;
	z-index: 3;
}

.scroll-text {
	writing-mode: vertical-rl;
	font-size: 12px;
	letter-spacing: 3px;
	margin-bottom: 10px;
	color: #fff;
}

.scroll-line {
	margin-left: -3px;
	position: relative;
	width: 1px;
	height: 250px;
	background: #fff;
}

.scroll-dot {
	margin-left: -1px;
	position: absolute;
	top: 20%;
	left: 50%;
	transform: translateX(-40%);
	width: 8px;
	height: 8px;
	background: #fff;
	border-radius: 50%;
	animation: dropDot 3s linear infinite;
}

@keyframes dropDot {
	0% {
		top: 0;
		opacity: 0;
	}
	10% {
		opacity: 1;
	}
	80% {
		opacity: 1;
	}
	100% {
		top: 100%;
		opacity: 0;
	}
	}

@media (max-width: 1400px) {
}

@media (max-width: 1023px) {
  .scroll-text {
    font-size: 10px;
    letter-spacing: 2px;
  }

  .scroll-line {
    height: 200px;
  }

  .scroll-dot {
    width: 6px;
    height: 6px;
  }
}

@media (max-width: 430px) {
.black-band {
	height: 20px;
}
}








/*コンテンツ共通h2見出し*/
.section-title {
	margin-bottom: 40px;
	text-align: center;
}

.section-title h2 {
	letter-spacing: 2px;
}

.section-title .accent {
	color: #0073aa;
}

.section-title .border-line {
	width: 200px;
	height: 5px;
	background-color: #0073aa;
	margin: 20px auto 0.5em auto;
}

.section-title .subtext {
	margin-top: 20px;
	color: #888;
	font-size: 22px;
	font-family: 'TikTok Sans', sans-serif;
}

/* 見出し内の文字サイズ（px指定） */
.heading-large {
	font-size: 40px;
}

.heading-medium {
	font-size: 40px;
}

.heading-small {
	font-size: 24px;
}

@media (max-width: 1024px){
	.heading-large {
		font-size: 24px;
	}
	.heading-medium{
		font-size: 36px;
	}
}

@media (max-width: 820px){
	.section-title .border-line {
		width: 160px;
	}
}

@media (max-width: 768px){
	.heading-large {
		font-size: 24px;
	}
	.heading-medium {
		font-size: 28px;
	}
	.section-title .border-line {
		width: 200px;
        height: 6px;
		margin: 32px auto 0.5em auto;
	}
	.section-title .subtext {
		margin-top: 40px;
		font-size: 24px;
	}

}

@media (max-width: 430px){
	.section-title h2{
		padding-left: 1%;
		padding-right: 1%;
	}
	
	.heading-medium {
		font-size: 20px;
	}
	
	.heading-large{
		font-size: 20px;
	}

	.section-title .border-line {
		width: 100px;
        height: 3px;
		margin: 16px auto 0.5em auto;
	}

	.section-title .subtext {
		margin-top: 16px;
		font-size: 12px;
	}
	
	.heading-small {
		font-size: 14px;
	}
	
	

}


/*about*/
.about{
	width: 100%;
	padding-top: 140px;
	padding-bottom: 100px;
}

.about .section-inner{
	max-width: 1540px;
	width: 100%;
	margin: auto;
	padding: 80px ;
	background: #F2F3F5;
}
.about .section-inner .text-area{
	text-align: center;
}

.lead-text{
	font-size:28px; 
	line-height: 2;
	font-weight: 500;
	font-family: 'Zen Kaku Gothic New', sans-serif;
}

.about .lead-text .accent {
  font-size: 36px;
}

.about .content-text{
	margin-top: 30px;
	font-size: 22px;
	line-height: 2;
	text-align: center;
}

.about .image-area{
	max-width: 1160px;
	width: 100%;
	margin-top: 80px;
	margin-left: auto;
	margin-right: auto;
}

@media (max-width: 820px){
	.about{
	padding-top: 70px;
	padding-bottom: 50px;
	}
	
	.about .section-inner{
	padding: 80px 30px 0;
	}

}

@media (max-width: 768px) {
	.about {
		padding-top: 70px;
	}
	.lead-text {
		font-size: 25px;
		line-height: 2;
	}
	.about .lead-text .accent {
    	font-size: 25px;
	}
	.about .content-text {
		font-size: 22px;
	}
}

@media (max-width: 430px) {

	.about {
		padding-top: 40px;
		padding-bottom: 40px;
	}

	.about .section-inner{
		padding: 30px 20px;
	}
	
	.lead-text {
		font-size: 14px;
		letter-spacing: -1px;
	}
	.about .lead-text .accent {
		font-size: 14px;
	}
	
	.about .content-text {
		margin-top: 20px;
		font-size: 12px;
	}
	
	.about .image-area{
		margin-top: 24px;
	}

}








/*merit*/

.merit {
	max-width: 1540px;
	width: 100%;
	margin-left: auto;
	margin-right: auto;	
	margin-bottom: 160px;
	padding-left: 0px;
	padding-right: 0px;	
	box-sizing: border-box;
}

.merit .section-title{
	margin-bottom: 0;
}

.merit .image-area{
	max-width: 960px;
	width: 100%;
	margin: auto;
	margin-bottom: 60px;
}

.merit-inner{
	padding-top: 80px;
	padding-bottom: 70px;
	padding-left: 20px;
	padding-right: 20px;
	display: flex;
	align-items: flex-start;
	gap: 80px;
	background: linear-gradient(
		to right,
		#ffffff 0%,
		#ffffff 10%,
		#F2F3F5 10%,
		#F2F3F5 100%
	);
}

.merit-inner .swiper{
	display: none;
}

.merit-inner .image-area {
    flex: 0 1 40%;
    max-width: 560px;
    min-width: 0;
    box-sizing: border-box;
}

.merit-inner .image-area .image-wrapper .photo{
    margin-bottom: 8px;
}

.merit-inner .image-area .image-wrapper img {
  width: 100%;
  height: auto;
}

.merit-inner .text-area {
	flex: 1 1 400px;
	min-width: 300px;
	/*max-width: 720px;*/
	box-sizing: border-box;
	padding: 0px 0;
}

.merit-item {
	margin-bottom: 65px;
	max-width: 720px;
	width: 100%;
}

.merit-title {
	display: flex;
	align-items: flex-start;
	font-size: 24px;
	font-weight: 500;
	gap:16px;
}

.merit-title::before {
	content: "";
	display: inline-block;
	width: 8px;
	height: 24px;
	margin-top: 7px;
	background-color: #1F83C0;
	flex-shrink: 0;
}

.merit .content-text {
  margin-top: 10px;
  font-size: 20px;
  color: #666;
  line-height: 1.8;
}

@media (max-width: 1400px){
	.merit-inner .image-area{
		margin: 0;
	}
}

@media (max-width: 1024px){
	.merit-inner{
		gap: 40px;
	}
}

@media (max-width: 820px){
	.merit-inner{
		gap: 20px;
	}
	.merit-title{
		font-size: 20px;
	}
	.merit-item {
    	margin-bottom: 35px;
	}
}

@media (max-width: 768px){

	.merit{
		margin-bottom: 100px;
	}

	.merit-inner{
		padding-top: 40px;
		padding-bottom: 0;
		padding-left: 0px;
		padding-right: 0px;
		flex-direction: column;
		gap: 40px;
		background: #F2F3F5;
	}

	.merit-inner .image-area{
		display: none;
	}
	
	.merit-inner .text-area{
		padding-top: 0;
		padding-left: 40px;
		padding-right: 40px;
	}

	.merit-item{
		margin-bottom: 35px;
	}
	
	/* モバイル用：スライダー表示 */
	.swiper {
	  overflow: hidden;
	  width: 100%;
	}
	.swiper-wrapper {
	  transition-timing-function: linear !important;
	}
	.swiper-slide {
	  width: auto;
	  margin-right: 8px;
	  flex-shrink: 0;
	}

}

@media (max-width: 430px){

	.merit{
		margin-bottom: 40px;
	}
	
	.merit .image-area{
		margin-bottom: 20px;
	}

	.merit-inner .text-area{
		padding-left: 20px;
		padding-right: 20px;
	}

	.swiper-slide {
	  margin-right: 4px;
	}
	
	.merit-title {
		font-size: 15px;
		gap: 8px;
		line-height: 1.6;
	}
	
	.merit .content-text {
		font-size: 12px;
	}
	
	.merit-title::before {
		width: 4px;
		height: 20px;
		margin-top: 2px;
	}

}











/*cta*/
.cta{
	padding: 70px 20px;
	background: -webkit-linear-gradient(#1F83C0 14px, #000000 0);
	background: -o-linear-gradient(#1F83C0 14px, #000000 0);
	background: linear-gradient(#1F83C0 14px, #000000 0);
}

.cta-inner {
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 40px;
	flex-wrap: wrap;
}

.cta-button {
	min-width: 280px;
	max-width: 560px;
	width: 100%;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 50px;
	text-decoration: none;
	color: #ffffff;
	font-size: 24px;
	font-weight: 200;
	border-radius: 3px;
	transition: opacity 0.3s ease;
	position: relative
}
.cta-button:hover {
	opacity: 0.8;
}

.cta-button--blue {
	background-color: #1F83C0;
}

.cta-button--brown {
	background-color: #9E8A5E;
}

.cta-icon {
	width: 63px;
	height: 63px;
	border: 1px solid #ffffff;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	margin-left: 20px;
	font-style: normal;
	position: absolute; right: 30px;
}

@media (max-width: 1320px){
	.cta-button {
		max-width: 40%;
		padding: 40px;
		font-size: 130%;
	}

	.cta-icon {
		width: 50px;
		height: 50px;
	}
}

@media (max-width: 1160px){
	.cta-button {
		max-width: 35%;
		padding: 30px;
	}
}

@media (max-width: 1024px){
	.cta-button {
		max-width: 35%;
		padding: 30px;
		font-size: 110%;
	}
	.cta-icon {
		width: 40px;
		height: 40px;
	}
}

@media (max-width: 768px) {
	.cta {
		padding: 40px 40px 40px;
	}

	.cta-inner {
		flex-direction: column;
	}

	.cta-button {
		min-width: 100%;
		max-width: 400px;
	}
}

@media (max-width: 430px) {

	.cta {
		padding: 40px 20px 40px;
		background: -webkit-linear-gradient(#1F83C0 7px, #000000 0);
		background: -o-linear-gradient(#1F83C0 7px, #000000 0);
		background: linear-gradient(#1F83C0 7px, #000000 0);
	}

	.cta-button {
		padding: 30px;
		font-size: 14px;
	}
	
	.cta-icon {
		width: 36px;
		height: 36px;
		right: 20px;
	}
	
	.cta-inner{
		gap:20px;
	}
	
}




/*modelhouse-nakamozu*/
.modelhouse-nakamozu{
	margin-bottom: 160px;
	padding-top: 100px;
	padding-bottom: 120px;
	background: #F2F3F5;
}

.modelhouse-nakamozu-space{
	height: 20px;
}

.modelhouse-nakamozu .section-inner{
	max-width: 1370px;
	width: 100%;
	margin: auto;
}
.modelhouse-nakamozu .content-text{
	margin: 60px auto;
	font-size: 22px;
	line-height: 2;
	text-align: center;
}

.modelhouse-nakamozu .image-area {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	position: relative;
}

.modal-link::after {
  content: '';
  position: absolute;
  bottom: 0px;
  right: 0px;
  width: 40px;
  height: 40px;
  background-image: url('/_assets/images/zenkankucho/icon01.png');
  background-size: cover;
  background-repeat: no-repeat;
  pointer-events: none;
}

.image-area .modal-link {
  width: calc(50% - 5px);
  box-sizing: border-box;
  position: relative;
  display: inline-block;
}

.image-area .modal-link img {
  width: 100%;
  height: auto;
  display: block;
}

/* モーダル全体のオーバーレイ */
.modal {
  display: none;
  position: fixed;
  z-index: 9999;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  background-color: rgba(0, 0, 0, 0.7);
  justify-content: center;
  align-items: center;
}

/* モーダルが開いたときに表示 */
.modal.open {
  display: flex;
}

/* モーダルコンテンツ */
.modal-content {
  position: relative;
  max-width: 90%;
  max-height: 90%;
  z-index: 10000;
  animation: fadeInScale 0.3s ease-out;
}

@keyframes fadeInScale {
  0% {
    opacity: 0;
    transform: scale(0.9);
  }
  100% {
    opacity: 1;
    transform: scale(1);
  }
}

.modal-img {
  width: 100%;
  height: auto;
  display: block;
  border-radius: 4px;
}

/* 閉じるボタン */
.modal-close {
	position: absolute;
	top: -50px;
    right: -10px;
    font-size: 50px;
	color: #fff;
	cursor: pointer;
	z-index: 10001;
	line-height: 1;
}

.modal-overlay {
	display: none;
	position: fixed;
	z-index: 9999;
	top: 0;
	left: 0;
	width: 100vw;
	height: 100vh;
	background-color: rgba(0, 0, 0, 0.7); 
	justify-content: center;
	align-items: center;
	transition: opacity 0.3s ease;
	opacity: 0;
	pointer-events: none;
}

.modal-overlay.open {
	display: flex;
	opacity: 1;
	pointer-events: auto;
}

@media (max-width: 1380px){
	.modelhouse-nakamozu .image-area{
		padding-left: 20px;
		padding-right: 20px;
	}
}

@media (max-width: 1024px){
	.modelhouse-nakamozu .section-inner{
		padding: 0 20px;
	}
}

@media (max-width: 820px){
	.modelhouse-nakamozu {
    	margin-bottom: 80px;
	}

}

@media (max-width: 768px){
	.modelhouse-nakamozu {
		margin-bottom: 120px;
		padding-bottom: 80px;
		background: #F2F3F5;
	}

	.modelhouse-nakamozu .image-area {
		flex-direction: column;
	}
	
	.image-area .modal-link img {
		width: 100%;
		height: auto;
		display: block;
	}
	
	.image-area .modal-link{
		width: 100%;
	}
}

@media (max-width: 430px){
	.modelhouse-nakamozu{
		padding-top: 60px;
		padding-bottom: 40px;
		margin-bottom: 60px;
	}
	
	.modelhouse-nakamozu .content-text{
		font-size: 13px;
	}
	
	.modelhouse-nakamozu .content-text{
		margin: 40px auto;
	}
	
	.modal-link::after {
		width: 24px;
		height: 24px;
	}

	.modelhouse-nakamozu-space {
    	height: 20px;
	}
	
	.modelhouse .section-title {
		margin-bottom: 40px;
	}
	
	.modelhouse-nakamozu .image-area{
		padding-left: 0px;
		padding-right: 0px;
	}


}







/*modelhouse*/
.modelhouse{
	margin-left: 40px;
    margin-right: 40px;
	padding-bottom: 160px;
}

.modelhouse .section-title{
	margin-bottom: 80px;
}

.modelhouse-list{
	max-width: 1160px;
	width: 100%;
	margin: auto;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;	
	gap: 40px;
}

.modelhouse-list li{
	max-width: 360px;
	width: 100%;
	position: relative;
}

.modelhouse-list .arrow-icon {
	position: absolute;
	bottom: 0;
	right: 0;
	width: 30px;
	height: 30px;
	background-color: #2E2E2E;
	color: #fff;
	border-radius: 50%;
	display: flex;
	justify-content: center;
	align-items: center;
	font-size: 20px;
	font-weight: bold;
	transition: background-color 0.3s;
}

.modelhouse-list a:hover .arrow-icon {
	background-color: #444;
}

.modelhouse-list li {
	position: relative;
}

.modelhouse-list li a {
	position: relative;
	display: block;
/*	padding-right: 40px;*/
}

.modelhouse-list li a:hover {
	opacity: .8;
}

.modelhouse-list li a::after { content:none; }

.modelhouse-list li img{
	margin-bottom: 15px;
}

.modelhouse-title{
	font-size: 18px;
	font-weight: 500;
	display: block;
	width: 100%;
	position: relative;
	padding-right: 40px;
	line-height: 1.6;
}

.modelhouse-title::after{
  content: '';
  position: absolute;
  top: 50%;
  right: 0;
  width: 30px;
  height: 30px;
  background-image: url('/_assets/images/zenkankucho/icon02.png');
  background-size: cover;
  background-repeat: no-repeat;
  transform: translateY(-50%);
  pointer-events: none;
}

.modelhouse-list li a { display:block; position:relative; }

@media (max-width: 1260px){
	.modelhouse-list li{
		max-width: 47%;
	}
	.modelhouse-title {
		font-size: 16px;
	}
	

}

@media (max-width: 1080px){
	.modelhouse-list{
		gap:30px;
	}
}

@media (max-width: 1024px){

	.modelhouse-list{
	    gap: 20px;
	}

}

@media (max-width: 768px){
	.modelhouse {
		padding-bottom: 80px;
	}
	.modelhouse-list{
		padding: 0 40px;
	}
	
	.modelhouse-list li{
		max-width: 100%;
	}
	
}

@media (max-width: 430px){

	.modelhouse {
		padding-bottom: 40px;
		margin-left: 20px;
		margin-right: 20px;
	}

	.modelhouse-list {
		padding: 0 0px;
	}
	
	.modelhouse .section-title {
		margin-bottom: 40px;
	}
	
	.modelhouse-title {
		font-size: 12px;
	}
	
	.modelhouse-list li img {
		margin-bottom: 5px;
	}
	
	.modelhouse-list li a::after {
		width: 18px;
		height: 18px;
	}
	.modelhouse-title::after{
	  width: 20px;
	  height: 20px;
	  }

}






/*build*/
.build{
	margin-bottom: 120px;
	padding-top: 140px;
	padding-bottom: 140px;
	background-image: url("../images/zenkankucho/build-bg.jpg");
	background-repeat: repeat;
	background-size: contain;
}

.build .section-title{
	margin-bottom: 60px;
}

.build .text-area{
	margin-bottom: 120px;
}

.build .content-text{
    margin: 0 auto ;
    font-size: 22px;
    line-height: 1.8;
	text-align: center;
}

.build-block{
	max-width: 1160px;
	width: 100%;
	margin: auto;
	padding-bottom: 100px;
}

.build-block sup{
	font-size: 14px;
}

.build-title{
	line-height: 4;
	margin-bottom: 40px;
}

.build-content{
	display: flex;
	flex-direction: row-reverse;
	gap: 60px;
	align-items: flex-start;
}

.build-content img{
	max-width: 620px;
	width: auto;
}

.build-content .content-text{
	text-align: left;
}

.build-content .modal-link{
	pointer-events: none;
	cursor: default;
}

.build-content .modal-link::after{
	display: none;
}

.build-title-small {
  font-size: 28px;
  font-weight: 500;
  line-height: 1.4;
  color: #333;
}

.build-title-large {
  font-size: 44px;
  line-height: 1.4;
  color: #333;
}

.smalltext {
  font-size: 16px;
  line-height: 1.8!important;
  display: block;
}

.build-spacer{
	height: 24px;
	display: block;
}

.build-button-area {
  text-align: center;
}

.build-button-area .button {
	max-width: 368px;
	width: 100%;
	margin: auto;
	padding: 23px;
	display: inline-block;
	position: relative;
	border: 2px solid #1F83C0;
	border-radius: 3px;
	text-decoration: none;
	background-color: #fff;
	color: #000;
	font-weight: 500;
	font-size: 19px; 
	transition: 0.3s;
}

.build-button-area .button:hover {
	opacity: 0.5;
}

.build-button-area .button-text {
	display: inline-block;
	text-align: center;
}

.build-button-area .button::after {
	content: "";
	position: absolute;
	top: 50%;
	right: 20px;
	transform: translateY(-50%);
	width: 30px;
	height: 30px;
	background-image: url('/_assets/images/zenkankucho/icon03.png');
	background-size: cover;
	background-repeat: no-repeat;
	pointer-events: none;
}

@media (max-width: 1240px){

	.build-block {
		padding: 0px 20px 50px;
	}
}

@media (max-width: 1024px){
	
	.build-content{
		gap:30px;
	}
	
	.build-title {
		line-height: 3;
		margin-bottom: 20px;
	}
	
	.build-content img{
		max-width: 600px;
	}
	
}

@media (max-width: 820px){
	.build-content img{
		max-width: 400px;
	}
	
	.build .content-text{
		font-size: 18px;
	}
	
	.build-title-large {
		font-size: 34px;
	}

}


 @media (max-width: 768px){
	.build{
		padding: 80px 40px 120px;
	}
	.build-title-small {
		font-size: 32px;
	}

	.build-title-large {
		font-size: 40px;
	}
	
	.smalltext {
		font-size: 20px;
	}
	
	.build-content{
		flex-direction: column;
		gap: 40px;
	}
	
	.build-content img{
		max-width: 100%;
		width: auto;
	}
	
	.build-content .modal-link::after{
		bottom: 80px;
		right: 20px;
	}
	
	.build-content .modal-link{
		pointer-events: auto;
		cursor: pointer;
	}		

	.build-block {
		padding-bottom: 80px;
	}
	
	.build-title {
		margin-bottom: 30px;
	}
}

@media (max-width: 430px){
	.build{
		padding: 40px 20px 80px;
		margin-bottom: 60px;
	}
	
	.build-block {
		padding: 0px 0px 40px;
	}

	.build-content {
		gap: 20px;
	}
	
	.build-content .modal-link::after{
		display: block;
		width: 24px;
		height: 24px;
		bottom: 40px;
		right: 0;
		content: '';
		position: absolute;
		background-image: url('/_assets/images/zenkankucho/icon01.png');
		background-size: cover;
		background-repeat: no-repeat;
		pointer-events: none;
	}
	
	.build .section-title {
		margin-bottom: 40px;
	}
	
	.build .content-text {
	    font-size: 14px;
		line-height: 2;
	}
	
	.build-title {
		line-height: 2;
		margin-bottom: 10px;
	}

	.build .text-area {
		margin-bottom: 60px;
	}
	
	.build-title-small {
		font-size: 16px;
	}
	
	.build-title-large {
		font-size: 22px;
	}
	
	.build-block sup {
		font-size: 10px;
	}
	
	.smalltext {
		font-size: 10px;
	}
	
	.build-button-area .button {
		font-size: 12px;
		padding: 15px;
	}
	
	.build-button-area .button::after {
		width: 17px;
		height: 17px;
	}
	
	.build-button-area{
		max-width: 200px;
		margin: auto;
	}



}










/*cmgallery*/

.cmgallery{
	padding-bottom: 140px;
}

.cmgallery .section-title{
	margin-bottom: 60px;
}

.cmgallery .text-area{
	margin-bottom: 45px;
}

.cmgallery .content-text{
    margin: 0 auto ;
    font-size: 22px;
    line-height: 1.8;
	text-align: center;
}

.movieBox a {
	cursor: pointer;
}

.movieBox a:hover {
	opacity: .8!important;
}

.movieBox img{
	margin-bottom: 20px;
}

.movie-caption{
	font-size: 20px;
	font-weight: 500;
	text-align: center;
}

/*YouTube動画設定　上書き*/
.movieWrap {
	margin-top: 0;
}

@media (max-width: 1160px){
	.movieWrap {
		gap: 20px;
		padding: 0 20px;
	}
}


@media (max-width: 768px){

	.cmgallery{
		padding: 0 40px 120px;
	}

	.movieWrap{
		flex-direction: column;
	}

	.movieBox {
		margin: 2rem auto 20px;
	}

}

@media (max-width: 430px){

	.cmgallery {
		padding: 0 0px 60px;
	}

	.cmgallery .section-title {
		margin-bottom: 40px;
	}
	
	.cmgallery .content-text {
		font-size: 13px;
	}
	
	.cmgallery .text-area {
		margin-bottom: 20px;
	}
	
	.movieWrap{
		gap: 0;
	}
	
	.movie-caption {
		font-size: 12px;
	}
	
	.movieBox {
	    margin: 2rem auto 0px;
	}
	
	.movieBox img {
		margin-bottom: 10px;
	}
	
}





/*footer*/
.zenkankucho-footer {
	background-color: rgba(240, 240, 240, 0.8);
	padding: 75px 10%;
	font-size: 14px;
	color: #333;
	position: relative;
	font-family: 'Zen Kaku Gothic New', sans-serif;
	background-image: none;
}

.footer-inner {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	max-width: 1160px;
	width: 100%;
	margin: 0 auto;
	flex-wrap: wrap;
}

.footer-left {
	max-width: 600px;
	text-align: left;
}

.footer-logo {
 	max-width: 400px;
 	margin-bottom: 10px;
}

.note {
 	font-size: 14px;
 	line-height: 1.6;
	text-align: left;
}

.footer-right {
	text-align: right;
}

.showroom-link {
	margin-right: 20px;
	text-align: right;
	display: flex;
	flex-direction: column;
	align-items: flex-end;
	gap: 10px;
	white-space: nowrap;
	font-size: 18px;
}

.btn-group {
	display: flex;
	align-items: center;
	gap: 10px;
}

.btn-area {
	display: flex;
	gap: 10px;
	text-align: center;
}

.footer-btn {
	padding: 10px 40px;
	color: #fff;
	text-decoration: none;
	border-radius: 3px;
	display: inline-block;
	font-size: 16px;
}

.footer-btn.blue {background-color: #1F83C0;}
.footer-btn.brown {background-color: #9E8A5E;}

.page-top {
	position: absolute;
	right: 30px;
	bottom: 0;
	background-color: #1F83C0;
	color: #fff;
	width: 60px;
	height: 175px;
	writing-mode: vertical-rl;
	text-align: center;
	font-size: 15px;
	letter-spacing: 2px;
}

.page-top a{
	color: #fff;
	display: block;
	width: 100%;
	height: 100%;
	padding: 20px 19px;
}

.page-top:hover{
	opacity: .7;
}

footer .copyright{
	margin-top: 80px;
	font-size: 13px;
	color: #000;
	letter-spacing:0;
	text-align: right;
}

@media (max-width: 1240px){
	.zenkankucho-footer {
		padding: 75px 10% 75px 5%;
	}
}
@media (max-width: 1160px){
	.zenkankucho-footer {
		padding: 75px 10% 75px 3%;
	}
	.footer-left {
		max-width: 450px;
		text-align: left;
	}

}

@media (max-width: 1024px){
	.zenkankucho-footer {
		padding: 75px 20px;
	}
	.page-top{
		display: none;
	}
}



@media (max-width: 940px){

	.zenkankucho-footer {
		padding: 40px 20px 20px;
	}
	
	.footer-inner{
		flex-direction: column;
		justify-content: center;
		align-items: center;
	}
	
	.btn-group {
		flex-direction: column;
		margin-bottom: 40px;
	}
	
	.footer-left {
		margin-bottom: 40px;
	}
	
	.footer-btn{
		padding: 10px 40px;
	}
	
	.showroom-link{
		margin-bottom: 20px;
		margin-right: 0;
	}

	footer .copyright{
		text-align: center;
	}


}


@media screen and (max-width: 768px) {
  .footer-inner {
    flex-direction: column;
    align-items: center;
    text-align: center;
  }

  .footer-right {
    text-align: center;
    margin-top: 20px;
  }

  .btn-area {
    justify-content: center;
    flex-wrap: wrap;
  }

  .page-top {
    position: static;
    transform: none;
    margin-top: 20px;
    writing-mode: horizontal-tb;
  }
}

@media (max-width: 430px){
	.footer-btn{
		width: 140px;
		padding: 10px;
	}
	
	.btn-group {
		margin-bottom: 20px;
	}
	
	.footer-logo{
		width: 300px;
	}
	
	footer .copyright{
		margin-top: 40px;
	}
	
	.note{
		font-size: 10px;
	}
	
	.showroom-link{
		font-size: 12px;
		margin-bottom: 10px;		
	}

}

