@charset "UTF-8";
/*
|
|	PC、タブレット、スマホ共通
|
*/
/*.iOs{ color:purple; } iOSだけに適用させる場合の例*/

/*　hoverアニメーション　*/
.ft-card-btn::before{ transition:background-size 1s ease; }
body.inp{ background-image:url('../img/com/inp-bg01.webp');background-position:center center; }
.page-tit,
.wrap-anvs-area,
.rsn-tit,
.rmnt-area .txt03{ font-family: var(--font-mincho); }
.drawer-hamburger{ border: 1px solid #FFF!important;background-color:rgba(0,0,0,.15)!important; }
.drawer-nav{ background-color:#4C351F!important; }
	.drawer-nav .nav-lst{
		padding: calc(3em - .5em) 1em 1em;
		font-size: .9em;
	}
	.drawer-nav .nav-lst li:nth-child(n+2){
		padding: .5em 0;
		border-top:1px solid #FFF;
	}
	.drawer-nav .nav-lst .top{
		margin-bottom: 0;
	}
.inp-hd-area .drawer-hamburger{ color:var(--base-font-col);border: 1px solid var(--base-font-col)!important;background-color:rgba(255,255,255,.5)!important; }
.drawer-hamburger-icon,
.drawer-hamburger-icon:before,
.drawer-hamburger-icon:after{
	height:1px!important;
	background-color:#FFF!important;
}
.inp-hd-area .drawer-hamburger-icon,
.inp-hd-area .drawer-hamburger-icon:before,
.inp-hd-area .drawer-hamburger-icon:after{
	background-color:var(--base-font-col)!important;
}
.drawer-open .drawer-hamburger-icon{ background-color:transparent!important; }

.page-tit{ background-color:rgba(95,78,38, .15); }
.ft-card-btn.card1::before{ background-image:url('../img/com/ft-photo01.webp');background-position:center center;background-repeat: no-repeat; }
.ft-card-btn.card2::before{ background-image:url('../img/com/ft-photo02.webp');background-position:center center;background-repeat: no-repeat; }
.ft-card-btn.card3::before{ background-image:url('../img/com/ft-photo03.webp');background-position:center center;background-repeat: no-repeat; }
.wrap-ft-info{ background-image:url('../img/com/ft-bg01.webp');background-position:center center;background-repeat: repeat-x; }
.wrap-anvs-area{ background-image:url('../img/top/tp-bg01.webp');background-position:top center; }
.anvs-nav-btn.card1::before{ background-image:url('../img/top/tp-10th-photo01.webp');background-position:center center;background-repeat: no-repeat; }
.anvs-nav-btn.card2::before{ background-image:url('../img/top/tp-10th-photo02.webp');background-position:center center;background-repeat: no-repeat; }
.anvs-nav-btn.card3::before{ background-image:url('../img/top/tp-10th-photo03.webp');background-position:center center;background-repeat: no-repeat; }
.anvs-nav-btn.card4::before{ background-image:url('../img/top/tp-10th-photo04.webp');background-position:center center;background-repeat: no-repeat; }
.anvs-nav-btn.card5::before{ background-image:url('../img/top/tp-10th-photo05.webp');background-position:center center;background-repeat: no-repeat; }
.anvs-nav-btn.card5::before{ background-image:url('../img/top/tp-10th-photo05.webp');background-position:center center;background-repeat: no-repeat; }
.wrap-kttk-area{ background-image:url('../img/top/tp-bg01.webp');background-position:top center; }
.wrap-kttk-hd{ background-image:url('../img/top/tp-int01.webp');background-position:center center;background-repeat: no-repeat; }
.cp-area-hd{ background-image:url('../img/au/au-photo02.webp');background-position:top center;background-repeat: no-repeat; }
.ytim-area-hd{ background-image:url('../img/typ/typ-photo03.webp');background-position:top center;background-repeat: no-repeat; }
.ha3p-area-hd{ background-image:url('../img/cs/cs-photo02.webp');background-position:top center;background-repeat: no-repeat; }
.acss-area-hd{ background-image:url('../img/cs/cs-photo06.webp');background-position:top center;background-repeat: no-repeat; }
.pcimt-area-hd{ background-image:url('../img/cs/cs-photo09.webp');background-position:top center;background-repeat: no-repeat; }
.wwhp-area-hd{ background-image:url('../img/ps/ps-photo02.webp');background-position:top center;background-repeat: no-repeat; }
.atal-area-hd{ background-image:url('../img/ps/ps-photo06.webp');background-position:top center;background-repeat: no-repeat; }
.wrap-intk-area-hd{ background-image:url('../img/ps/ps-photo10.webp');background-position:top center;background-repeat: no-repeat; }

@media print, screen and (min-width: 960px) {
	body{ font-size: 1.2em; }
	/*
	|
	|　ヘッダー
	|
	*/
	.inp-hd-tit{
		padding: 40px 0 35px;
		text-align: center;
	}
	.page-tit{
		text-align: center;
		line-height: 1.3;
		padding: 60px 0 40px;
	}
	.page-tit .ja{
		display: block;
		font-size: 1.6em;
	}
	.page-tit .en{
		font-weight: normal;
		font-size: 0.9em;
	}

	/*
	|
	|　フッター
	|
	*/
	.ft-card-lst{
		display: flex;
		justify-content: space-between;
	}
	.ft-card-lst li{
		min-width: 33.25%;
		height: 450px;
	}
	.ft-card-btn,
	.anvs-nav-btn{
		display: block;
		position: relative;
		width: 100%;
		height: 100%;
		text-align: center;
		overflow: hidden;
	}
	.ft-card-btn::before,
	.anvs-nav-btn::before{
		content: '';
		position: absolute;
		inset: 0;
	}
	.ft-card-tit{
		position: absolute;
		left: 50%;
		top: 50%;
		transform: translate(-50%, -50%);
	}
	.ft-card-tit .ja{
		display: block;
		white-space: nowrap;
	}
	.ft-card-tit .en{
		white-space: nowrap;
		font-size: 1.6em;
		font-weight: bold;
	}
	.ft-info{
		position: relative;
		max-width: 1750px;
		height: 635px;
		margin: auto;
	}
	.ft-info .cmp-data{
		position: absolute;
		top: 110px;
		left: 0;
	}
	.cmp-data p{ margin: 35px 0 0 0; }
	.nav-area{
		position: absolute;
		top: 120px;
		left: 555px;
	}
	.nav-lst .top{
		margin: 0 0 40px 0;
	}
	.nav-lst .en{
		margin: 0 0 0 20px;
		font-size: .8em;
		letter-spacing: -.5px;
		opacity: .4;
	}
	.ft-logo{
		position: absolute;
		top: 110px;
		right: 0px;
	}
	.tel-data{
		position: absolute;
		bottom: 60px;
		right: 0px;
	}
	.tel-line{
		font-weight: bold;
		font-size: 2.2em;
	}
	.cpy{
		max-width: 1750px;
		margin: auto;
		padding: 20px 0;
		text-align: right;
		font-size: .8em;
		letter-spacing: -.5px;
	}

	/*
	|
	|　ナビゲーション
	|
	*/
	.hd-nav-area{
		position: relative;
		z-index: 9999;
	}
	.drawer-hamburger{
		top: auto!important;
		width: 3rem!important;
		margin: 2rem 0 0 2rem;
		padding-top: .5rem!important;
	}
	.drawer-hamburger-txt{
		position: relative;
		top: -.25rem;
		font-size: 1.3em;
	}

	/*
	|
	|　トップ
	|
	*/
	.hd-area{
		position: relative;
	}
	.hd-area-float{
		position: absolute;
		inset: 0;
		margin: auto;
		width: 88%;
		height: 100%;
		z-index: 1;
	}
	.tp-logo{
		position: absolute;
		inset: 0;
		margin: auto;
	}
	.tp-hd-txt01{
		position: absolute;
		top: 30px;
		right: -40px;
	}
	.tp-hd-txt02{
		position: absolute;
		bottom: -30px;
		right: -70px;
	}
	.tp-slider img{
		width: 100%;
		height: 860px;
		object-fit: cover;
	}
	.wrap-anvs-area{
		padding: 0 0 80px 0;
	}
	.anvs-hd{
		padding: 35px 0 15px;
		text-align: center;
	}
	.anvs-hd h2{
		font-size: 1.8em;
		font-weight: normal;		
	}
	.anvs-bdy{
		width: 1290px;
		margin: auto;
		padding: 75px 0 90px;
		writing-mode: vertical-rl;
	}
	.tp-10th-logo{ margin: 60px 0 0 0; }
	.anvs-bdy .txt01{
		margin: 0 50px 0 0;
		font-size: 1.5em;
		font-weight: bold;
	}
	.anvs-bdy .txt02{
		margin: 0 100px 0 0;
		font-size: 1.3em;
		font-weight: bold;
	}
	.anvs-bdy .txt03{
		margin: 0 130px 0 0;
	}
	.anvs-bdy .txt03 p:nth-child(n+2){
		margin: 0 40px 0 0;
	}
	.anvs-nav-lst{
		display: flex;
		justify-content: space-between;
		column-gap: 2px;
		font-family: var(--base-font);
	}
	.anvs-nav-lst li{
		min-width: calc(20%);
		height: 450px;
	}
	.anvs-nav-btn-tit{
		position: absolute;
		left: 20px;
		bottom: 20px;
		text-align: left;
		line-height: 1;
	}
	.anvs-nav-btn-tit .ja{
		display: block;
		font-size: 1.2em;
		font-weight: bold;
	}
	.anvs-nav-btn-tit .en{
		font-size: .8em;
	}
	.rsn-area{
		padding: 140px 0 320px;
	}
	.rsn-tit{
		text-align: center;
	}
	.rsn-tit .txt01{
		display: block;
		font-size: 1.2em;
	}
	.rsn-tit .txt02{
		font-size: 1.8em;
	}
	.rsn-area-a{
		position: relative;
		width: 1450px;
		height: 1565px;
		margin: 145px auto 0;
	}
	.tp-3hs01{
		position: absolute;
		right: -225px;
	}
	.rsn-area-a .box{
		width: 550px;
	}
	.rsn-area-a .box h3{
		font-size: 1.2em;
	}
	.rsn-area-a p{
		margin: 10px 0 0 0;
	}
	.rsn-area-a .txt03{
		position: absolute;
		top: 85px;
		left: 0;
	}
	.rsn-area-a .txt04{
		position: absolute;
		top: 480px;
		left: 0;
	}
	.tp-3hs02{
		position: absolute;
		left: 110px;
		bottom: 0;
	}
	.rsn-area-a .txt05{
		position: absolute;
		top: 1115px;
		left: 715px;
	}
	.wrap-kttk-area{
		padding: 0 0 160px 0;
	}
	.wrap-kttk-hd{
		background-size: cover;
	}
	.kttk-hd{
		position: relative;
		max-width: 1685px;
		min-height: 980px;
		margin: auto;
	}
	.tp-int-txt01{
		position: absolute;
		top: 20px;
		left: 120px;
	}
	.kttk-hd .txt02{
		position: absolute;
		left: 0;
		bottom: 40px;
	}
	.kttk-hd .txt02 h3{
		margin: 0 0 10px 0;
		font-size: 1.3em;
	}
	.btn-more{
		position: absolute;
		background-color: #FFF;
		border-radius: 5px;
		padding: 12px 20px 12px 60px;
	}
	.btn-more::after{
		content: '>';
		margin: 0 0 0 30px;
		font-size: .8em;
	}
	.kttk-hd .btn-more{
		right: 0;
		bottom: 40px;
	}
	.btn-more::before {
		content: "";
		position: absolute;
		top: 2px;
		left: 2px;
		right: 2px;
		bottom: 2px;
		border: 1px solid #5f4e0f;
		border-radius: 5px;
		pointer-events: none; /* おすすめ */
	}
	.rmnt-area{
		position: relative;
		width: 1470px;
		height: 945px;
		margin: 65px auto 0;
	}
	.tp-int02{
		position: absolute;
		top: 0;
		left: 0;
	}
	.rmnt-area .txt03{
		position: absolute;
		top: 325px;
		left: 795px;
		font-size: 2.6em;
		font-weight: bold;
	}
	.rmnt-area .txt04{
		position: absolute;
		top: 655px;
		left: 795px;
		width: 560px;
	}
	.rmnt-area .txt04 strong{
		display: block;
		font-size: 1.3em;
	}
	.rmnt-area .btn-more{
		left: 1180px;
		bottom: 20px;
	}
	.wrap-wpwn-area{
		padding: 260px 0 240px;
	}
	.wpwn-area-tit{
		margin: 0 0 200px 0;
		line-height: 1.2;
		text-align: center;
	}
	.wpwn-area-tit .ja{
		display: block;
		font-size: 1.4em;
	}
	.wpwn-area-tit .en{
		font-weight: normal;
		font-size: .7em;
	}
	.wpwn-area-com{
		width: 680px;
		margin: 110px auto auto;
	}
	.wpwn-area-com .tit{
		font-size: 1.3em;
	}
	.tp-nin-photo01{
		display: block;
		margin: 210px auto 0;
	}
	/*
	|
	|　会社情報
	|
	*/
	.wrap-omi-area{
		padding: 85px 0 170px;
		text-align: center;
	}
	.wrap-omi-area .txt01{
		font-weight: bold;
		font-size: 1.3em;
	}
	.wrap-omi-area .txt02{
		margin: 90px 0 0;
	}
	.wrap-omi-area .txt02 p:nth-child(n+2){ margin-top:40px }
	.au-photo01{ margin:160px auto auto; }
	.wrap-mfp-area{
		padding: 0 0 210px 0;
	}
	.mfp-area{
		position: relative;
		width: 1315px;
		height: 905px;
		margin: auto;
	}
	.mfp-area .txt01{
		position: absolute;
		left: 0;
		top: 170px;
		font-size: 1.3em;
	}
	.mfp-area .txt02{
		position: absolute;
		left: 530px;
		top: 0px;
		width: 780px;
	}
	.mfp-area .txt02 p:nth-child(n+2){ margin-top:40px; }
	.mfp-mess{
		margin: 0 0 80px 0;
		line-height: 1.4;
		padding: 0 0 0 40px;
	}
	.mfp-mess .ja{
		display: block;
		font-weight: bold;
		font-size: 2em;
	}
	.mfp-area .txt03{
		position: absolute;
		right: 0px;
		bottom: 0px;
		text-align: center;
	}
	.au-text-sign{
		margin: 10px 0 0 20px;
		vertical-align: middle;
	}
	.wrap-cp-area{

	}
	.cp-area-hd{
		height: 970px;
		background-size: cover;
	}
	.cp-area-tit{
		margin: 165px 0 0 0;
	}
	.cp-area-tit{
		line-height: 1;
		text-align: center;
	}
	.cp-area-tit .ja{
		display: block;
		font-weight: bold;
		font-size: 1.4em;
	}
	.cp-area-tit .en{
		font-weight: normal;
		font-size: .7em;
	}
	.cp-lst{
		width: 1350px;
		margin: 95px auto 0;
		border-top: 1px solid var(--border-col01);
		font-size: 1.2em;
	}
	.cp-lst li{
		display: flex;
		border-bottom: 1px solid var(--border-col01);
		padding: 40px 0;
	}
	.cp-lst-tit{
		width: 230px;
	}
	.cp-lst-bdy{
		width: 1120px;
	}
	.wrap-gmap-area{
		width: 1340px;
		height: 725px;
		margin: 145px auto 0;
		padding: 0 0 230px 0;
	}
	.wrap-gmap-area iframe{
		width: 100%;
		height: 100%;
	}
	/*
	|
	|　サイトポリシー
	|
	*/
	.wrap-pcy-area{
		padding: 0 0 265px;
	}
	.pcy-hd{
		display: grid;
		gap: 35px;
		margin: 70px 0 0;
		padding: 80px 0 135px;
		text-align: center;
	}
	.pcy-lst{
		width: 1350px;
		margin: auto;
		border-bottom: 1px solid var(--border-col01);
	}
	.pcy-lst li{
		padding: 55px 0;
		border-top: 1px solid var(--border-col01);
	}
	.pcy-lst-tit{
		font-size: 1.7em;
	}
	.pcy-lst-bdy{
		display: grid;
		gap: 35px;
		padding: 30px 0 0 45px;
	}
	.pcy-lst-bdy strong{
		display: block;
		font-size: 1.2em;
	}
	/*
	|
	|　10th Anniversary
	|
	*/
	.wrap-ab10-area{
		padding: 165px 0;
	}
	.ab10-area-tit{
		text-align: center;
		font-size: 1.3em;
	}
	.ab10-area .txt01{
		display: grid;
		row-gap: 40px;
		margin: 90px 0 0;
		text-align: center;
	}
	.typ-photo01{
		display: block;
		margin: 100px auto 0;
	}
	.ab10-area .txt02{
		position: relative;
		width: 1315px;
		height: 645px;
		margin: 170px auto 0;
	}
	.ab10-area .txt02 strong{
		font-size: 1.2em;
	}
	.ab10-area .txt02 .pos02{
		display: grid;
		row-gap: 40px;
		position: absolute;
		left: 0;
		top: 115px;
	}
	.ab10-area .txt02 .pos03{
		position: absolute;
		right: 0;
		bottom: 0;
	}
	.wrap-ytim-area{
		margin: 250px 0 0;
		padding: 0 0 165px;
	}
	.ytim-area-hd{
		height: 970px;
		background-size: cover;
	}
	.ytim-area-tit{
		margin: 165px 0 0;
		text-align: center;
		line-height: 1.4;
	}
	.ytim-area-tit .ja{
		display: block;
		font-size: 1.8em;
	}
	.ytim-area-tit .en{
		font-weight: normal;
		font-size: .9em;
	}
	.ytim-lst{
		width: 1350px;
		margin: 100px auto 0;
		border-top: 1px solid var(--border-col01);
	}
	.ytim-lst > li{
		padding: 50px 0 100px;
		border-bottom: 1px solid var(--border-col01);
	}
	.ytim-lst-tit{
		margin: 0 0 0 10px;
		font-weight: bold;
		font-size: 1.4em;
	}
	.ytim-lst-tline{
		width: 1220px;
		margin: auto;
	}
	.ytim-lst-tline > li{
		display: flex;
		column-gap: 60px;
		margin: 45px 0 0 0;
	}
	.ytim-lst-tline-date{
		width: 131px;
		text-align: right;
		white-space: nowrap;
	}
	.ytim-lst-tline-bdy{
		display: grid;
		row-gap: 15px;
		column-gap: 1rem;
	}
	.ytim-lst-tline-photo{
		display: flex;
		gap: 5px;
	}
	.wrap-apff-area{
		padding: 155px 0 235px;
	}
	.apff-area-tit{
		text-align: center;
	}
	.apff-area-tit .ja{
		display: block;
		line-height: 1.4em;
		font-size: 1.8em;
	}
	.apff-area-tit .en{
		font-weight: normal;
		font-size: .9em;
	}
	.apff-area{
		position: relative;
		width: 1315px;
		height: 520px;
		margin: 100px auto 0;
	}
	.apff-area .txt01{
		position: absolute;
		top: 0;
		left: 0;
		font-size: 1.2em;
	}
	.typ-photo15{
		position: absolute;
		right: 0;
		bottom: 0;
	}
	.apff-area .txt02{
		display: grid;
		row-gap: 40px;
		position: absolute;
		left: 0;
		top: 95px;
	}
	/*
	|
	|　建築請負について
	|
	*/
	.wrap-ksak-area{
		padding: 85px 0 225px;
	}
	.ksak-area{
		text-align: center;
	}
	.ksak-area .txt01{
		font-size: 1.3em;
	}
	.ksak-area .txt02{
		display: grid;
		row-gap: 40px;
		margin: 80px 0 0;
	}
	.cs-photo01{
		margin: 90px 0 0;
	}
	.wrap-ha3p-area{
		padding: 0 0 210px;
	}
	.ha3p-area-hd{
		height: 970px;
		background-size: cover;
	}
	.ha3p-area-tit{
		margin: 170px 0 0;
		text-align: center;
	}
	.ha3p-area-tit .ja{
		display: block;
		line-height: 1.4em;
		font-size: 1.8em;
	}
	.ha3p-area-tit .en{
		font-weight: normal;
		font-size: .9em;
	}
	.ha3p-area-a{
		position: relative;
		width: 1160px;
		height: 578px;
		margin: 180px auto 0;
	}
	.ha3p-area-a .pos01{
		position: absolute;
		top: 15px;
		left: 0;
		font-size: 1.3em;
	}
	.ha3p-area-a .pos01 .before{
		display: block;
	}
	.ha3p-area-a .pos01 .after{
		margin: 0 0 0 120px;
	}
	.ha3p-area-a .pos02{
		position: absolute;
		top: 145px;
	}
	.cs-photo03{
		position: absolute;
		right: 0;
		bottom: 0;
	}
	.ha3p-area-b{
		width: 615px;
		margin: 210px auto 0;
	}
	.ha3p-area-b .pos01{
		font-size: 1.3em;
		white-space: nowrap;
	}
	.ha3p-area-b .pos02{
		display: grid;
		row-gap: 40px;
		margin: 45px 0 0 30px;
	}
	.cs-photo04{
		display: block;
		margin: 180px auto 0;
	}
	.ha3p-area-c{
		position: relative;
		width: 1070px;
		height: 380px;
		margin: 185px auto 0;
	}
	.ha3p-area-c .pos01{
		position: absolute;
		top: 0;
		right: 0;
		font-size: 1.3em;
		white-space: nowrap;
	}
	.cs-photo05{
		position: absolute;
		bottom: 0;
		left: 0;
	}
	.ha3p-area-c .pos02{
		display: grid;
		row-gap: 40px;
		position: absolute;
		top: 75px;
		left: 595px;
	}
	.wrap-acss-area{
		padding: 0 0 210px;
	}
	.acss-area-hd{
		height: 970px;
		background-size: cover;
	}
	.acss-area-a{
		position: relative;
		width: 1380px;
		height: 1000px;
		margin: 110px auto 0;
	}
	.acss-area-a-lst{
		display: grid;
		row-gap: 90px;
	}
	.acss-area-a-lst-tit{
		font-size: 1.3em;
	}
	.cs-photo07{
		position: absolute;
		right: -220px;
		top: 80px;
	}
	.cs-photo08{
		position: absolute;
		right: -270px;
		bottom: 0;
	}
	.wrap-pcimt-area{
		padding: 0 0 215px;
	}
	.pcimt-area-hd{
		height: 638px;
		background-size: cover;
	}
	.pcimt-area-a{
		position: relative;
		width: 1255px;
		height: 555px;
		margin: 100px auto 0;
	}
	.cs-photo10{
		position: absolute;
		left: 0;
		bottom: 0;
	}
	.pcimt-area-a .txt01{
		position: absolute;
		top: 0;
		right: 0;
	}
	/*
	|
	|　左官業について・素材へのこだわり
	|
	*/
	.wrap-ps-hd{
		padding: 85px 0 190px;
	}
	.ps-hd{
		text-align: center;
	}
	.ps-hd .txt01{
		font-size: 1.3em;
	}
	.ps-hd .txt02{
		display: grid;
		row-gap: 40px;
		margin: 80px 0 0;
	}
	.ps-photo01{
		margin: 90px 0 0;
	}
	.wwhp-area-hd{
		height: 749px;
		background-size: cover;
	}
	.wrap-wwhp-area{
		padding: 0 0 180px;
	}
	.wwhp-area-a{
		padding: 210px 0 0;
		text-align: center;
	}
	.wwhp-area-a-tit .ja{
		display: block;
		line-height: 1.4em;
		font-size: 1.8em;
	}
	.wwhp-area-a-tit .en{
		font-weight: normal;
		font-size: .9em;
	}
	.wwhp-area-a .txt01{
		display: grid;
		row-gap: 40px;
		margin: 70px 0 0;
	}
	.wwhp-area-b{
		position: relative;
		width: 1220px;
		height: 635px;
		margin: 205px auto 0;
	}
	.wwhp-area-b-tit{
		font-size: 1.3em;
	}
	.ps-photo03{
		position: absolute;
		top: 0;
		right: -355px;
	}
	.wwhp-area-b .txt01{
		position: absolute;
		top: 75px;
		left: 40px;
	}
	.wwhp-area-c{
		position: relative;
		width: 1200px;
		height: 490px;
		margin: 145px auto 0;
	}
	.wwhp-area-c-tit{
		position: absolute;
		left: 580px;
		font-size: 1.3em;
	}
	.ps-photo04{
		position: absolute;
		top: 0;
		left: 0;
	}
	.wwhp-area-c .txt01{
		position: absolute;
		left: 620px;
		top: 75px;
	}
	.ps-photo05{
		position: absolute;
		right: -270px;
		bottom: 0;
	}
	.wrap-atal-area{
		padding: 0 0 250px;
	}
	.atal-area-hd{
		height: 966px;
		background-size: cover;
	}
	.atal-area-a{
		padding: 195px 0 0;
		text-align: center;
	}
	.atal-area-a-tit .ja{
		display: block;
		line-height: 1.4em;
		font-size: 1.8em;
	}
	.atal-area-a-tit .en{
		font-weight: normal;
		font-size: .9em;
	}
	.atal-area-a .txt01{
		display: grid;
		row-gap: 40px;
		margin: 70px 0 0;
	}
	.atal-area-b{
		position: relative;
		width: 1440px;
		height: 795px;
		margin: 130px auto 0;
	}
	.atal-area-b-tit{
		position: absolute;
		left: 58%;
		top: 130px;
		font-size: 1.3em;
	}
	.atal-area-b .txt01{
		display: grid;
		row-gap: 40px;
		position: absolute;
		left: 60%;
		top: 200px;
		white-space: nowrap;
	}
	.ps-photo07{
		position: absolute;
		top: 0;
		left: -235px;
	}
	.atal-area-c{
		position: relative;
		width: 1270px;
		height: 470px;
		margin: -120px auto 0;
	}
	.atal-area-c-tit{
		position: absolute;
		top: 240px;
		left: 0;
		font-size: 1.3em;
	}
	.ps-photo08{
		position: absolute;
		top: 0;
		right: -200px;
	}
	.atal-area-c .txt01{
		display: grid;
		row-gap: 40px;
		position: absolute;
		top: 300px;
		left: 30px;
	}
	.wrap-eoca-area{
		padding: 170px 0 225px;
	}
	.atal-eoca-a{
		text-align: center;
	}
	.atal-eoca-a .txt01{
		margin: 85px 0 0;
	}
	.wwhp-eoca-a-tit .ja{
		display: block;
		line-height: 1.4em;
		font-size: 1.8em;
	}
	.wwhp-eoca-a-tit .en{
		font-weight: normal;
		font-size: .9em;
	}
	.atal-eoca-b{
		position: relative;
		width: 1280px;
		height: 680px;
		margin: 100px auto 0;
	}
	.ps-photo09{
		position: absolute;
		top: 0;
		right: -320px;
	}
	.atal-eoca-b-lst{
		display: grid;
		row-gap: 70px;
		position: absolute;
		top: 50px;
		left: 0;
	}
	.atal-eoca-b-lst h4{
		font-size: 1.3em;
	}
	.atal-eoca-c{
		position: relative;
		width: 1390px;
		height: 540px;
		margin: 150px auto 0;
	}
	.atal-eoca-c .txt01{
		position: absolute;
		top: 50px;
		left: 0;
	}
	.atal-eoca-c .txt01 p{
		margin: 15px 0 0;
	}
	.atal-eoca-c-tit{
		font-size: 1.3em;
	}
	.ps-pic01{
		position: absolute;
		top: 0;
		right: 0;
	}
	.wrap-intk-area-hd{
		background-size: cover;
	}
	.intk-area-hd{
		position: relative;
		width: 1695px;
		height: 980px;
		margin: auto;
	}
	.ps-txt01{
		position: absolute;
		top: 30px;
		left: 150px;
	}
	.intk-area-hd .txt01{
		position: absolute;
		left: 0;
		bottom: 45px;
	}
	.intk-area-hd .txt01 h4{
		font-size: 1.3em;
	}
	.intk-area-hd .txt01 p{
		margin: 20px 0 0;
	}
	.intk-area-hd .pos01{
		position: absolute;
		right: 0;
		bottom: 45px;
	}
	.intk-area-a{
		position: relative;
		width: 1375px;
		height: 943px;
		margin: 70px auto 155px;
	}
	.ps-photo11{
		position: absolute;
		left: 0;
		top: 0;
	}
	.intk-area-a-tit{
		position: absolute;
		top: 330px;
		left: 800px;
		font-family: var(--font-mincho);
		font-size: 2.6em;
	}
	.intk-area-a .txt01{
		position: absolute;
		left: 800px;
		bottom: 110px;
	}
	.intk-area-a .txt01 h4{
		font-size: 1.3em;
	}
	.intk-area-a .txt01 p{
		margin: 15px 0 0;
	}
	.intk-area-a .pos01{
		position: absolute;
		right: 0;
		bottom: 0;
	}
}

/*
|
|	タブレット、スマホ
|
*/
@media print, screen and (max-width: 959px) {
	/*
	|
	|　各ページ共通
	|
	*/
	img{ width:100%;height:auto }
	main br{ display:none; }
	.drawer-hamburger{
		margin: 10px 0 0 10px;
		padding: 10px 10px 20px!important;
	}
	.ft-card-lst{
	}
	.ft-card-lst li{
		height: 6rem;
		margin: 0 0 2px 0;
	}
	.ft-card-btn,
	.anvs-nav-btn{
		display: block;
		position: relative;
		width: 100%;
		height: 100%;
		text-align: center;
		overflow: hidden;
	}
	.ft-card-btn::before,
	.anvs-nav-btn::before{
		content: '';
		position: absolute;
		inset: 0;
	}
	.ft-card-btn.card1:before{
		background-position: center bottom;
	}
	.ft-card-tit{
		position: absolute;
		left: 50%;
		top: 50%;
		transform: translate(-50%, -50%);
		line-height: 1.2;
	}
	.ft-card-tit .ja{
		display: block;
		white-space: nowrap;
	}
	.ft-card-tit .en{
		white-space: nowrap;
		font-size: 1em;
		font-weight: bold;
	}
	.wrap-ft-info{
		position: relative;
		padding: 2rem 0;
	}
	.cmp-data,
	.tel-data{
		font-size: .9rem;
		line-height: 1.2;
	}
	.cmp-data p,
	.tel-data{
		margin: 1rem auto 0;
		text-align: center;
	}
	.ft-cmp-logo{
		display: block;
		width: 55vw;
		margin: auto;
	}
	.ft-logo{
		position: absolute;
		width: 4rem;
		height: auto;
		right: 1rem;
		top: 1rem;
	}
	.wrap-cpy{
		padding: 1rem 0;
		text-align: center;
		font-size: .9rem;
	}
	.inp-hd-tit{
		padding: 2rem 0;
	}
	.inp-cmp-logo{
		display: block;
		width: 70vw;
		margin: auto;
	}
	.page-tit{
		padding: 1rem 0;
		text-align: center;
		line-height: 1.2;
	}
	.page-tit .ja{ display:block; }
	.page-tit .en{ font-size:.7em; }


	/*
	|
	| トップ
	|
	*/
	.hd-area{
		position: relative;
		width: 100%;
		height: 100vh;
	}
	.wrap-tp-slider{
		width: 100%;
		height: 100vh;
	}
	.tp-slick-item img{
		height: 100vh;
		object-fit: cover;
	}
	.tp-slick-item .tp-slide01{
		object-position: -130px 0;
	}
	.hd-area-float{
		position: absolute;
		width: 100%;
		height: 100vh;
		z-index: 1;
	}
	.tp-logo{
		position: absolute;
		left: 50%;
		bottom: 7%;
		transform: translate(-50%, 0);
		width: 90%;
	}
	.tp-hd-txt01{
		position: absolute;
		left: 50%;
		transform: translate(-50%, 0);
		width: auto;
		height: 70vh;
	}
	.tp-hd-txt02{
		position: absolute;
		left: 50%;
		bottom: 0;
		transform: translate(-50%, 0);
		width: 80%;
		height: auto;
	}
	.anvs-hd{
		padding: 1rem 0;
		text-align: center;
		font-size: 1.4rem;
	}
	.anvs-bdy{
		margin-block: 3rem;
	}
	.tp-10th-logo{
		display: block;
		width: 50vw;
		margin: auto;
	}
	.anvs-bdy p{
		margin: 1rem 0 0;
	}
	.anvs-bdy .txt01,
	.anvs-bdy .txt02{
		font-weight: bold;
		font-size: 1.4em;
	}
	.anvs-nav-lst li{
		height: 6rem;
		margin: 0 0 2px 0;
	}
	.anvs-nav-btn-tit {
		position: absolute;
		left: 50%;
		top: 50%;
		transform: translate(-50%, -50%);
		line-height: 1.2;
	}
	.anvs-nav-btn-tit .ja {
		display: block;
		white-space: nowrap;
	}
	.anvs-nav-btn-tit .en {
		white-space: nowrap;
		font-size: 1em;
		font-weight: bold;
	}
	.anvs-nav-btn.card2:before{
		background-position: center 35%;
	}
	.anvs-nav-btn.card3:before{
		background-position: center 4%;
	}
	.anvs-nav-btn.card4:before{
		background-position: center 4%;
	}
	.rsn-area{
		margin-block: 3rem;
	}
	.rsn-area-a > *{
		margin: 1rem 0 0;
	}
	.tp-3hs02{
		display: block;
		width: 50vw;
		margin: auto;
	}
	.wrap-kttk-area{
		margin-block: 3rem auto;
	}
	.wrap-kttk-hd{
		position: relative;
		height: 100vh;
		background-position: 35% center;
		background-size: cover;
	}
	.tp-int-txt01{
		position: absolute;
		top: 5%;
		left: 50%;
		transform: translate(-50%,0);
		width: auto;
		height: 65vh;
	}
	.kttk-hd .txt02{
		position: absolute;
		left: 50%;
		bottom: 2.5rem;
		width: calc(100% - 2rem);
		transform: translateX(-50%);
	}
	.btn-more{
		position: absolute;
		background-color: #FFF;
		border-radius: 5px;
		padding: .5rem 1rem .5rem 2rem;
	}
	.btn-more::before {
		content: "";
		position: absolute;
		top: 2px;
		left: 2px;
		right: 2px;
		bottom: 2px;
		border: 1px solid #5f4e0f;
		border-radius: 5px;
		pointer-events: none;
	}
	.btn-more::after{
		content: '>';
		margin: 0 0 0 1rem;
		font-size: .8rem;
	}
	.kttk-hd .btn-more{
		right: 2rem;
		bottom: 1rem;
	}
	.rmnt-area{
		position: relative;
		padding-block: 3rem;
		padding-bottom: 5rem;
	}
	.rmnt-area > *{
		margin-top: 1rem!important;
	}
	.rmnt-area .txt03{
		font-weight: bold;
		font-size: 1.3rem;
	}
	.tp-int02{
		display: block;
		width: 50vw;
		margin: auto;
	}
	.rmnt-area .txt04 strong{
		display: block;
		font-size: 1.2rem;
	}
	.rmnt-area .btn-more{
		left: 50%;
		bottom: 1.5rem;
		transform: translateX(-50%);
	}
	.wrap-wpwn-area{
		padding-block: 3rem;
	}
	.wpwn-area > *{
		margin-top: 1rem!important;
	}
	.tp-nin-photo01{
		display: block;
		width: 60vw;
		margin: auto;
	}
	/*
	|
	|　10年のあゆみ
	|
	*/
	.wrap-ab10-area{
		padding-block: 3rem;
	}
	.ab10-area > *:nth-child(n+2),
	.ab10-area .txt01 > *:nth-child(n+2),
	.ab10-area .txt02 .pos02 > *:nth-child(n+2){
		margin-top: 1rem!important;
	}
	.typ-photo01{
		display: block;
		width: 50vw;
		margin: auto;
	}
	.ab10-area .txt02 strong{
		display: block;
		margin-top: 3rem!important;
		font-size: 1.2em;
	}
	.typ-photo02{
		display: block;
		width: 50vw;
		margin: 1rem auto 0;
	}
	.ytim-area-hd{
		position: relative;
		height: 100vh;
		background-size: cover;
	}
	.wrap-ytim-area .com-wrap > *{
		margin-top: 1rem!important;
	}
	.ytim-lst-tit{
		font-weight: bold;
		font-size: 1.2em;
	}
	.ytim-lst-tit:nth-child(n+1){
		margin-top: 2rem;
	}
	.ytim-lst-tline-date{
		margin-top: 1rem;
		font-weight: bold;
	}
	.ytim-lst-tline-photo{
		display: flex;
		flex-wrap: wrap;
		gap: 2px;
		margin-top: 1rem;
		padding-bottom: 3rem;
	}
	.ytim-lst-tline-photo li{
		width:48%;
		height: 200px;
	}
	.ytim-lst-tline-photo li img{
		width: 100%;
		height: 100%;
		object-fit: cover;
		object-position: center center;
	}
	.wrap-apff-area{
		margin-top: 3rem;
		padding-bottom: 3rem;
	}
	.apff-area p{ margin-top:1rem; }

	/*
	|
	|　企業情報
	|
	*/
	.wrap-omi-area{
		padding-block: 3rem;
	}
	.wrap-omi-area .txt02 p{
		margin-top: 1rem;
	}
	.au-photo01{
		display: block;
		width: 50vw;
		margin: auto;
	}
	.mfp-area{
		padding-bottom: 3rem;
	}
	.mfp-area strong{
		font-size: 1.2em;
	}
	.mfp-area p:nth-child(n+2){
		margin-top: 1rem;
	}
	.mfp-area .txt03{
		margin-top: 2rem;
		text-align: right;
	}
	.mfp-area .txt03 p{
		margin: 0;
	}
	.au-text-sign{
		margin-left: 1rem;
		width: 8rem;
	}
	.wrap-cp-area{
		padding: 3rem 1rem;
	}
	.cp-lst-tit{
		margin-top: 1rem;
		font-weight: bold;
		border-bottom: 1px solid var(--border-col01);
	}
	.wrap-gmap-area iframe{
		margin-top: 3rem;
		width: 100%;
		height: 100vh;
	}

	/*
	|
	|　建築請負について
	|
	*/
	.wrap-ksak-area{
		padding-block: 3rem;
	}
	.ksak-area .txt01{
		font-size: 1.2em;
	}
	.ksak-area .txt02 p{
		margin-top: 1rem;
	}
	.cs-photo01{
		display: block;
		width: 50vw;
		margin: 1rem auto 0;
	}
	.wrap-ha3p-area{ padding: 0rem 0 3rem; }
	.ha3p-area-hd{
		height: 100vh;
		background-size: cover;
	}
	.ha3p-area-tit{
		margin-top: 1rem;
	}
	.ha3p-area-tit .ja{
		display: block;
	}
	.ha3p-area-a{
		margin-top: 1rem;
	}
	.ha3p-area-a h4{
		font-size: 1.2em;
	}
	.cs-photo03{
		display: block;
		width: 50vw;
		margin: 1rem auto 0;
	}
	.ha3p-area-b{
		margin-top: 3rem;
	}
	.ha3p-area-b h4{
		font-size: 1.2em;
	}
	.ha3p-area-b p{
		margin-top: 1rem;
	}
	.ha3p-area-c{
		margin-top: 3rem;
	}
	.ha3p-area-c h4{
		font-size: 1.2em;
	}
	.cs-photo05{
		display: block;
		width: 50vw;
		margin: 1rem auto 0;
	}
	.ha3p-area-c p{
		margin-top: 1rem;
	}
	.wrap-acss-area{
		padding-bottom: 3rem;
	}
	.acss-area-hd{
		height: 100vh;
		background-size: cover;
		background-position: 35% top;
	}
	.acss-area-a-lst li{
		margin-top: 1rem;
	}
	.acss-area-a-lst-tit{
		font-size: 1.2em;
	}
	.wrap-pcimt-area{
		padding-bottom: 3rem;
	}
	.pcimt-area-hd{
		height: 100vh;
		background-size: cover;
		background-position: 73% top;
	}
	.pcimt-area-a p{
		margin-top: 1rem;
	}
	/*
	|
	|　左官業について
	|
	*/
	.wrap-ps-hd{
		padding: 3rem 0 ;
	}
	.ps-hd strong{
		font-size: 1.2em;
	}
	.ps-hd p:nth-child(n+2){
		margin-top: 1rem;
	}
	.ps-photo01{
		display: block;
		width: 50vw;
		margin: 1rem auto 0;
	}
	.wwhp-area-hd{
		height: 100vh;
		background-size: cover;
		background-position: 0% top;
	}
	.wwhp-area-a-tit .ja{
		display: block;
	}
	.wwhp-area-a p{
		margin-top: 1rem;
	}
	.wwhp-area-b{
		padding-block: 3rem;
	}
	.wwhp-area-b p{ margin-top: 1rem; }
	.wwhp-area-b-tit{
		font-size: 1.2rem;
	}
	.wwhp-area-c-tit{
		font-size: 1.2rem;
	}
	.wwhp-area-c p{ margin-top:1rem; }
	.ps-photo05{
		display: block;
		width: 50vw;
		margin: 1rem auto 0;
	}
	.atal-area-hd{
		height: 100vh;
		background-size: cover;
		background-position: 47% top;
	}
	.atal-area-a-tit{
		margin-top: 1rem;
	}
	.atal-area-a-tit .ja{
		display: block;
	}
	.atal-area-a p{
		margin-top: 1rem;
	}
	.atal-area-b-tit{
		font-size: 1.2rem;
	}
	.atal-area-b{
		margin-top: 3rem;
	}
	.atal-area-b p{ margin-top:1rem; }
	.ps-photo07{
		display: block;
		width: 50vw;
		margin: 1rem auto 0;
	}
	.atal-area-c{ margin-top:3rem;padding-bottom:3rem; }
	.atal-area-c p{ margin-top:1rem; }
	.atal-area-c-tit{
		font-size: 1.2rem;
	}
	.ps-photo08{
		display: block;
		width: 50vw;
		margin: 1rem auto 0;
	}
	.wrap-eoca-area{
		padding: 3rem 1rem;
	}
	.wrap-eoca-area h4{
		margin-top: 1rem;
		font-size: 1.2em;
	}
	.atal-eoca-c{
		margin-top: 3rem;
	}
	.atal-eoca-c p{
		margin-top: 1rem;
	}
	.ps-pic01{
		margin-top: 1rem;
	}
	.intk-area-hd{
		position: relative;
		height: 100vh;
		background-size: cover;
		background-position: 47% top;
	}
	.ps-txt01{
		position: absolute;
		top: 0;
		left: 50%;
		transform: translateX(-50%);
		width: auto;
		height: 70vh;
	}
	.intk-area-hd .txt01{
		position: absolute;
		bottom: 4.5rem;
		padding-inline: 2rem;
	}
	.intk-area-hd .btn-more{
		position: absolute;
		right: 1rem;
		bottom: 1.5rem;
	}
	.intk-area-a{
		position: relative;
		padding-top: 3rem;
		padding-bottom: 6rem;
	}
	.intk-area-a-tit{
		font-size: 1.2em;
	}
	.ps-photo11{
		display: block;
		width: 50vw;
		margin: 1rem auto 0;
	}
	.intk-area-a .txt01{
		margin-top: 1rem;
		font-size: 1.2em;
	}
	.intk-area-a .btn-more{
		position: absolute;
		right: 0;
		bottom: 3rem;
	}
	/*
	|
	|　サイトポリシー
	|
	*/
	.wrap-pcy-area{
		padding-inline: 1rem;
		padding-block: 3rem;
	}
	.pcy-hd p:nth-child(n+2){
		margin-top: 1rem;
	}
	.pcy-lst{
		margin-top: 3rem;
	}
	.pcy-lst-tit{
		margin-top: 2rem;
	}
	.pcy-lst li p:nth-child(n+2){
		margin-top: 1rem;
	}
	.pcy-lst-bdy strong{
		display: block;
	}
	.pcy-lst-bdy.info .tel{
		display: block;
	}
}




/*
|
|	タブレット
|
*/
@media print, screen and (min-width: 481px) and (max-width: 959px) {
	/*
	|
	|　各ページ共通
	|
	*/
}





/*
|
|	スマホ
|
*/
@media print, screen and (max-width: 480px) {
	/*
	|
	|　各ページ共通
	|
	*/
}