/* Smartphone-specific overrides (<=499px) */
@media screen and (max-width: 499px) {
	:root {
		--maintitle-scale: 0.75;
	}
	html {
		font-size: 16px;
	}
	.trunk {
		width: 100%;
		max-width: 100%;
		margin: 0;
		padding: 0 ;
		box-sizing: border-box;
	}

	#slide-1 {
		background-image: url('../images/myslider/_sm/myslider-01-01@1x.jpg');
		background-size: cover;
	}

	#canvas-1 .mainimg img {
		width: 100%;
		height: auto;
	}

	.trunk > .main {
		width: 100%;
		max-width: 100%;
		margin: 0;
		padding: 1em 3vw;
		box-sizing: border-box;
	}

	.trunk > .main > .content {
		width: 100%;
		max-width: 100%;
		margin: 0;
		padding: 0 0px;
		box-sizing: border-box;
	}

	body.utility .section {
		max-width: 100%;
		padding: 0;
	}

	body.utility p {
		font-size: 1rem;
		line-height: 1.7;
	}

	#cboxClose {
		top: 8px;
		right: 8px;
		bottom: auto;
	}

	#company table#company_data_table {
		font-size: 0.95rem;
	}

	#company table#company_data_table td {
		padding: 12px 8px;
	}

	#company_data_table_companyname p {
		font-size: 1.1em;
	}


	div.tabnav {
		width: 100%;
		margin: 0 auto 32px auto;
		padding: 0;
	}

	.tilecat-grid {
		grid-template-columns: repeat(2, 1fr);
	}

	div.tabnav ul.tabnavUL {
		display: block;
		font-size: initial;
		margin: 0;
		padding: 0;
	}

	div.tabnav ul.tabnavUL li.tabnavLI {
		display: block;
		margin: 0 0 3px 0;
		width: 100%;
		border: solid 1px #c00;
	}

	div.tabnav ul.tabnavUL li.tabnavLI a {
		display: block;
		width: 100%;
		font-size: 90%;
		line-height: 1.4;
		padding: 8px;
		box-sizing: border-box;
	}

	div.tabnav ul.tabnavUL li.tabnavLI:last-child {
		margin-bottom: 0;
	}


	.inquity-unit , .inquity-unit.solar  {
		width: 100%;
		height: auto;
		margin: 32px 0 0;
		padding: 36px 20px 32px;
		background: url('../images/inquity-back_SM.jpg') no-repeat center top/cover;
		position: relative;
		aspect-ratio: 750 / 355;
		text-align: center;
		color: #222;
		backdrop-filter: blur(2px);
	}

	.inquity-unit.solar {
		background-image: url('../images/inquity-solar-back_SM.jpg');
	}

	.inquity-unit p.hline {
		position: static;
		display: inline-block;
		font-size: 20px;
		font-weight: 700;
		line-height: 1.5;
		color: #b30000;
		margin: 0 auto 18px;
		padding-bottom: 8px;
		border-bottom: 2px solid rgba(179, 0, 0, 0.75);
	}

	.inquity-unit table {
		width: 100%;
		position: static;
		margin: 0 auto;
		border-collapse: collapse;
	}

	.inquity-unit table tr {
		display: flex;
		justify-content: center;
		align-items: baseline;
		gap: 12px;
		margin: 0 0 18px;
	}

	.inquity-unit table tr:last-child {
		margin-bottom: 0;
	}

	.inquity-unit table th,
	.inquity-unit table td {
		width: auto;
		font-size: 18px;
		line-height: 1.5;
		padding: 0;
		background: none;
	}

	.inquity-unit table th {
		font-size: 14px;
		letter-spacing: 0.2em;
		font-weight: 600;
		color: #111;
	}

	.inquity-unit table td {
		font-size: 28px;
		font-weight: 700;
		letter-spacing: 0.08em;
		color: #111;
	}

	.inquity-unit table tr:last-child th {
		letter-spacing: 0.12em;
	}

	.inquity-unit table tr:last-child td {
		font-size: 20px;
		font-weight: 600;
		letter-spacing: 0.05em;
		word-break: break-all;
	}

	.inquity-unit .hour {
		display: block;
		font-size: 12px;
		letter-spacing: 0.05em;
		margin-top: 8px;
		color: #454545;
		font-weight:normal;
	}

	body.nav-open::after {
		content: "";
		position: fixed;
		top: 0;
		left: 0;
		right: 0;
		bottom: 0;
		background: rgba(0, 0, 0, 0.5);
		z-index: 900;
	}

	body.nav-open .header,
	body.nav-open .gnav {
		position: relative;
		z-index: 950;
	}

	body.nav-open .trunk {
		position: relative;
		z-index: 1;
	}

	.side-by-side {
		margin: 24px 0;
		flex-direction: column;
	}

	.side-by-side > .side-by-side-item,
	.side-by-side > .side-by-side-item:first-child,
	.side-by-side > .side-by-side-item:last-child {
		order: 0;
		flex: 1 1 auto;
		width: 100%;
		margin: 0 0 20px 0;
	}

	.side-by-side > .side-by-side-item:last-child {
		margin-bottom: 0;
	}

	.side-by-side > .side-by-side-item > * {
		margin-left: 0;
		margin-right: 0;
	}

	.bodycopy {
    color: #384558;
    font-size:0.99rem;
    line-height: 1.5;
    margin: 0px 0px 1em 0px;
	text-align: justify;
	padding-inline:2vw;
	}

	p.figure {
		
    margin: 1em 0px 1em 0px;
	}

	p.voice {

    margin: 1em 0px 1em 0px;
	}

h2.title {
  margin: 1rem 0px 1rem 0px;
  text-align: left;
  font-size: 0;
}

	.content img,
	.box img,
	.voice img,
	.figure img,
	.title img {
		max-width: 100%;
		height: auto;
    width: 100%;
	}



	/* ////////////////////////// //////////////////////////


										### mainvisual
										
										下層ページごとのメインビジュアル


 ////////////////////////// ////////////////////////// */
#mainvisual {
  width: 100%;
  /*  #### [purc1(purchace1 「売却をお考えのお客様」)] version of the [mainvisual] subsp */
  /*  #### [purc2(「税理⼠事務所様へ」)] version of the [mainvisual] subsp */
  /*  #### [purc3(「弁護⼠事務所様」)] version of the [mainvisual] subsp */
  /*  #### [purc4(「不動産仲介業者様」)] version of the [mainvisual] subsp */
  /*  #### [sale（sales　「不動産仲介サービス」）] version of the [mainvisual] subsp */
  /*  #### [prop（property　「プロパティマネジメント」）] version of the [mainvisual] subsp */
  /*  #### [cons（construction　「建設工事」）] version of the [mainvisual] subsp */
  /*  #### [land（landuse　「土地有効活用」）] version of the [mainvisual] subsp */
  /*  #### [sola（solar　「再生可能エネルギー」）] version of the [mainvisual] subsp */

  background: no-repeat 45% 0px;
  background-size: cover;


}
#mainvisual h1 {
  /*置換*/
  text-indent: 100%;
  white-space: nowrap;
  overflow: hidden;
  width: 100%;
  height: 120px;
  margin: 0 auto;
  padding: 0;
  box-sizing: border-box;
  background: no-repeat 3vw center;
}

body.purc1 #mainvisual { 
  background: url(../images/02-purchase-01-assets/mainvisual-back.jpg) no-repeat 45% 0px;
  background-size: cover;

}
body.purc #mainvisual h1 {
  background-image: url('../images/02-purchase-01-assets/mainvisual-title.png');
}
@media (-webkit-min-device-pixel-ratio: 2) {
  body.purc #mainvisual h1 {
    background-image: url('../images/02-purchase-01-assets/mainvisual-title@x2.png');
        /* background-size */
    -moz-background-size: calc(256px * var(--maintitle-scale)) calc(74px * var(--maintitle-scale));
    -webkit-background-size: calc(256px * var(--maintitle-scale)) calc(74px * var(--maintitle-scale));
    -o-background-size: calc(256px * var(--maintitle-scale)) calc(74px * var(--maintitle-scale));
    -ms-background-size: calc(256px * var(--maintitle-scale)) calc(74px * var(--maintitle-scale));
    background-size: calc(256px * var(--maintitle-scale)) calc(74px * var(--maintitle-scale));
  }
}
body.purc2 #mainvisual {
  background: url(../images/02-purchase-02-assets/mainvisual-back.jpg) 45% 0px ;
  background-size: cover;
}
body.purc3 #mainvisual {
  background: url(../images/02-purchase-03-assets/mainvisual-back.jpg) 45% 0px;
  background-size: cover;
}
body.purc4 #mainvisual {
  background: url(../images/02-purchase-04-assets/mainvisual-back.jpg) 45% 0px;
  background-size: cover;
}
body.sale #mainvisual {
  background: url(../images/03-sales-assets/mainvisual-back.jpg) 45% 0px;
  background-size: cover;
}
body.sale #mainvisual h1 {
  background-image: url('../images/03-sales-assets/mainvisual-title.png');
}
@media (-webkit-min-device-pixel-ratio: 2) {
  body.sale #mainvisual h1 {
    background-image: url('../images/03-sales-assets/mainvisual-title@x2.png');
        /* background-size */
    -moz-background-size: calc(314px * var(--maintitle-scale)) calc(74px * var(--maintitle-scale));
    -webkit-background-size: calc(314px * var(--maintitle-scale)) calc(74px * var(--maintitle-scale));
    -o-background-size: calc(314px * var(--maintitle-scale)) calc(74px * var(--maintitle-scale));
    -ms-background-size: calc(314px * var(--maintitle-scale)) calc(74px * var(--maintitle-scale));
    background-size: calc(314px * var(--maintitle-scale)) calc(74px * var(--maintitle-scale));
  }
}
body.prop #mainvisual {
  background: url(../images/04-property-assets/mainvisual-back.jpg) 45% 0px;
  background-size: cover;
}
body.prop #mainvisual h1 {
  background-image: url('../images/04-property-assets/mainvisual-title.png');
}
@media (-webkit-min-device-pixel-ratio: 2) {
  body.prop #mainvisual h1 {
    background-image: url('../images/04-property-assets/mainvisual-title@x2.png');
        /* background-size */
    -moz-background-size: calc(343px * var(--maintitle-scale)) calc(74px * var(--maintitle-scale));
    -webkit-background-size: calc(343px * var(--maintitle-scale)) calc(74px * var(--maintitle-scale));
    -o-background-size: calc(343px * var(--maintitle-scale)) calc(74px * var(--maintitle-scale));
    -ms-background-size: calc(343px * var(--maintitle-scale)) calc(74px * var(--maintitle-scale));
    background-size: calc(343px * var(--maintitle-scale)) calc(74px * var(--maintitle-scale));
  }
}
body.cons #mainvisual {
  background: url(../images/05-construction-assets/mainvisual-back.jpg) 45% 0px;
  background-size: cover;
}
body.cons #mainvisual h1 {
  background-image: url('../images/05-construction-assets/mainvisual-title.png');
}
@media (-webkit-min-device-pixel-ratio: 2) {
  body.cons #mainvisual h1 {
    background-image: url('../images/05-construction-assets/mainvisual-title@x2.png');
        /* background-size */
    -moz-background-size: calc(135px * var(--maintitle-scale)) calc(74px * var(--maintitle-scale));
    -webkit-background-size: calc(135px * var(--maintitle-scale)) calc(74px * var(--maintitle-scale));
    -o-background-size: calc(135px * var(--maintitle-scale)) calc(74px * var(--maintitle-scale));
    -ms-background-size: calc(135px * var(--maintitle-scale)) calc(74px * var(--maintitle-scale));
    background-size: calc(135px * var(--maintitle-scale)) calc(74px * var(--maintitle-scale));
  }
}
body.land #mainvisual {
  background: url(../images/06-landuse-assets/mainvisual-back.jpg) 45% 0px;
  background-size: cover;
}
body.land #mainvisual h1 {
  background-image: url('../images/06-landuse-assets/mainvisual-title.png');
}
@media (-webkit-min-device-pixel-ratio: 2) {
  body.land #mainvisual h1 {
    background-image: url('../images/06-landuse-assets/mainvisual-title@x2.png');
        /* background-size */
    -moz-background-size: calc(205px * var(--maintitle-scale)) calc(74px * var(--maintitle-scale));
    -webkit-background-size: calc(205px * var(--maintitle-scale)) calc(74px * var(--maintitle-scale));
    -o-background-size: calc(205px * var(--maintitle-scale)) calc(74px * var(--maintitle-scale));
    -ms-background-size: calc(205px * var(--maintitle-scale)) calc(74px * var(--maintitle-scale));
    background-size: calc(205px * var(--maintitle-scale)) calc(74px * var(--maintitle-scale));
  }
}
body.sola #mainvisual {
  background: url(../images/07-solar-assets/mainvisual-back.jpg) 45% 0px;
  background-size: cover;
}
body.sola #mainvisual h1 {
  background-image: url('../images/07-solar-assets/mainvisual-title.png');
}
@media (-webkit-min-device-pixel-ratio: 2) {
  body.sola #mainvisual h1 {
    background-image: url('../images/07-solar-assets/mainvisual-title@x2.png');
        /* background-size */
    -moz-background-size: calc(303px * var(--maintitle-scale)) calc(74px * var(--maintitle-scale));
    -webkit-background-size: calc(303px * var(--maintitle-scale)) calc(74px * var(--maintitle-scale));
    -o-background-size: calc(303px * var(--maintitle-scale)) calc(74px * var(--maintitle-scale));
    -ms-background-size: calc(303px * var(--maintitle-scale)) calc(74px * var(--maintitle-scale));
    background-size: calc(303px * var(--maintitle-scale)) calc(74px * var(--maintitle-scale));
  }
}






div.listcontent {
  margin: 1rem 0 ;
}




	body.purc1 h2.title {
		margin: 2rem 0;
	}


  
  div.listcontent li.listcontentLI .listcontentHLINE {
  font-size: 18px;
  line-height: 20px;
  font-weight: bold;
  color: #384558;
  display: flex;
  align-items: center;
}
  div.listcontent li.listcontentLI .listcontentHLINE > *:nth-child(2) {
 
}



  div.listcontent .num {
        display: block;
        font-size: 1rem;
        line-height: 1.75rem;
        border-radius: 2rem;
        margin-right: 0.5em;
        width: 2rem;
        height: 2rem;
        flex-basis: 2rem;
}


.tilecat-hline-area {
height:20vw;
}

.tilecat-hline-area .deco {
	font-size:2vw;
}
.tilecat-hline-area .mainline {
	top:4.7vw;
	font-size:4.13vw;
}

.tilecatCELL-prop .tilecat-hline-area .mainline {
	display: inline-block; /* transformを効かせるため */
  transform: scaleX(0.9); /* 横方向に90%に縮小 */
  transform-origin: top left;
  white-space: nowrap;  
}
.tilecat-hline-area .subline {
	font-size: 2.6vw;
        line-height: 1.1;
        padding-right: 1vw;
        top: 13vw;
}
.tilecat-navUL {
	margin:2vw 1.5vw;
}

.tilecat-navUL a {
        font-size: 3.2vw;
        background-size: 3vw;
        background-position: left center;
        padding: 1vw 0vw 1vw 3.6vw;
}
.newslist {
	margin-inline:0;

}


	/* ----- merged from dev.css ----- */
	.footer-companyinfo {
		height: auto;
	}

	.footer .submenu,
	ul.utility_menuUL > li.toppage,
	dl.footer-companyinfoDL .url p {
		display: none;
	}

	.sitemapmenuLI.left,
	.sitemapmenuLI.right {
		width: auto;
	}

	.header .submenu .submenu-childLI a {
		background-size: unset;
	}

	body.purc .gnav .gnavLI-purc a,
	body.sale .gnav .gnavLI-sale a,
	body.prop .gnav .gnavLI-prop a,
	body.cons .gnav .gnavLI-cons a,
	body.land .gnav .gnavLI-land a,
	body.sola .gnav .gnavLI-sola a {
		background: #c00;
		border-bottom: solid 6px #c00;
		color: #fff;
	}

	div.main div.box.fv {
		margin-bottom: 1rem;
	}

	div.side-by-side.tiled h2.hline {
		position: relative;
		z-index: 1;
		margin: 1rem;
	}
	div.side-by-side.tiled > .side-by-side-item {
		margin-bottom: 0;
	}
	div.side-by-side.tiled p.bodycopy {
		margin: 0;
		padding: 1rem;
	}
	div.side-by-side.tiled h2.hline + p.bodycopy {
		margin: 0;
		padding-top: 0;
	}
	div.side-by-side.tiled > .figure img {
		position: relative;
	}

	div.side-by-side.tiled#designers > .side-by-side-item:first-child > .bgimg {
		width: 50%;
	}
	div.side-by-side.tiled#designers > .side-by-side-item:nth-child(2) {
		flex: unset;
		height: 40vw;
	}
	div.side-by-side.tiled#designers > .side-by-side-item:nth-child(2) > img {
		top: -60%;
	}

	div.side-by-side.tiled.tiled-mansion#mansion {
		flex-direction: column-reverse;
	}
	div.side-by-side.tiled.tiled-mansion#mansion > .side-by-side-item:first-child {
		flex: unset;
		height: 40vw;
	}
	div.side-by-side.tiled.tiled-mansion#mansion > .side-by-side-item:first-child > img {
		top: -60%;
		width: 100%;
		height: auto;
		display: block;
		position: relative;
	}
	div.side-by-side.tiled.tiled-mansion#mansion > .side-by-side-item:nth-child(2) > .bgimg {
		width: 30%;
	}

	div.side-by-side.tiled#renovation > .side-by-side-item:first-child > .bgimg {
		width: 50%;
	}
	div.side-by-side.tiled#renovation > .side-by-side-item:nth-child(2) {
		flex: unset;
		height: 40vw;
	}
	div.side-by-side.tiled#renovation > .side-by-side-item:nth-child(2) > img {
		top: -60%;
	}

	.resultboxUL {
		display: block;
	}
	.resultbox > .resultboxUL > li:last-child {
		display: block;
	}
	.resultbox > .resultboxUL > li:last-child > .resultboxUL {
		display: flex;
		justify-content: space-evenly;
		align-items: center;
		grid-gap: 0.3rem;
	}
	.resultboxUL > li {
		align-self: center;
		text-align: center;
		display: flex;
		justify-content: center;
		background: #efefef;
		border: solid 1px #fff;
		box-sizing: border-box;
	}

	.inquity-unit {
		margin-top: 0;
		padding: 5vw 20px 32px;
	}
	.inquity-unit table {
		margin-inline: auto;
		width: 55vw;
	}
	.inquity-unit p.hline {
		font-size: 4vw;
		margin-bottom: 0.3rem;
		padding-bottom: 1vw;
		padding-inline: 10vw;
		width: auto;
	}
	.inquity-unit p.hline span {
		display: block;
	}
	.inquity-unit .hour {
		font-weight: normal;
		margin-top: 0;
		font-size: 2.4vw;
		white-space: nowrap;
	}
	.inquity-unit table tr {
		margin-bottom: 0.3rem;
		display: table-row;
	}
	.inquity-unit table tr:last-child {
		display: table-row;
	}
	.inquity-unit table td {
		font-size: 5vw;
	}
	.inquity-unit table tr:last-child td {
		font-size: 4vw;
	}




.tilecat-purc .tilecat-nav-area{
	background-image:linear-gradient(rgba(255,255,255,0.5), rgba(255,255,255,0.5)),url(../images/topcat/catback-purc.png) 
}
.tilecat-sale .tilecat-nav-area{
	background-image:linear-gradient(rgba(255,255,255,0.5), rgba(255,255,255,0.5)),url(../images/topcat/catback-sale.png) 
}
.tilecat-prop .tilecat-nav-area{
	background-image:linear-gradient(rgba(255,255,255,0.5), rgba(255,255,255,0.5)),url(../images/topcat/catback-prop.png) 
}
.tilecat-cons .tilecat-nav-area{
	background-image:linear-gradient(rgba(255,255,255,0.5), rgba(255,255,255,0.5)),url(../images/topcat/catback-cons.png) 
}
.tilecat-land .tilecat-nav-area{
	background-image:linear-gradient(rgba(255,255,255,0.5), rgba(255,255,255,0.5)),url(../images/topcat/catback-land.png) 
}
.tilecat-sola .tilecat-nav-area{
	background-image:linear-gradient(rgba(255,255,255,0.5), rgba(255,255,255,0.5)),url(../images/topcat/catback-sola.png) 
}






}

@media screen and (max-width: 416px) {
	html {
		font-size: 14.5px;
	}
}

@media screen and (max-width: 380px) {
	html {
		font-size: 13.2px;
	}
}

@media screen and (max-width: 499px) and (-webkit-min-device-pixel-ratio: 2),
	screen and (max-width: 499px) and (min-resolution: 192dpi) {
	#slide-1 {
		background-image: url('../images/myslider/_sm/myslider-01-01@2x.jpg');
	}
}
