@charset "utf-8";
/* ===========================================================
 *
 * 株式会社ホットブラッド スタイルシート
 * Last UpDate : 2025/05/22
 *
=========================================================== */
@import "general.css";
@import "fonts.css";
@import "menu.css";
/* ----------------------------------------------------------
	style.css
---------------------------------------------------------- */
/* noto-sans-jp-regular - japanese */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Noto Sans JP';
  font-style: normal;
  font-weight: 400;
  src: url('fonts/noto-sans-jp-v53-japanese-regular.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* noto-sans-jp-600 - japanese */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Noto Sans JP';
  font-style: normal;
  font-weight: 600;
  src: url('fonts/noto-sans-jp-v53-japanese-600.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* noto-sans-jp-700 - japanese */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Noto Sans JP';
  font-style: normal;
  font-weight: 700;
  src: url('fonts/noto-sans-jp-v53-japanese-700.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* noto-sans-jp-900 - japanese */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Noto Sans JP';
  font-style: normal;
  font-weight: 900;
  src: url('fonts/noto-sans-jp-v53-japanese-900.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* noto-serif-jp-regular - japanese */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Noto Serif JP';
  font-style: normal;
  font-weight: 400;
  src: url('fonts/noto-serif-jp-v30-japanese-regular.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* noto-serif-jp-600 - japanese */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Noto Serif JP';
  font-style: normal;
  font-weight: 600;
  src: url('fonts/noto-serif-jp-v30-japanese-600.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* noto-serif-jp-700 - japanese */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Noto Serif JP';
  font-style: normal;
  font-weight: 700;
  src: url('fonts/noto-serif-jp-v30-japanese-700.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* lexend-deca-200 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Lexend Deca';
  font-style: normal;
  font-weight: 200;
  src: url('fonts/lexend-deca-v21-latin-200.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* lexend-deca-regular - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Lexend Deca';
  font-style: normal;
  font-weight: 400;
  src: url('fonts/lexend-deca-v21-latin-regular.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* lexend-deca-600 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Lexend Deca';
  font-style: normal;
  font-weight: 600;
  src: url('fonts/lexend-deca-v21-latin-600.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* lexend-deca-700 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Lexend Deca';
  font-style: normal;
  font-weight: 700;
  src: url('fonts/lexend-deca-v21-latin-700.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* ----------------------------------------------------------
 common
---------------------------------------------------------- */


html{  }
body {
	color: #333;
	font-weight: 400;
    font-style: normal;
	font-family:
		'Noto Sans JP',
		  YuGothic,
		  "Yu Gothic Medium",
		  "Yu Gothic",
		  Verdana,
		  Meiryo,
		  sans-serif;
	letter-spacing: 1.2px;
	background-color: #fff3e7;
}

/*
@media all and (-ms-high-contrast: none) {
  *::-ms-backdrop, .h2Wrap{ line-height: 1.7 !important; }
  *::-ms-backdrop, .h2Wrap h2 span{ margin-top: 0 !important; }
  *::-ms-backdrop, h4{ line-height: 1.7 !important; }
  *::-ms-backdrop, .supportSec02 > ul > li{ flex-basis: 42% !important; padding: 3% !important; }
  *::-ms-backdrop, .flowSec ul li .flowSecTit{ line-height: 1 !important; }
  *::-ms-backdrop, .flowSec ul li .flowSecIco{ padding-left: 3px !important; }
  *::-ms-backdrop, .companySec > ul > li dt{ flex-basis: 28% !important; padding: 1% !important; }
  *::-ms-backdrop, .companySec > ul > li dd{ flex-basis: 68% !important; padding: 1% !important; }
  *::-ms-backdrop, .historySec dt{ flex-basis: 28% !important; padding: 1% !important; }
  *::-ms-backdrop, .historySec dd{ flex-basis: 68% !important; padding: 1% !important; }
  *::-ms-backdrop, .typeSec01 .typeSecTit{ margin-top: 30px !important; }

}
*/

.wp-block-image {
    margin: 0 0 1em;
}
/* ----------------------------------------------------------
 link
---------------------------------------------------------- */
a:link		{ color: #666; text-decoration: none; }
a:visited	{ color: #666; text-decoration: none; }
a:hover		{ color: #dfa45b; text-decoration: none; }
a:active	{ color: #dfa45b; text-decoration: none; }

a { -ms-filter: "alpha( opacity=60 )"; -webkit-transition: 0.5s ease-in-out; -moz-transition: 0.5s ease-in-out; -o-transition: 0.5s ease-in-out; transition: 0.5s ease-in-out; }

/* ----------------------------------------------------------
 header
---------------------------------------------------------- */
header{ /* background-color: #e60012; */ }
#header{ width: 1500px; margin: 0 auto; display: flex; align-items: center; margin-bottom: 30px; }
.headerLogo{ flex-basis: 15%; text-align: right; padding: 30px; background-color: #e60012; }
.headerLogo a:hover{ opacity: 0.6; }

#gNavi{ flex-basis: 54%; margin-left: 2%; margin-right: 2%; /* background-color: #800000; */  }
#gNavi nav{}
#gNavi nav > ul{ display: flex; justify-content: flex-end; gap: 30px; }
#gNavi nav > ul > li{ text-align: center; }

#gNavi nav > ul > li a{ position: relative; display: block; font-size: 1.6rem; color: #222; font-weight: 500; padding: 20px 0; font-weight: bold; }
#gNavi nav > ul > li a span{ display: block; font-size: 1rem; font-family: 'Lexend Deca', sans-serif; font-weight: 400; font-style: normal; }
#gNavi nav > ul > li a:hover,
#gNavi nav > ul > li a.selected{ /* background-color: #221815; */ }

#gNavi nav > ul > li a::after{ content:""; display: block; width: 0; height: 4px; background-color: #f4b183; margin-top: 5px; transition: .5s; }
#gNavi nav > ul > li a:hover::after{ width: 100%; transition: .5s; }


.headerTel{ flex-basis: 19%; text-align: center; /* background-color: #241b18; */ color: #222; padding: 30px 0; }
.headerTel span{ font-size: 3rem; font-family: 'Lexend Deca', sans-serif; font-weight: 600; font-style: normal; }
.headerTel p{ margin-top: 5px; font-size: 1.3rem; font-family: 'Noto Sans JP'; font-weight: 600; }

.headerContact{ flex-basis: 8%; }
.headerContact a{ display: block; font-size: 1.7rem; font-weight: 500; color: #222; text-align: center; padding: 20px 0; background-color: #fff; }
.headerContact a i{ font-size: 3rem; transition: .3s; }
.headerContact a:hover{ background-color: #bfbfbf; color: #222; }
.headerContact a:hover i{ color: #fff; }




/* ----------------------------------------------------------
 footer
---------------------------------------------------------- */
footer{ }
footer > ul{ position: relative; display: flex; }
footer > ul > li{ flex-basis: 50%; }
footer > ul > li:nth-child(1){ padding-left: 10%; background: linear-gradient(to bottom, rgba(230,0,18,1) 0%,rgba(230,0,18,1) 30%,rgba(219,70,11,1) 30%,rgba(219,70,11,1) 100%); }
footer > ul > li:nth-child(2){ padding: 3% 15% 5% 5%; background: #fff; z-index: 1; }
.footerLogo{ height: 30%; padding-top: 9%; background-color: #e70113; }
.footerLogo a:hover{ opacity: 0.6; }
.footerInfo{ color: #fff; font-size: 1.6rem; background-color: #db460b; }
.footerAdd{ margin: 5% 0; }
.footerContact{ display: flex; justify-content: space-between; align-items: center; width: 96%; background: #fff; padding: 15px; max-width: 600px; }
.footerTel{ flex-basis: 54%; display: flex; flex-wrap: wrap; align-items: center; color: #333; font-size: 3.5rem; font-family: 'Lexend Deca', sans-serif; font-weight: 600; font-style: normal; }
.footerTel i{ color: #d0171e; margin-right: 5px; font-size: 2.5rem; padding-top: 3px; }
.footerTel p{}
.footerTel span{ flex-basis: 100%; font-size: 1.3rem; color: #666; text-align: center; }
.footerBtn{ flex-basis: 40%; }
.footerBtn a{ display: block; color: #fff; text-align: center; font-size: 1.6rem; font-weight: 900; border: 2px solid #800000; background: #800000; padding: 15px 10px; }
.footerBtn a i{ margin-right: 10px; }
.footerBtn a:hover{ background: #fff; color: #800000; }
.footerCopyright{ font-size: 1.2rem; color: #fff; margin-top: 5%; margin-bottom: 1%; }

.footerSitemap{ z-index: 2; }
.footerSitemapTit{ position: relative; margin-bottom: 40px; }
.footerSitemapTit span{ display: block; background-color: #fff; padding-left: 10px; margin-left: 40px; font-size: 2.7rem; font-family: 'Lexend Deca', sans-serif; font-weight: 700; font-style: normal; }
.footerSitemapTit span:first-letter{ color: #db460b; }
.footerSitemapTit:after{ position: absolute; content: ""; width: 5%; height: 3px; display: block; background-color: #800000; top: 50%; left: 0; z-index: -1; }
.footerSitemap > ul{ display: flex; justify-content: space-between; }
.footerSitemap > ul > li{ flex-basis: 48%; font-weight: 600; }
.footerSitemap > ul > li > ul{}
.footerSitemap > ul > li > ul > li{ position: relative; padding-left: 25px; margin-bottom: 20px; }
.footerSitemap > ul > li > ul > li:after{ position: absolute; display: block; content: ""; top: 8px; left: 0; width: 8px; height: 8px; border: 3px solid #db460b; border-radius: 100%; }
.footerSitemap > ul > li > ul > li a{ font-size: 1.6rem; color: #333; font-weight: 700; }
.footerSitemap > ul > li > ul > li a:hover{ color: #db460b; }
.footerSitemap > ul > li > ul > li > ul{ margin: 5px 0 0 25px; }
.footerSitemap > ul > li > ul > li > ul > li{ list-style-type: disc; color: #800000; line-height: 1.2; }
.footerSitemap > ul > li > ul > li > ul > li > a{ font-size: 1.3rem; }

.footerYoutube{ width: 380px; margin-top: 30px; }
.footerYoutube a{ display: block; color: #fff; background: #f00; text-align: center; font-size: 2rem; font-weight: 700; border-radius: 40px; border: 1px solid #f00; padding: 15px; }
.footerYoutube a i{ margin-right: 10px; font-size: 2.6rem; vertical-align: middle; }
.footerYoutube a:hover{ background: #fff; color: #f00; }

.footer_sns{ margin-top: 40px; }
.footer_sns_list{ display: flex; justify-content: flex-start; }
.footer_sns_item{ margin-right: 15px; }
.footer_sns_item i{ font-size: 3rem; }
.footer_sns_item a{ display: block; }
.footer_sns_item_instagram{ }
.footer_sns_item_instagram a{ }
.footer_sns_item_instagram a:hover{ -webkit-background-clip: text; background-repeat: no-repeat; color: transparent; background-image: linear-gradient(72.44deg, #FF7A00 11.92%, #FF0169 51.56%, #D300C5 85.69%) }
.footer_sns_item_x{}
.footer_sns_item_x a:hover{ color: #000; }
.footer_sns_item_threds{}
.footer_sns_item_threds a:hover{ color: #0a0a0a; }
.footer_sns_item_facebook{}
.footer_sns_item_facebook a:hover{ color: #0866ff; }
.footer_sns_item_youtube{}
.footer_sns_item_youtube a:hover{ color: #ff0033; }



/* ----------------------------------------------------------
 hx
---------------------------------------------------------- */
.h1Wrap{ position: relative; margin-bottom: 300px; }
h1{ width: 100%; position: absolute; top: 0; left: 0;
	background-image: url("../images/bg_tit01.png"),url("../images/bg_tit02.png"),url("../images/bg_h101.png"),url("../images/bg_tit02.png");
	background-repeat: no-repeat, no-repeat, no-repeat, no-repeat;
	background-position: 250px 0, left 84px, 90% bottom, 180% bottom;
	background-size: auto, auto, auto, auto;
	min-height: 264px; z-index: -1; }
h1 p{ width: 1200px; margin: 0 auto; font-size: 5rem; color: #fff; font-family: 'Noto Serif JP', serif; font-weight: 700; font-style: normal; padding: 120px 0 20px 0; }
h1 span{ font-size: 2rem; font-family: 'Lexend Deca', sans-serif; font-weight: 700; font-style: normal; margin-left: 20px; }


h2{ width: 1140px; font-size: 4.5rem; letter-spacing: 10px; text-align: center; color: #221815; font-family: 'Noto Serif JP', serif; font-weight: 700; font-style: normal; border-bottom: 1px solid #d0171e; padding: 0 0 20px 0; margin: 0 auto 20px auto; }
h2:first-letter{ color: #da460b; }

h3{ background: #fff; font-size: 2.5rem; font-weight: 700; letter-spacing: 3px; padding: 10px 15px; border-radius: 5px; margin-bottom: 40px; }
h3 span{ border-left: 6px solid #d0171e; padding-left: 20px; }


/* ぱんくず */
#breadcrumbs{ width: 1200px; margin: 0 auto; z-index: 5; padding-top: 40px; }  
#breadcrumbs ol{  } 
#breadcrumbs ol li{ display: inline-block; position: relative; font-family: 'Noto Sans JP', sans-serif; font-weight: 400; font-style: normal; }
#breadcrumbs ol li:before{ content: ">"; display: block; position: absolute; top: .5em; left: 0px; color: #bbb; font-size: 1.2rem; }
#breadcrumbs ol li:first-child:before{ content: ""; }
#breadcrumbs ol li a{ color: #bbb; font-size: 1.2rem; margin: 0 0 0 13px; font-family: 'Noto Sans JP', sans-serif; font-weight: 400; font-style: normal; }
#breadcrumbs ol li:first-child a{ margin: 0 0 0 0; }
#breadcrumbs ol li a:hover{ color: #db460b; }

/* ----------------------------------------------------------
 contents
---------------------------------------------------------- */
/* 鳥くるりん */
.topOverLay {
position: fixed;
top: 0;
left: 0;
background-color: rgba(0, 0, 0, 1);
width: 100%;
height: 100%;
color: #fff;
z-index: 100;
}

.topOverLayInner {
position: absolute;
margin: auto;
top: 30%;
left: 0%;
right: 0%;
/*
display: flex;
justify-content: space-between;
align-items: center;
*/
width: 100%;
max-width: 1000px;
}
.topOverLay .overlay-img {
margin: auto;
/* width: 30%; */
}
.topOverLay .overlay-message {
/*
font-size: small;
margin-top: 10px;
font-family: 'Noto Serif JP', serif; font-weight: 700; font-style: normal;
*/
}

.topOverLayInner {
position: absolute;
margin: auto;
text-align: center;
/*
top: 30%;
left: 10%;
right: 10%;
*/
}
.topOverLay .overlay-img  {
width: 300px;
animation: rotate-anime 1.3s linear;
animation-timing-function: ease-in;
transition:all 0.4s ease-in-out;
}
.topOverLay .overlay-message {
font-size: 7rem;
letter-spacing: 40px;
width: 100%;
font-family: 'Noto Serif JP', serif; font-weight: 700; font-style: normal;
}
.overlay-message span {
display: inline-block;
transform-origin: 50% 50% -25px;
transform-style: preserve-3d;
animation: loading 1.6s;
}
.overlay-message span:nth-child(2){ animation-delay: .1s; }
.overlay-message span:nth-child(3){ animation-delay: .2s; }
.overlay-message span:nth-child(4){ animation-delay: .3s; }
.overlay-message span:nth-child(5){ animation-delay: .4s; }
.overlay-message span:nth-child(6){ animation-delay: .5s; }
.overlay-message span:nth-child(7){ animation-delay: .6s; }

@keyframes loading {
	0%{ transform: rotateX(360deg); }
	70%{ transform: rotateX(0); }
}
@keyframes rotate-anime{
	0% { opacity: 0; transform: rotate(0) scale(0); }
	50%{ opacity: 1; transform: rotate(280deg) scale(1.2); }
	58%{ opacity: 1; transform: rotate(300deg) scale(1.2); }
	78%{ opacity: 1; transform: rotate(-360deg) scale(1); }	
	100%{ opacity: 1; transform: rotate(-360deg) scale(1); }
}	
/*
@media screen and (max-width: 1024px) {

.topOverLayInner {
width: 100%;
position: relative;
margin: 0 auto;
top: 30%;
left: 0%;
right: 0%;
display: block;
}
.topOverLay .overlay-message {
font-size: 50px;
letter-spacing: 20px;
width: 100%;
font-family: 'Noto Serif JP', serif; font-weight: 700; font-style: normal;
text-align: center;
margin-left: 6px;
overflow: hidden;
}
.topOverLay .overlay-img {
width: 280px;
animation: rotate-anime 1.3s linear;
animation-timing-function: ease-in;
transition: all 0.4s ease-in-out;
}

}
*/
@media screen and (max-width: 680px) {
.topOverLayInner {
width: 100%;
position: relative;
margin: 0 auto;
top: 30%;
left: 0%;
right: 0%;
display: block;
}
.topOverLay .overlay-message {
font-size: 25px;
letter-spacing: 20px;
width: 100%;
font-family: 'Noto Serif JP', serif; font-weight: 700; font-style: normal;
text-align: center;
margin-left: 6px;
overflow: hidden;
}
.topOverLay .overlay-img {
width: 180px;
animation: rotate-anime 1.3s linear;
animation-timing-function: ease-in;
transition: all 0.4s ease-in-out;
}
}



#topImg{ position: relative; }
.topImg{ position: relative; width: 1300px; height: 700px; margin: 0 auto 80px auto; }

.topImgTxt{ z-index: 2; position: absolute; width: 760px; height: 260px; top: 0; left: 0; right: 0; bottom: 0; margin: auto; padding: 30px; background: rgba(0,0,0,0.5); font-family: 'Noto Serif JP', serif; font-weight: 600; font-style: normal; }
.topImgTit01{ color: #fff; font-size: 3rem; text-align: center; letter-spacing: 2px; padding-top: 20px; }
.topImgTit02{ color: #fff; font-size: 8.5rem; text-align: center; letter-spacing: 4px; }


.top_info{ max-width: 1300px; width: 90%; margin: 0 auto 100px auto; }
.top_info_list{ display: flex; justify-content: space-between; }
.top_info_item{ flex-basis: 48%; }
.top_info_item_news{}
.top_info_item_column{}



.topNews{ margin-bottom: 40px; }
.topNews01{ width: 100%; margin: 0 auto; }
.topNewsTit{ display: flex; align-items: center; padding: 20px 0; background: linear-gradient(to right, rgba(219,70,11,1) 0%,rgba(128,0,0,1) 25%,rgba(128,0,0,1) 100%);  }
.topNewsTit01{ color: rgba(255,255,255,1); font-size: 3rem; font-family: 'Lexend Deca', sans-serif; font-weight: 600; font-style: normal; margin-right: 40px; margin-left: 100px; }
.topNewsTit01 span{ color: rgba(255,255,255,0.6); }
.topNewsTit02{ font-size: 1.4rem; color: #fff; letter-spacing: 2px; font-family: 'Noto Serif JP', serif; font-weight: 400; font-style: normal; padding-top: 6px; }
.topNewsTxt{ flex-basis: 100%; padding: 0; }
.topNewsTxt ul{  }
.topNewsTxt li{ display: flex; align-items: center; position: relative; padding-bottom: 20px; border-bottom: 1px solid #c5c5c5; margin-top: 20px; }
.topNewsTxt li:after{ position: absolute; content: ""; display: block; border-bottom: 1px solid #c9161d; bottom: -1px; width: 13%; }
.topNewsDate01{ flex-basis: 20%; color: #8c8c8c; font-size: 1.5rem; padding-left: 5px; font-family: 'Lexend Deca', sans-serif; font-weight: 200; font-style: normal; }
.topNewsTit03{ flex-basis: 75%; }
.topNewsTit03 a{ color: #221815; font-size: 1.6rem; }
.topNewsTit03 a:hover{ color: #c9161d; }



.topAbout{ width: 1030px; margin: 0 auto 100px auto; }
.topAboutTit01{ font-size: 4rem; letter-spacing: 10px; text-align: center; color: #221815; font-family: 'Noto Serif JP', serif; font-weight: 700; font-style: normal; }
.topAboutTit01:first-letter{ color: #da460b; }
.topAboutTit02{ font-size: 2rem; text-align: center; color: #221815; font-family: 'Lexend Deca', sans-serif; font-weight: 700; font-style: normal; margin-bottom: 50px; }
.topAboutTit02:first-letter{ color: #da460b; }
.topAboutTit03{ font-size: 3.2rem; color: #fff; text-align: center; letter-spacing: 2px; font-family: heisei-kaku-gothic-std, sans-serif; font-weight: 900; font-style: normal; width: 80%; margin: 0 auto; position: relative; display: block; padding: 25px 20px 20px 20px; background: #800000; }
.topAboutTit03:before{ position: absolute; content: ""; top: 100%; left: 50%; margin-left: 15px; border: 15px solid transparent; border-top: 15px solid #800000;  }
.topAboutTit03 p{ margin: 0; padding: 0; }
.topAbout span{ color: #d8d800; font-size: 4.5rem; margin: 0 3px; }
.topAboutTxt{ background: #f5f5f5; font-size: 1.7rem; color: #333; font-weight: 500; border-radius: 15px; padding: 80px 40px 40px 40px; margin-top: -40px; }



.topKouji{ width: 1200px; margin: 0 auto 60px auto; }
.topKouji ul{ display: flex; justify-content: space-between; }
.topKouji li{ flex-basis: 30%; position: relative; }
.topKoujiTit{ width: 90%; margin: auto; position: absolute; top: -30px; left: 0; right: 0; display: flex; align-items: center; }
.bgKenchiku{ background-color: #006500; }
.bgDoboku{ background-color: #00468c; }
.bgReform{ background-color: #b25900; }

.colorKenchiku{ background-color: #006500; }
.colorDoboku{ background-color: #00468c; }
.colorReform{ background-color: #b25900; }

.realestate-newhouse{ background-color: #da460b; }
.realestate-usedhouse{ background-color: #da460b; }
.realestate-property{ background-color: #da460b; }
.realsetate-investmentproperty{ background-color: #da460b; }
.realestate-commercialproperty{ background-color: #da460b; }
.realestate-rental{ background-color: #da460b; }
.realestate-others{ background-color: #da460b; }


.topKoujiIco01{ background: #241b18; width: 60px; height: 60px; text-align: center; }
.topKoujiIco01 i{ font-size: 3.5rem; color: #fff; line-height: 60px; }
.topKoujiTit01{ color: #fff; font-size: 1.8rem; padding: 10px 10px 10px 20px; letter-spacing: 2px; font-family: 'Noto Serif JP', serif; font-weight: 600; font-style: normal; }
.topKoujiArrow{  }
.topKoujiArrow:before{ position: absolute; content: ""; display: block; border-width: 5px 10px 5px 10px; border-style: solid; border-color: transparent; border-left-color: #fff; right: 10px; top: 25px;  }
.topKoujiImg{ margin-bottom: 20px; }
.topKoujiImg img{ width: 100%; height: auto; }
.topKoujiTxt{ font-size: 1.6rem; }

.works_sec{ width: 1200px; margin: 0 auto; }
.works_sec ul{ display: flex; flex-wrap: wrap; justify-content: flex-start; }
.works_sec li{ flex-basis: 31%; margin: 0 1% 60px 1%; }

.topAdvantage{ background-color: #f5f5f5; position: relative; padding-bottom: 40px; margin-bottom: 100px; }
.topAdvantageTit{ width: 100%; position: absolute; top: -180px; left: 0;
	background-image: url("../images/bg_tit01.png"),url("../images/bg_tit02.png");
	background-repeat: no-repeat, no-repeat;
	background-position: 250px bottom, left bottom;
	background-size: auto, auto;
min-height: 224px; }
.topAdvantageTit p{ width: 1200px; margin: 0 auto; font-size: 5rem; color: #fff; font-family: 'Noto Serif JP', serif; font-weight: 700; font-style: normal; padding: 120px 0 20px 0; }
.topAdvantageTit span{ font-size: 2rem; font-family: 'Lexend Deca', sans-serif; font-weight: 700; font-style: normal; margin-left: 20px; }
.topAdvantage01{ width: 960px; margin: 0 auto; padding-top: 100px; }
.topAdvantage01Tit{ font-size: 3.5rem; color: #4c2c1d; margin-bottom: 40px; text-align: center; font-family: 'Noto Serif JP', serif; font-weight: 700; font-style: normal; }
.topAdvantage01Txt{  }
.topAdvantage01Txt p{ font-size: 1.8rem; color: #4c2c1d; line-height: 1.7; margin-bottom: 20px; }


.top_sec01_wrap{ }
.top_sec01{ width: 1200px; margin: 0 auto 100px auto; display: flex; justify-content: space-between; }
.top_sec01 h2{ width: 100%; }

.topWorks{ flex-basis: 50%; padding-right: 1.9%; border-right: 1px solid #ccc; }

.topWorksSec{}
.topWorksSec ul{ display: flex; flex-wrap: wrap; justify-content: space-between; }
.topWorksSec li{ flex-basis: 48%; margin-bottom: 40px; }
.topWorksSec li a:hover{ opacity: .6; }
.topWorksSecImg{ margin-bottom: 10px; }
.topWorksSecImg img{ width: 100%; height: auto; }
.topWorksSecTit{ display: flex; justify-content: space-between; align-items: center; font-size: 1.4rem; font-weight: 500; }
/* .topWorksSecTit{ display: flex; justify-content: space-between; flex-wrap: wrap; align-items: center; font-size: 1.4rem; font-weight: 500; } */
.topWorksSecCat{ display: block; flex-basis: 28%; color: #fff; font-size: 1.2rem; text-align: center; padding: 5px 3px; letter-spacing: 1px; margin-right: 5px; }
.topWorksSecTit p{ flex-basis: 70%; margin-top: 5px; height: 40px; }
/* .topWorksSecTit p{ flex-basis: 100%; margin-top: 5px; height: 40px; } */

.works-kenchiku{ background-color: #060; }
.works-doboku{ background-color: #00468c; }
.works-reform{ background-color: #b25900; }

.realestate_cat{ background-color: #da460b; }

.top_works_btn{ width: 250px; margin: 0 auto;  }
.top_works_btn a{ display: block; font-size: 1.8rem; color: #fff; text-align: center; padding: 15px; border-radius: 10px; background-color: #da460b; border: 1px solid #da460b; }
.top_works_btn a:hover{ background-color: #fff; color: #da460b; }


.top_realestate{ flex-basis: 50%; padding-left: 2%; }
.top_realestate_sec{}
.top_realestate_list{ display: flex; justify-content: space-between; flex-wrap: wrap; margin-bottom: 0px; }
.top_realestate_item{ flex-basis: 48%; margin-bottom: 40px; }
.top_realestate_item a:hover{ opacity: .6; }



#topBtn{ width: 100%; overflow: hidden; margin-bottom: 80px; }
#topBtn ul{ display: flex; justify-content: space-between; }
#topBtn ul li{ flex-basis: 33.3333%; position: relative; border-right: 1px solid #fff; }
#topBtn ul li:last-child{ border-right: none; }
#topBtn ul li .topSecTit{ text-align: center; z-index: 1; position: relative; }

#topBtn ul li .topSecTit01{ color: #fff; font-size: 4rem; letter-spacing: 3px; font-family: 'Noto Serif JP', serif; font-weight: 600; font-style: normal; margin-bottom: 20px; }
#topBtn ul li .topSecTit02{ color: #fff; font-size: 2.5rem; font-family: 'Lexend Deca', sans-serif; font-weight: 700; font-style: normal; margin-bottom: 30px; letter-spacing: 3px; }
#topBtn ul li a{ display: block; overflow: hidden; }
#topBtn ul li .topSecBtn01{ width: 40%; margin: 0 auto; color: #fff; font-size: 1.5rem; text-align: center; border: 1px solid #fff; padding: 10px; font-family: 'Lexend Deca', sans-serif; letter-spacing: 2px; font-weight: 700; font-style: normal; position: relative; }
#topBtn ul li .topSecBtn01:before{ position: absolute; content: ""; display: block; border-width: 4px 7px 4px 7px; border-style: solid; border-color: transparent; border-left-color: #fff; right: 15px; top: 18px; }
#topBtn ul li .topSecImg { position: relative; overflow: hidden; text-align: center; padding: 250px 0; }
#topBtn ul li.topSecImg01 .topSecImg:after {
	position: absolute;
	content: "";
	display: block;
	width: 100%;
	height: 100%;
	top: 0;
	background: url("../images/btn_faq01.jpg") no-repeat center center;
	-webkit-background-size: cover;
	-moz-background-size: cover;
	-ms-background-size: cover;
	background-size: cover;
	-webkit-transition: all .3s ease-out;
	-moz-transition: all .3s ease-out;
	-ms-transition: all .3s ease-out;
	transition: all .3s ease-out;
}
#topBtn ul li.topSecImg02 .topSecImg:after {
	position: absolute;
	content: "";
	display: block;
	width: 100%;
	height: 100%;
	top: 0;
	background: url("../images/btn_company01.jpg") no-repeat center center;
	-webkit-background-size: cover;
	-moz-background-size: cover;
	-ms-background-size: cover;
	background-size: cover;
	-webkit-transition: all .3s ease-out;
	-moz-transition: all .3s ease-out;
	-ms-transition: all .3s ease-out;
	transition: all .3s ease-out;
}
#topBtn ul li.topSecImg03 .topSecImg:after {
	position: absolute;
	content: "";
	display: block;
	width: 100%;
	height: 100%;
	top: 0;
	background: url("../images/btn_recruit01.jpg") no-repeat center center;
	-webkit-background-size: cover;
	-moz-background-size: cover;
	-ms-background-size: cover;
	background-size: cover;
	-webkit-transition: all .3s ease-out;
	-moz-transition: all .3s ease-out;
	-ms-transition: all .3s ease-out;
	transition: all .3s ease-out;
}

#topBtn ul li .topSecImg:hover:after {
	opacity: 1;
	-moz-transform: scale(1.1);
	-webkit-transform: scale(1.1);
	-ms-transform: scale(1.1);
	transform: scale(1.1);
}
#topBtn ul li .topSecImg:before{ z-index: 1; content: ""; display: block; position: absolute; top: 0; left: 0; right: 0; bottom: 0; background: rgba(0,0,0,0.6); }


.aboutSec{ margin-bottom: 150px; }
.aboutSec ul{}
.aboutSec li{ min-height: 500px; margin-bottom: 80px; }
.aboutSecKenchiku{ background: url("../about/images/img_kenchiku01.jpg") no-repeat top right; background-size: 53% auto; }
.aboutSecDoboku{ background: url("../about/images/img_doboku01.jpg") no-repeat top right; background-size: 53% auto; }
.aboutSecReform{ background: url("../about/images/img_realestate01.jpg") no-repeat top right; background-size: 53% auto; }
.aboutSecTxt{ width: 1200px; margin: 0 auto; }
.aboutSecTit{ width: 40%; font-size: 3.5rem; font-family: 'Noto Serif JP', serif; font-weight: 700; font-style: normal;  display: flex; align-items: center; letter-spacing: 3px; margin-bottom: 30px; }
.aboutSecIco{ width: 90px; height: 90px; color: #fff; text-align: center; margin-right: 30px; font-size: 5rem; }
.ico-kenchiku{ background: linear-gradient(135deg, rgba(33,24,20,1) 0%,rgba(33,24,20,1) 50%,rgba(0,102,0,1) 50%,rgba(0,102,0,1) 100%); line-height: 90px; }
.ico-doboku{ background: linear-gradient(135deg, rgba(33,24,20,1) 0%,rgba(33,24,20,1) 50%,rgba(0,70,140,1) 50%,rgba(0,70,140,1) 100%); line-height: 90px; }
.ico-reform{ background: linear-gradient(135deg, rgba(33,24,20,1) 0%,rgba(33,24,20,1) 50%,rgba(178,89,0,1) 50%,rgba(178,89,0,1) 100%); line-height: 90px; }
.aboutSecTit01{ font-size: 3rem; }
.aboutSecTxt01{ width: 40%; font-size: 1.7rem; }
.aboutSecImg{}


.advantageSec{ margin-bottom: 100px; }
.advantageSec ul{ width: 1200px; margin: 0 auto; display: flex; justify-content: space-between; flex-wrap: wrap; }
.advantageSec li{ flex-basis: 48%; margin-bottom: 80px; }
.advantageSecTxt{ font-size: 1.7rem; line-height: 1.6; margin-top: 20px; }
.advantageSec01{ width: 960px; margin: 0 auto; }



.companyNav{ width: 840px; background-color: #fff; padding: 20px; border-radius: 10px; margin: 0 auto 80px auto; }
.companyNav ul{ display: flex; justify-content: space-between; }
.companyNav li{ position: relative; }
.companyNav li a{ font-size: 1.6rem; font-weight: 500; padding-left: 30px; }
.companyNav li:before{ position: absolute; display: block; font-family: 'icomoon'; content: "\e900"; font-size: 1rem; color: #fff; }
.companyNav li:before{ position: absolute; display: block; top: 5px; background-color: #d0171e; width: 20px; height: 20px; border-radius: 100%; text-align: center; line-height: 20px; }



.greetingSec{ width: 1200px; margin: 0 auto 100px auto; }
.greetingSec ul{ display: flex; justify-content: space-between; flex-direction: row-reverse; }
.greetingSec li:nth-child(1){ flex-basis: 72%; }
.greetingSec li:nth-child(2){ flex-basis: 25%; text-align: right; }
.greetingSecTxt{ font-size: 1.8rem; line-height: 1.7; }
.greetingSecTxt p{ margin-bottom: 30px; }
.greetingSecImg{}


.philosophySec{ width: 1140px; margin: 0 auto 100px auto; }
.philosophySecImg{ text-align: center; }

.companySec{ width: 1120px; margin: 0 auto 100px auto; }
.tableSec01{ margin-bottom: 60px; }
.tableSec01 table{ width: 100%; border-collapse: collapse; }
.tableSec01 table th{ width: 30%; font-size: 1.6rem; padding: 15px; border-bottom: 1px solid #ccc; }
.tableSec01 table td{ width: 70%; font-size: 1.6rem; padding: 15px; border-bottom: 1px solid #ccc; }


.accessSec{ width: 1140px; margin: 0 auto 100px auto; }
.accessSecAdd{ font-size: 1.6rem; margin-bottom: 40px; }
.accessSecMap{}


.contactNav{ width: 470px; background-color: #fff; padding: 20px; border-radius: 10px; margin: 0 auto 80px auto; }
.contactNav ul{ display: flex; justify-content: space-between; }
.contactNav li{ position: relative; }
.contactNav li a{ font-size: 1.6rem; font-weight: 500; padding-left: 30px; }
.contactNav li:before{ position: absolute; display: block; font-family: 'icomoon'; content: "\e900"; font-size: 1rem; color: #fff; }
.contactNav li:before{ position: absolute; display: block; top: 5px; background-color: #d0171e; width: 20px; height: 20px; border-radius: 100%; text-align: center; line-height: 20px; }

.contactSec{ width: 1000px; margin: 0 auto 100px auto; }

.privacySec{ width: 1000px; margin: 0 auto 100px auto; }
.privacySecTxt{ font-size: 1.6rem; margin-bottom: 60px; }
.privacySecTxt ol{ margin: 10px 0 0 30px; }
.privacySecTxt ol li{ list-style-type: decimal; line-height: 1.6; }


.sitemapSec{ width: 1140px; margin: 0 auto 100px auto; }
.sitemapSec > ul > li{ position: relative; padding-left: 25px; margin-bottom: 30px; }
.sitemapSec > ul > li:after{ position: absolute; display: block; content: ""; top: 8px; left: 0; width: 8px; height: 8px; border: 3px solid #db460b; border-radius: 100%; }
.sitemapSec > ul > li a{ font-size: 1.8rem; color: #333; font-weight: 700; }
.sitemapSec > ul > li a:hover{ color: #db460b; }
.sitemapSec > ul > li > ul{ margin: 10px 0 0 25px; }
.sitemapSec > ul > li > ul > li{ list-style-type: disc; color: #800000; line-height: 1.4; }
.sitemapSec > ul > li > ul > li > a{ font-size: 1.4rem; }

.recruitSec{ width: 1140px; margin: 0 auto 100px auto; }
.recruitSec01{ padding-bottom: 40px; border-bottom: 1px solid #ccc; margin-bottom: 40px; }


/*
.realestate_sec01 ul li{ position: relative; display: block; padding: 5px 0 5px 15px; border-bottom: 0; }
.realestate_sec01 ul li:before{ position: absolute; top: 14px; left: 0; display: block; content: ""; width: 8px; height: 8px; border-radius: 100%; background-color: #e60012; }
*/
.gallery_sec{}
.gallery_list{ display: flex; justify-content: flex-start; flex-wrap: wrap; padding: 0 !important; }
.gallery_item{ flex-basis: 31%; margin: 0 1% 20px 1%; }
.realestate_sec01 li.gallery_item{ padding: 0 !important; }
.realestate_sec01 li.gallery_item:before{ display: none !important; }
.gallery_img{}
.gallery_img img{ width: 100%; height: 254px; object-fit: cover; border: 1px solid #ccc !important; }


/* ----------------------------------------------------------
 SP CSS
---------------------------------------------------------- */
@media screen and (max-width:680px){
img,video {
  max-width: 100%;
  height: auto;
}

/* フォントサイズ10px=62.5% */
html{ font-size: 60%; }

/* 基本のフォントサイズ */
body{ font-size: 1.8rem; height: auto !important; height: 100%; background-image: none; }

/* 非表示用 */
.noneSP		{ display: none !important; }
/* ----------------------------------------------------------
 link
---------------------------------------------------------- */
/* ----------------------------------------------------------
 header
---------------------------------------------------------- */
header{ min-height: auto; }
#header{ width: 100%; display: block; margin-bottom: 30px; }
.headerLogo{ width: 30%; flex-basis: 25%; text-align: center; padding: 10px 5px 5px 5px; margin: 0 auto; min-height: 48px; }
.headerLogo a:hover{ opacity: 0.6; }

#gNavi{ display: none; }

.headerTel{ display: none; }
.headerContact{ display: none; }


.scroll-prevent {
  position: fixed;
  z-index: -1;
  width: 100%;
  height: 100%;
}
#nav-tgl {
  display: none;
}
.nav-tgl-btn {
  cursor: pointer;
  position: fixed;
  top: 0;
  right: 0;
  margin: 0;
}
.open {
  z-index: 4;
  width: 48px;
  height: 48px;
  background: #000;
  transition: background .6s, transform .6s cubic-bezier(0.215, 0.61, 0.355, 1);
}
.open::before,
.open::after {
  content: "";
}
.open span,
.open::before,
.open::after {
  content: "";
  position: absolute;
  top: calc(50% - 1px);
  right: 30%;
  width: 40%;
  border-bottom: 2px solid white;
  transition: transform .6s cubic-bezier(0.215, 0.61, 0.355, 1);
}
.open::before {
  transform: translateY(-8px);
}
.open::after {
  transform: translateY(8px);
}
.close {
  z-index: 1;
  width: 100%;
  height: 100%;
  pointer-events: none;
  transition: background .6s;
}
#nav-tgl:checked + .open {
  background: #000;
  transform: translateX(-250px);
}
#nav-tgl:checked + .open span {
  transform: scaleX(0);
}
#nav-tgl:checked + .open::before {
  transform: rotate(45deg);
}
#nav-tgl:checked + .open::after {
  transform: rotate(-45deg);
}
#nav-tgl:checked ~ .close {
  pointer-events: auto;
  background: rgba(0,0,0,.3);
}

.content-wrapper {
  transition: transform .6s cubic-bezier(0.215, 0.61, 0.355, 1);
}
#nav-tgl:checked ~ .content-wrapper {
  transform: translateX(-250px);
}



/* メニューデザイン */
.drower-menu {
  z-index: 999;
  position: fixed;
  overflow: auto;
  -webkit-overflow-scrolling: touch;
  overflow-scrolling: touch;
  top: 0;
  right: 0;
  width: 250px;
  height: 100%;
  margin: 0;
  padding: 20px 30px;
  box-sizing: border-box;
  background: rgba(0,0,0,0.9);
  transform: translateX(100%);
  transition: transform .6s cubic-bezier(0.215, 0.61, 0.355, 1);
}
.drower-menu a {
  display: block;
  color: white;
  padding: 8px;
  text-decoration: inherit;
  transition: background .6s;
  font-size: 1.4rem;
}
.drower-menu a:hover {
  background: black;
}
#nav-tgl:checked ~ .drower-menu {
  transform: none;
}

.drower-menu-list > ul > li{ position: relative; padding-left: 15px; }
.drower-menu-list > ul > li:after{ position: absolute; display: block; content: ""; top: 13px; left: 0; width: 8px; height: 8px; border: 3px solid #db460b; border-radius: 100%; }
.drower-menu-list > ul > li a{ font-size: 1.6rem; color: #fff; font-weight: 700; }
.drower-menu-list > ul > li a:hover{ color: #db460b; }
.drower-menu-list > ul > li > ul{ margin: 5px 0 0 15px; }
.drower-menu-list > ul > li > ul > li{ list-style-type: disc; color: #800000; line-height: 1.2; }
.drower-menu-list > ul > li > ul > li > a{ font-size: 1.3rem; }



/* ----------------------------------------------------------
 footer
---------------------------------------------------------- */
footer > ul > li{ flex-basis: 100%; }
footer > ul > li:nth-child(1){ width: 100%; padding-left: 0; background: #e60012; }
footer > ul > li:nth-child(2){ display: none; }
.footerLogo{ height: 30%; padding-top: 9%; padding-bottom: 9%; text-align: center; background-color: #e70113; }
.footerLogo a:hover{ opacity: 0.6; }
.footerInfo{ color: #fff; font-size: 1.6rem; padding: 5%; }
.footerAdd{ margin: 5% 0; background-color: #db460b; }
.footerContact{ flex-wrap: wrap; margin: 0 auto; padding: 15px; }
.footerTel{ flex-basis: 100%; font-size: 3.5rem; margin-bottom: 10px; }
.footerTel i{ color: #d0171e; margin-right: 5px; font-size: 2.5rem; padding-top: 3px; }
.footerTel p{}
.footerTel span{ flex-basis: 100%; font-size: 1.3rem; color: #666; text-align: center; }
.footerBtn{ flex-basis: 100%; }
.footerBtn a{ display: block; color: #fff; text-align: center; font-size: 1.6rem; font-weight: 900; border: 2px solid #800000; background: #800000; padding: 15px 10px; }
.footerBtn a i{ margin-right: 10px; }
.footerBtn a:hover{ background: #fff; color: #800000; }
.footerCopyright{ font-size: .9rem; color: #fff; margin-top: 5%; margin-bottom: 40px; text-align: center; }

.footerSitemap{ display: none; }

.footerYoutube{ width: 100%; margin: 20px auto 0 auto;  line-height: 1; }

.footer_btn_youtube01{ display: none; }



/* ページ下部 固定メニュー */
.btmMenu { position: fixed; bottom: -50px; width: 100%; border-top: 1px solid #333; z-index: 99; }
.btmMenu li { float: left; width: 50%; }
.btmMenu li:first-child a { border-right: 1px solid #333; }
.btmMenu li a { display: block; height: 49px; text-align: center; font-size: 1.6rem; padding: 15px 5px 5px; background-color: #fff; }
.btmMenu li a i{ font-size: 1.8rem; margin-right: 10px; }
.btmMenu li a:hover { background-color: #666464; color: #fff; }
.btmMenu ul:after { content: ''; clear: both; display: block; }


/* ----------------------------------------------------------
 hx
---------------------------------------------------------- */
.h1Wrap{ position: relative; margin-bottom: 60px; }
h1{ width: 100%; position: inherit; top: auto; left: auto;
	background-image: none;
	background: linear-gradient(135deg, rgba(128,0,0,1) 0%,rgba(128,0,0,1) 50%,rgba(219,70,11,1) 69%,rgba(219,70,11,1) 100%);
	min-height: auto; z-index: -1; }
h1 p{ width: 90%; margin: 0 auto; font-size: 3.3rem; padding: 20px 0; }
h1 span{ font-size: 1.2rem; margin-left: 20px; }


h2{ width: 100%; font-size: 2.8rem; letter-spacing: 4px; padding: 0 10px 20px 10px; margin: 0 auto 20px auto; }

h3{ background: #fff; font-size: 2.3rem; font-weight: 700; letter-spacing: 3px; padding: 10px 15px; border-radius: 5px; margin-bottom: 40px; }
h3 span{ border-left: 6px solid #d0171e; padding-left: 20px; }

/* ぱんくず */
#breadcrumbs{ display: none; }  

/* ----------------------------------------------------------
 contents
---------------------------------------------------------- */
.topImg{ width: 100%; height: auto; }
.topImg img{ width: 100%; height: auto; }

.topImgTxt{ z-index: 1; position: inherit; width: 100%; height: auto; padding: 30px; background: linear-gradient(to right, rgba(219,70,11,1) 0%,rgba(128,0,0,1) 25%,rgba(128,0,0,1) 40%,rgba(128,0,0,1) 100%); }
.topImgTit01{ font-size: 1.5rem; padding-top: 0px; }
.topImgTit02{ font-size: 4rem; }

.topImgBtn{ position: absolute; right: 10px; bottom: -80px; text-align: right; z-index: 3; }
.topImgBtn img{ width: 35%; height: auto; }
.topImgBtn a:hover{ opacity: 0.6; }



.top_info{ margin: 0 auto 40px auto; }
.top_info_list{ flex-wrap: wrap; }
.top_info_item{ flex-basis: 100%; }
.top_info_item_news{}
.top_info_item_column{}	


.topNews{ margin-bottom: 20px; background: none; }
.topNews01{ width: 100%; }
.topNewsTit{ flex-basis: 15%; padding: 15px 0 0 0; background: none; }
.topNewsTit01{ color: rgba(0,0,0,1); font-size: 2rem; margin-right: 0; margin-left: 0; }
.topNewsTit01 span{ color: rgba(0,0,0,0.6); }
.topNewsTit02{ display: none; }
.topNewsTxt{ flex-basis: 100%; padding: 0; }
.topNewsTxt li{ flex-wrap: wrap; padding-bottom: 10px; margin-top: 10px; }
.topNewsTxt li:after{ width: 25%; }
.topNewsDate01{ flex-basis: 100%; font-size: 1.2rem; padding-left: 0px; }
.topNewsTit03{ flex-basis: 100%; line-height: 1.2; }
.topNewsTit03 a{ font-size: 1.4rem; }

.topAbout{ width: 90%; margin: 0 auto 100px auto; }
.topAboutTit01{ font-size: 3rem; letter-spacing: 5px; }
.topAboutTit01:first-letter{ color: #da460b; }
.topAboutTit02{ font-size: 1.5rem; text-align: center; margin-bottom: 40px; }
.topAboutTit02:first-letter{ color: #da460b; }

.topAboutTit03{ font-size: 2.2rem; width: 90%; margin: 0 auto; padding: 20px 15px 15px 15px; }
.topAboutTit03:before{ left: 45%; margin-left: 0px; }
.topAboutTit03 p{ margin: 0; padding: 0; }
.topAbout span{ font-size: 3.5rem; }
.topAboutTxt{ font-size: 1.5rem; padding: 80px 30px 30px 30px; margin-top: -40px; }


.topKouji{ width: 90%; margin: 0 auto; }
.topKouji ul{ flex-wrap: wrap; }
.topKouji li{ flex-basis: 100%; margin-bottom: 80px; }




.topAdvantage{ padding-bottom: 40px; margin-bottom: 60px; }
.topAdvantage01{ width: 90%; margin: 0 auto; padding-top: 50px; }
.topAdvantage01Tit{ font-size: 3rem; }
.topAdvantageTit{ width: 100%; position: inherit; top: auto; left: auto;
	background-image: none;
	background: linear-gradient(135deg, rgba(128,0,0,1) 0%,rgba(128,0,0,1) 50%,rgba(219,70,11,1) 69%,rgba(219,70,11,1) 100%);
min-height: auto; }
.topAdvantageTit p{ width: 100%; font-size: 2.5rem; padding: 15px 10px; }
.topAdvantageTit span{ display: none; }
.topAdvantage ul{ width: 100%; margin: 0 auto; padding-top: 30px; flex-wrap: wrap; }
.topAdvantage li{ flex-basis: 100%; margin-bottom: 80px; }
.topAdvantageTit01{ flex-wrap: wrap; margin: 0 10px 20px 10px; }
.topAdvantageNum{ font-size: 4rem; }
.topAdvantageTit02{ font-size: 1.8rem; flex-basis: 100%; }
.topAdvantageImg{ position: relative; }
.topAdvantageImg img{ width: 100%; height: auto; }
.topAdvantageBtn{ width: 50%; position: absolute; bottom: -20px; right: 20px; }
.topAdvantageBtn a{ display: block; color: #800000; background: #fff; font-size: 1.5rem; text-align: center; border: 1px solid #800000; padding: 10px; font-family: 'Lexend Deca', sans-serif; font-weight: 600; font-style: normal; position: relative; }
.topAdvantageBtn a:before{ position: absolute; content: ""; display: block; border-width: 3px 6px 3px 6px; border-style: solid; border-color: transparent; border-left-color: #800000; right: 10px; top: 18px; }
.topAdvantageBtn a:hover{ background: #800000; color: #fff; }
.topAdvantageBtn a:before:hover{ color: #fff; }


.top_sec01_wrap{ }
.top_sec01{ width: 100%; margin: 0 auto 0px auto; display: flex; justify-content: space-between; flex-wrap: wrap; }
.top_sec01 h2{ width: 100%; }

.topWorks{ flex-basis: 100%; width: 100%; padding: 0 5%; margin: 0 auto 100px auto; border-right: 0; }
.topWorksSec ul{ flex-wrap: wrap; }
.topWorksSec li{ flex-basis: 48%; margin-bottom: 30px; }
.topWorksSecImg{ margin-bottom: 10px; }
.topWorksSecImg img{ width: 100%; height: auto; }
.topWorksSecTit{ flex-wrap: wrap; font-size: 1.4rem; }
.topWorksSecCat{ display: inline-block; width: auto; color: #fff; font-size: 1rem; padding: 3px; flex-basis: 50%; }
.topWorksSecTit p{ flex-basis: 100%; display: block; }

.top_realestate{ flex-basis: 100%; width: 100%; padding: 0 5%; margin: 0 auto 60px auto; }




#topBtn{ width: 100%; overflow: hidden; margin-bottom: 80px; }
#topBtn ul{ flex-wrap: wrap; }
#topBtn ul li{ flex-basis: 100%; border-right: none; border-bottom: 1px solid #fff; }
#topBtn ul li .topSecTit{ text-align: center; z-index: 1; position: relative; }

#topBtn ul li .topSecTit01{ font-size: 3rem; margin-bottom: 10px; }
#topBtn ul li .topSecTit02{ font-size: 2rem;  margin-bottom: 20px; }
#topBtn ul li .topSecImg { position: relative; overflow: hidden; text-align: center; padding: 50px 0; }


.top_realestate{ width: 90%; margin: 0 auto 60px auto; }
.top_realestate_sec{}
.top_realestate_list{ flex-wrap: wrap; margin-bottom: 0px; }
.top_realestate_item{ flex-basis: 48%; margin-bottom: 30px; }



.aboutSec{ margin-bottom: 150px; }
.aboutSec li{ min-height: auto; margin-bottom: 80px; }
.aboutSecKenchiku{ background: none; }
.aboutSecDoboku{ background: none; }
.aboutSecReform{ background: none; }
.aboutSecTxt{ width: 100%; margin: 0 auto; }
.aboutSecTit{ width: 90%; font-size: 2.8rem; margin: 0 auto 30px auto; }
.aboutSecIco{ width: 60px; height: 60px; color: #fff; text-align: center; margin-right: 30px; font-size: 4rem; }
.ico-kenchiku{ line-height: 60px; }
.ico-doboku{ line-height: 60px; }
.ico-reform{ line-height: 60px; }
.aboutSecTxt01{ width: 90%; font-size: 1.6rem; margin: 0 auto 20px auto; }


.advantageSec{ margin-bottom: 100px; }
.advantageSec01{ width: 90%; margin: 0 auto; }
.advantageSec ul{ width: 100%; }
.advantageSec li{ flex-basis: 100%; margin-bottom: 60px; }
.advantageSecTxt{ width: 90%; font-size: 1.6rem; line-height: 1.6; margin: 20px auto 0 auto; }



.companyNav{ width: 90%; padding: 15px; margin: 0 auto 60px auto; }
.companyNav ul{ flex-wrap: wrap; }
.companyNav li{ flex-basis: 50%; margin-bottom: 5px; }
.companyNav li:last-child{ flex-basis: 100%; }
.companyNav li a{ font-size: 1.5rem; font-weight: 500; padding-left: 30px; }



.greetingSec{ width: 90%; margin: 0 auto 100px auto; }
.greetingSec ul{ flex-wrap: wrap;  }
.greetingSec li:nth-child(1){ flex-basis: 100%; margin-bottom: 20px; }
.greetingSec li:nth-child(2){ flex-basis: 100%; text-align: center; }
.greetingSecTxt{ font-size: 1.6rem; line-height: 1.7; }
.greetingSecTxt p{ margin-bottom: 30px; }
.greetingSecImg{}


.philosophySec{ width: 90%; margin: 0 auto 100px auto; }
.philosophySecImg{ text-align: center; }

.companySec{ width: 90%; margin: 0 auto 100px auto; }
.tableSec01{}
.tableSec01 table{ width: 100%; border-collapse: collapse; }
.tableSec01 table th{ width: 30%; font-size: 1.4rem; padding: 15px; border-bottom: 1px solid #ccc; }
.tableSec01 table td{ width: 70%; font-size: 1.4rem; padding: 15px; border-bottom: 1px solid #ccc; }


.accessSec{ width: 90%; margin: 0 auto 100px auto; }
.accessSecAdd{ font-size: 1.6rem; margin-bottom: 40px; }
.accessSecMap{ position: relative; padding-bottom: 52.63%; padding-top: 30px; height: 0; overflow: hidden; }
.accessSecMap iframe,
.accessSecMap object,
.accessSecMap embed{ position: absolute; top: 0; left: 0; width: 100%; height: 100%; }


.contactNav{ width: 50%; padding: 15px; margin: 0 auto 60px auto; }
.contactNav ul{ flex-wrap: wrap; }
.contactNav li{ flex-basis: 100%; margin-bottom: 5px; }
.contactNav li a{ font-size: 1.5rem; }

.contactSec{ width: 90%; margin: 0 auto 100px auto; }

.privacySec{ width: 90%; margin: 0 auto 100px auto; }
.privacySecTxt{ font-size: 1.6rem; margin-bottom: 60px; }
.privacySecTxt ol{ margin: 10px 0 0 30px; }
.privacySecTxt ol li{ list-style-type: decimal; line-height: 1.6; }

.sitemapSec{ width: 90%; margin: 0 auto 100px auto; }
.sitemapSec > ul > li:after{ top: 6px; }

.recruitSec{ width: 90%; }
.recruitSec01{ font-size: 1.4rem; }



.works_sec{ width: 90%; margin: 0 auto; }
.works_sec ul{ display: flex; flex-wrap: wrap; justify-content: space-between; }
.works_sec li{ flex-basis: 48%; margin-bottom: 60px; }



.gallery_sec{}
.gallery_list{ display: flex; justify-content: space-between; flex-wrap: wrap; padding: 0 !important; }
.gallery_item{ flex-basis: 49%; margin: 0 0 10px 0; }
.realestate_sec01 li.gallery_item{ padding: 0 !important; }
.realestate_sec01 li.gallery_item:before{ display: none !important; }
.gallery_img{}
.gallery_img img{ width: 100%; height: 154px; object-fit: cover; border: 1px solid #ccc !important; }


}
/* ----------------------------------------------------------
 SP CSS END
---------------------------------------------------------- */

/* ----------------------------------------------------------
 TAB CSS
---------------------------------------------------------- */
@media screen and (min-width:681px) and (max-width:1024px){

img,video {
  max-width: 100%;
  height: auto;
}

/* フォントサイズ10px=62.5% */
html{ font-size: 50%; }

/* 基本のフォントサイズ */
body{ font-size: 1.8rem; background-image: none; }

/* 非表示用 */
.noneTAB		{ display: none !important; }
/* ----------------------------------------------------------
 link
---------------------------------------------------------- */
/* ----------------------------------------------------------
 header
---------------------------------------------------------- */
header{ min-height: auto; }
#header{ width: 100%; display: block; margin-bottom: 30px; }
.headerLogo{ width: 18%; flex-basis: 25%; text-align: center; padding: 10px 5px 5px 5px; margin: 0 auto; min-height: 48px; }
.headerLogo a:hover{ opacity: 0.6; }

#gNavi{ display: none; }

.headerTel{ display: none; }
.headerContact{ display: none; }


.scroll-prevent {
  position: fixed;
  z-index: -1;
  width: 100%;
  height: 100%;
}
#nav-tgl {
  display: none;
}
.nav-tgl-btn {
  cursor: pointer;
  position: fixed;
  top: 0;
  right: 0;
  margin: 0;
}
.open {
  z-index: 2;
  width: 48px;
  height: 48px;
  background: #000;
  transition: background .6s, transform .6s cubic-bezier(0.215, 0.61, 0.355, 1);
}
.open::before,
.open::after {
  content: "";
}
.open span,
.open::before,
.open::after {
  content: "";
  position: absolute;
  top: calc(50% - 1px);
  right: 30%;
  width: 40%;
  border-bottom: 2px solid white;
  transition: transform .6s cubic-bezier(0.215, 0.61, 0.355, 1);
}
.open::before {
  transform: translateY(-8px);
}
.open::after {
  transform: translateY(8px);
}
.close {
  z-index: 1;
  width: 100%;
  height: 100%;
  pointer-events: none;
  transition: background .6s;
}
#nav-tgl:checked + .open {
  background: #000;
  transform: translateX(-350px);
}
#nav-tgl:checked + .open span {
  transform: scaleX(0);
}
#nav-tgl:checked + .open::before {
  transform: rotate(45deg);
}
#nav-tgl:checked + .open::after {
  transform: rotate(-45deg);
}
#nav-tgl:checked ~ .close {
  pointer-events: auto;
  background: rgba(0,0,0,.3);
}

.content-wrapper {
  transition: transform .6s cubic-bezier(0.215, 0.61, 0.355, 1);
}
#nav-tgl:checked ~ .content-wrapper {
  transform: translateX(-350px);
}



/* メニューデザイン */
.drower-menu {
  z-index: 999;
  position: fixed;
  overflow: auto;
  -webkit-overflow-scrolling: touch;
  overflow-scrolling: touch;
  top: 0;
  right: 0;
  width: 350px;
  height: 100%;
  margin: 0;
  padding: 20px 30px;
  box-sizing: border-box;
  background: rgba(0,0,0,0.9);
  transform: translateX(100%);
  transition: transform .6s cubic-bezier(0.215, 0.61, 0.355, 1);
}
.drower-menu a {
  display: block;
  color: white;
  padding: 8px;
  text-decoration: inherit;
  transition: background .6s;
  font-size: 1.4rem;
}
.drower-menu a:hover {
  background: black;
}
#nav-tgl:checked ~ .drower-menu {
  transform: none;
}

.drower-menu-list > ul > li{ position: relative; padding-left: 15px; }
.drower-menu-list > ul > li:after{ position: absolute; display: block; content: ""; top: 13px; left: 0; width: 8px; height: 8px; border: 3px solid #db460b; border-radius: 100%; }
.drower-menu-list > ul > li a{ font-size: 1.8rem; color: #fff; font-weight: 700; }
.drower-menu-list > ul > li a:hover{ color: #db460b; }
.drower-menu-list > ul > li > ul{ margin: 5px 0 0 15px; }
.drower-menu-list > ul > li > ul > li{ list-style-type: disc; color: #800000; line-height: 1.2; }
.drower-menu-list > ul > li > ul > li > a{ font-size: 1.5rem; }




/* ----------------------------------------------------------
 footer
---------------------------------------------------------- */
footer > ul > li{ flex-basis: 100%; }
footer > ul > li:nth-child(1){ width: 100%; padding-left: 0; background: #e60012; }
footer > ul > li:nth-child(2){ display: none; }
.footerLogo{ height: auto; padding-top: 5%; padding-bottom: 5%; text-align: center; }
.footerLogo a:hover{ opacity: 0.6; }
.footerInfo{ color: #fff; font-size: 1.6rem; padding: 5% 5% 1% 5%; }

.footerAdd{ text-align: center; }
.footerContact{  margin: 0 auto; }
.footerCopyright{ font-size: .9rem; color: #fff; margin-top: 5%; text-align: center; }

.footerSitemap{ display: none; }

.footerYoutube{ width: 100%; margin: 30px auto 0 auto; }


.footer_btn_youtube01{ display: none; }


/* ページ下部 固定メニュー */
.btmMenu { display: none; }

/* ----------------------------------------------------------
 hx
---------------------------------------------------------- */
.h1Wrap{ position: relative; margin-bottom: 250px; }
h1{ width: 100%; position: absolute; top: 0; left: 0;
	background-image: url("../images/bg_tit01.png"),none,url("../images/bg_h102.png"),none;
	background-repeat: no-repeat, no-repeat, no-repeat, no-repeat;
	background-position: -50px top, left 84px, 300px 80px, 180% bottom;
	background-size: 80% auto, auto, 80% auto, auto;
	min-height: 200px; z-index: -1; }
h1 p{ width: 90%; font-size: 5rem; padding: 50px 0 20px 0; }
h1 span{ font-size: 2rem; margin-left: 20px; }


h2{ width: 90%; font-size: 4.5rem; letter-spacing: 10px; text-align: center; color: #221815; font-family: 'Noto Serif JP', serif; font-weight: 700; font-style: normal; border-bottom: 1px solid #d0171e; padding: 0 0 20px 0; margin: 0 auto 30px auto; }
h2:first-letter{ color: #da460b; }

h3{ background: #fff; font-size: 2.5rem; font-weight: 700; letter-spacing: 3px; padding: 10px 15px; border-radius: 5px; margin-bottom: 40px; }
h3 span{ border-left: 6px solid #d0171e; padding-left: 20px; }


/* ぱんくず */
#breadcrumbs{ display: none; }  

/* ----------------------------------------------------------
 contents
---------------------------------------------------------- */
.topImg{ width: 100%; height: auto; }
.topImg img{ width: 100%; height: auto; }

.topImgTxt{ width: 660px; height: 160px; padding: 30px; }
.topImgTit01{ font-size: 2rem; padding-top: 0; }
.topImgTit02{ font-size: 6.5rem; letter-spacing: 4px; }

.topImgBtn{ position: absolute; right: 20px; bottom: 0px; text-align: right; z-index: 3; }
.topImgBtn img{ width: 50%; height: auto; }
.topImgBtn a:hover{ opacity: 0.6; }



.top_info{ width: 90%; margin: 0 auto 100px auto; }
.top_info_list{ display: flex; justify-content: space-between; }
.top_info_item{ flex-basis: 48%; }
.top_info_item_news{}
.top_info_item_column{}



.topNews{ margin-bottom: 0; }
.topNews01{ width: 100%; margin: 0 auto; }
.topNewsTit{ display: flex; align-items: center; padding: 20px 0; background: linear-gradient(to right, rgba(219,70,11,1) 0%,rgba(128,0,0,1) 25%,rgba(128,0,0,1) 100%);  }
.topNewsTit01{ color: rgba(255,255,255,1); font-size: 3rem; font-family: 'Lexend Deca', sans-serif; font-weight: 600; font-style: normal; margin-right: 40px; margin-left: 40px; }
.topNewsTit01 span{ color: rgba(255,255,255,0.6); }
.topNewsTit02{ font-size: 1.4rem; color: #fff; letter-spacing: 2px; font-family: 'Noto Serif JP', serif; font-weight: 400; font-style: normal; padding-top: 6px; }
.topNewsTxt{ flex-basis: 100%; padding: 0; }
.topNewsTxt ul{  }
.topNewsTxt li{ flex-wrap: wrap; position: relative; padding-bottom: 20px; border-bottom: 1px solid #c5c5c5; margin-top: 20px; }
.topNewsTxt li:after{ position: absolute; content: ""; display: block; border-bottom: 1px solid #c9161d; bottom: -1px; width: 13%; }
.topNewsDate01{ flex-basis: 100%; color: #8c8c8c; font-size: 1.5rem; padding-left: 5px; font-family: 'Lexend Deca', sans-serif; font-weight: 200; font-style: normal; }
.topNewsTit03{ flex-basis: 100%; }
.topNewsTit03 a{ color: #221815; font-size: 1.6rem; }
.topNewsTit03 a:hover{ color: #c9161d; }


/*
.topNews{ margin-bottom: 80px; background: linear-gradient(to right, rgba(219,70,11,1) 0%,rgba(128,0,0,1) 20%,rgba(128,0,0,1) 35%,rgba(255,255,255,1) 35%,rgba(255,255,255,1) 100%); }
.topNews01{ width: 100%; margin: 0 auto; display: flex; }
.topNewsTit{ display: flex; align-items: center; flex-basis: 35%; padding: 30px 0; }
.topNewsTit01{ font-size: 3rem; margin-right: 40px; margin-left: 80px; }
.topNewsTit01 span{ color: rgba(255,255,255,0.6); }
.topNewsTit02{ font-size: 1.4rem; color: #fff; letter-spacing: 2px; font-family: 'Noto Serif JP', serif; font-weight: 400; font-style: normal; padding-top: 6px; }
.topNewsTxt{ flex-basis: 65%; padding: 30px; }
.topNewsTxt ul{  }
.topNewsTxt li{ display: flex; align-items: center; position: relative; padding-bottom: 20px; border-bottom: 1px solid #c5c5c5; }
.topNewsTxt li:after{ width: 18%; }
.topNewsDate01{ flex-basis: 20%; color: #8c8c8c; font-size: 1.5rem; padding-left: 5px; font-family: 'Lexend Deca', sans-serif; font-weight: 200; font-style: normal; }
.topNewsTit03{ flex-basis: 75%; }
.topNewsTit03 a{ color: #221815; font-size: 1.6rem; }
.topNewsTit03 a:hover{ color: #c9161d; }
*/

.topAbout{ width: 90%; margin: 0 auto 100px auto; }
.topAboutTit01{ font-size: 3rem; letter-spacing: 5px; }
.topAboutTit01:first-letter{ color: #da460b; }
.topAboutTit02{ font-size: 1.5rem; text-align: center; margin-bottom: 40px; }
.topAboutTit02:first-letter{ color: #da460b; }

.topAboutTit03{ font-size: 2.2rem; width: 90%; margin: 0 auto; padding: 20px 15px 15px 15px; }
.topAboutTit03:before{ left: 45%; margin-left: 0px; }
.topAboutTit03 p{ margin: 0; padding: 0; }
.topAbout span{ font-size: 3.5rem; }
.topAboutTxt{ font-size: 1.5rem; padding: 80px 30px 30px 30px; margin-top: -40px; }



.topKouji{ width: 90%; margin: 0 auto 100px auto; }
.topKouji ul{ display: flex; justify-content: space-between; }
.topKouji li{ flex-basis: 30%; position: relative; }
.topKoujiTit{ width: 90%; margin: auto; position: absolute; top: -30px; left: 0; right: 0; display: flex; align-items: center; }

.topKoujiIco01{ width: 50px; height: 50px; }
.topKoujiIco01 i{ font-size: 3.5rem; line-height: 50px; }
.topKoujiTit01{ font-size: 1.6rem; padding: 10px 5px; }
.topKoujiArrow:before{ display: none; }


.topAdvantage{ padding-bottom: 40px; margin-bottom: 60px; }
.topAdvantage01{ width: 90%; margin: 0 auto; }
.topAdvantageTit{ width: 100%; position: absolute; top: -180px; left: 0;
	background-image: url("../images/bg_tit01.png"),none;
	background-repeat: no-repeat, no-repeat;
	background-position: left bottom, left bottom;
	background-size: contain, auto;
min-height: 224px; }
.topAdvantageTit p{ width: 90%; margin: 0 auto; font-size: 5rem; padding: 150px 0 20px 0; }
.topAdvantageTit span{ font-size: 2rem; margin-left: 20px; }
.topAdvantage ul{ width: 100%; margin: 0 auto; padding-top: 100px; display: flex; justify-content: space-between; flex-wrap: wrap; }
.topAdvantage li{ flex-basis: 48%; margin-bottom: 80px; }
.topAdvantageTit01{ width: 90%; display: flex; align-items: flex-end; margin: 0 auto 20px auto; }
.topAdvantageNum{ display: inline-block; color: #d0171e; font-size: 5.8rem; border-top: 3px solid #221815; font-family: 'Lexend Deca', sans-serif; font-weight: 400; font-style: italic; line-height: 1; margin-right: 20px; }
.topAdvantageTit02{ font-size: 2.5rem; font-family: 'Noto Serif JP', serif; font-weight: 700; font-style: normal; }
.topAdvantageImg{ position: relative; }
.topAdvantageImg img{ width: 100%; height: auto; }
.topAdvantageBtn{ width: 200px; position: absolute; bottom: -20px; right: 20px; }
.topAdvantageBtn a{ display: block; color: #800000; background: #fff; font-size: 1.5rem; text-align: center; border: 1px solid #800000; padding: 10px; font-family: 'Lexend Deca', sans-serif; font-weight: 600; font-style: normal; position: relative; }
.topAdvantageBtn a:before{ position: absolute; content: ""; display: block; border-width: 3px 6px 3px 6px; border-style: solid; border-color: transparent; border-left-color: #800000; right: 10px; top: 18px; }
.topAdvantageBtn a:hover{ background: #800000; color: #fff; }
.topAdvantageBtn a:before:hover{ color: #fff; }

.advantageSec01{ width: 90%; margin: 0 auto; }
.topAdvantage01Txt{ }

	

.top_sec01_wrap{ }
.top_sec01{ width: 90%; margin: 0 auto 0px auto; display: flex; justify-content: space-between; flex-wrap: wrap; }
.top_sec01 h2{ width: 100%; }


.topWorks{ flex-basis: 100%; width: 100%; margin: 0 auto 100px auto; padding: 0 5%; border-right: 0; }
.topWorksSec ul{ flex-wrap: wrap; }
.topWorksSec li{ flex-basis: 48%; margin-bottom: 30px; }
.topWorksSecImg{ margin-bottom: 10px; }
.topWorksSecImg img{ width: 100%; height: auto; }
.topWorksSecTit{ flex-wrap: wrap; font-size: 1.4rem; }
.topWorksSecCat{ display: block; width: 80px; color: #fff; font-size: 1rem; padding: 3px; }
.topWorksSecTit p{ flex-basis: 100%; display: block; }

.top_realestate{ flex-basis: 100%; width: 100%; padding: 0 5%; margin: 0 auto 60px auto; }


#topBtn{ width: 100%; overflow: hidden; margin-bottom: 80px; }
#topBtn ul li .topSecTit{ text-align: center; z-index: 1; position: relative; }

#topBtn ul li .topSecTit01{ font-size: 3rem; margin-bottom: 10px; }
#topBtn ul li .topSecTit02{ font-size: 2rem;  margin-bottom: 20px; }
#topBtn ul li .topSecImg { position: relative; overflow: hidden; text-align: center; padding: 50px 0; }
#topBtn ul li .topSecBtn01{ width: 50%; font-size: 1.4rem; }
#topBtn ul li .topSecBtn01:before{ right: 10px; top: 15px; }


.top_realestate{ width: 90%; margin: 0 auto 100px auto; }
.top_realestate_sec{}
.top_realestate_list{ display: flex; justify-content: space-between; margin-bottom: 0px; }
/* .top_realestate_item{ flex-basis: 32%; }
.top_realestate_item:last-child{ display: none; }
.top_realestate_item a:hover{ opacity: .6; }
*/


.aboutSec{ margin-bottom: 150px; }
.aboutSec ul{}
.aboutSec li{ min-height: 500px; margin-bottom: 80px; }
.aboutSecKenchiku{ background: none; }
.aboutSecDoboku{ background: none; }
.aboutSecReform{ background: none; }
.aboutSecTxt{ width: 90%; margin: 0 auto; }
.aboutSecTit{ width: 90%; font-size: 3.5rem; font-family: 'Noto Serif JP', serif; font-weight: 700; font-style: normal;  display: flex; align-items: center; letter-spacing: 3px; margin-bottom: 30px; }
.aboutSecTxt01{ width: 100%; font-size: 1.7rem; margin: 0 auto }
.aboutSecImg{ margin-top: 20px; }


.advantageSec{ margin-bottom: 100px; }
.advantageSec ul{ width: 90%; margin: 0 auto; display: flex; justify-content: space-between; flex-wrap: wrap; }
.advantageSec li{ flex-basis: 48%; margin-bottom: 80px; }
.advantageSecTxt{ font-size: 1.7rem; line-height: 1.6; margin-top: 20px; }



.companyNav{ width: 90%; background-color: #fff; padding: 20px; border-radius: 10px; margin: 0 auto 40px auto; }
.companyNav li:before{ top: 3px; }



.greetingSec{ width: 90%; }

.philosophySec{ width: 90%; margin: 0 auto 100px auto; }
.philosophySecImg{ text-align: center; }

.companySec{ width: 90%; margin: 0 auto 100px auto; }
.tableSec01{}
.tableSec01 table{ width: 100%; }


.accessSec{ width: 90%; margin: 0 auto 100px auto; }
.accessSecMap{ position: relative; padding-bottom: 52.63%; padding-top: 30px; height: 0; overflow: hidden; }
.accessSecMap iframe,
.accessSecMap object,
.accessSecMap embed{ position: absolute; top: 0; left: 0; width: 100%; height: 100%; }


.contactSec{ width: 90%; }

.privacySec{ width: 90%; }

.sitemapSec{ width: 90%; margin: 0 auto 100px auto; }
.sitemapSec > ul > li:after{ top: 5px; }

.recruitSec{ width: 90%; }

.works_sec{ width: 90%; margin: 0 auto; }
	/*
.works_sec ul{ display: flex; flex-wrap: wrap; justify-content: space-between; }
.works_sec li{ flex-basis: 32%; margin-bottom: 60px; }
	*/



.gallery_img img{ width: 100%; height: 204px; object-fit: cover; border: 1px solid #ccc !important; }


}
/* ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
 TAB CSS END
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ */

/* ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
 PC CSS
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ */
@media print, screen and (min-width:1025px) and (max-width:1419px){

/* フォントサイズ10px */
html{ font-size: 62.5%; }

/* 基本のフォントサイズ */
body{ font-size: 16px; font-size: 1.8rem; }

/* 非表示用 */
.nonePC		{ display: none !important; }
/* ----------------------------------------------------------
 link
---------------------------------------------------------- */
/* ----------------------------------------------------------
 header
---------------------------------------------------------- */
#header{ width: 1000px; justify-content: space-between; }
.headerLogo{ flex-basis: 18%; text-align: right; padding: 15px; }
.headerLogo img{ width: 100%; height: auto; }

#gNavi{ flex-basis: 70%; }
/*
#gNavi nav > ul > li a{ display: block; font-size: 1.5rem; color: #fff; font-weight: 500; padding: 40px 0; min-height: 130px; }
#gNavi nav > ul > li a span{ display: block; font-size: .9rem; font-family: 'Lexend Deca', sans-serif; font-weight: 400; font-style: normal; }
*/

.headerTel{ display: none; }

.headerContact{ flex-basis: 8%; }
.headerContact a{ font-size: 1.4rem; padding: 10px 0; }
.headerContact a i{ font-size: 2.5rem; }
/*
.headerContact a{ display: block; font-size: 1.5rem; font-weight: 500; color: #221815; text-align: center; min-height: 126px; padding: 30px 0; }
.headerContact a i{ font-size: 3rem; }
.headerContact a:hover{ background-color: #e60012; color: #eee; }
*/

/* 非表示 */
#nav-tgl{ display: none; }
.drower-menu{ display: none; }

/* ----------------------------------------------------------
 footer
---------------------------------------------------------- */
/* ページ下部 固定メニュー */
.btmMenu { display: none; }


footer{}
footer > ul{ display: flex; }
footer > ul > li{ flex-basis: 50%; }
footer > ul > li:nth-child(2){ padding: 3% 5% 5% 5%; background: #fff; z-index: 1; }
.footerLogo{ height: 25%; padding-top: 9%; background-color: #e60012; }
.footerLogo a:hover{ opacity: 0.6; }
.footerInfo{ color: #fff; font-size: 1.6rem; }
.footerAdd{ margin: 10% 0 5% 0; background-color: #db460b; }
.footerContact{ display: flex; justify-content: space-between; align-items: center; width: 95%; background: #fff; padding: 15px; }
.footerTel{ flex-basis: 56%; display: flex; flex-wrap: wrap; align-items: center; color: #333; font-size: 2.8rem; font-family: 'Lexend Deca', sans-serif; font-weight: 600; font-style: normal; }
.footerTel i{ color: #d0171e; margin-right: 5px; font-size: 2rem; padding-top: 3px; }
.footerTel p{}
.footerTel span{ flex-basis: 100%; font-size: 1.1rem; color: #666; text-align: center; }
.footerBtn{ flex-basis: 40%; }
.footerBtn a{ display: block; color: #fff; text-align: center; font-size: 1.3rem; font-weight: 900; border: 2px solid #800000; background: #800000; padding: 15px 5px; }
.footerBtn a i{ margin-right: 10px; }
.footerBtn a:hover{ background: #fff; color: #800000; }
.footerCopyright{ font-size: 1.2rem; color: #fff; margin-top: 5%; margin-bottom: 1%; }

footer > ul > li:nth-child(1){padding-left: 5%; }

/*
.footerSitemap{ z-index: 2; }
.footerSitemapTit{ position: relative; margin-bottom: 40px; }
.footerSitemapTit span{ display: block; background-color: #f5f5f5; padding-left: 10px; margin-left: 40px; font-size: 2.7rem; font-family: 'Lexend Deca', sans-serif; font-weight: 700; font-style: normal; }
.footerSitemapTit span:first-letter{ color: #db460b; }
.footerSitemapTit:after{ position: absolute; content: ""; width: 5%; height: 3px; display: block; background-color: #800000; top: 50%; left: 0; z-index: -1; }
.footerSitemap > ul{ display: flex; justify-content: space-between; }
.footerSitemap > ul > li{ flex-basis: 48%; font-weight: 600; }
.footerSitemap > ul > li > ul{}
.footerSitemap > ul > li > ul > li{ position: relative; padding-left: 25px; margin-bottom: 20px; }
.footerSitemap > ul > li > ul > li:after{ position: absolute; display: block; content: ""; top: 8px; left: 0; width: 8px; height: 8px; border: 3px solid #db460b; border-radius: 100%; }
.footerSitemap > ul > li > ul > li a{ font-size: 1.6rem; color: #333; font-weight: 700; }
.footerSitemap > ul > li > ul > li a:hover{ color: #db460b; }
.footerSitemap > ul > li > ul > li > ul{ margin: 5px 0 0 25px; }
.footerSitemap > ul > li > ul > li > ul > li{ list-style-type: disc; color: #800000; line-height: 1.2; }
.footerSitemap > ul > li > ul > li > ul > li > a{ font-size: 1.3rem; }
*/

.footer_btn_youtube01{ position: absolute; right: 20px; bottom: 50px; width: 10%; z-index: 2; }
.footer_btn_youtube01 a:hover{ opacity: 0.6; }
.footer_btn_youtube01 img{ width: 100%; height: auto; }

/* ----------------------------------------------------------
 hx
---------------------------------------------------------- */
.h1Wrap{ position: relative; margin-bottom: 250px; }
h1{ width: 100%; position: absolute; top: 0; left: 0;
	background-image: url("/images/bg_tit01.png"),none,url("/images/bg_h102.png"),none;
	background-repeat: no-repeat, no-repeat, no-repeat, no-repeat;
	background-position: -50px top, left 84px, 300px 80px, 180% bottom;
	background-size: 80% auto, auto, 80% auto, auto;
	min-height: 200px; z-index: -1; }
h1 p{ width: 90%; font-size: 5rem; padding: 70px 0 20px 0; }
h1 span{ font-size: 2rem; margin-left: 20px; }


h2{ width: 1000px; font-size: 4rem; letter-spacing: 5px; text-align: center; color: #221815; font-family: 'Noto Serif JP', serif; font-weight: 700; font-style: normal; border-bottom: 1px solid #d0171e; padding: 0 0 20px 0; margin: 0 auto 60px auto; }
h2:first-letter{ color: #da460b; }

h3{ background: #eee; font-size: 2.5rem; font-weight: 700; letter-spacing: 3px; padding: 10px 15px; border-radius: 5px; margin-bottom: 40px; }
h3 span{ border-left: 6px solid #d0171e; padding-left: 20px; }



/* ぱんくず */
#breadcrumbs{ width: 90%; margin: 0 auto; z-index: 5; padding-top: 20px; } 
#breadcrumbs ol{  } 
#breadcrumbs ol li{ display: inline-block; position: relative; font-family: 'Noto Sans JP', sans-serif; font-weight: 400; font-style: normal; }
#breadcrumbs ol li:before{ content: ">"; display: block; position: absolute; top: .5em; left: 0px; color: #bbb; font-size: 1.2rem; }
#breadcrumbs ol li:first-child:before{ content: ""; }
#breadcrumbs ol li a{ color: #bbb; font-size: 1.2rem; margin: 0 0 0 13px; font-family: 'Noto Sans JP', sans-serif; font-weight: 400; font-style: normal; }
#breadcrumbs ol li:first-child a{ margin: 0 0 0 0; }
#breadcrumbs ol li a:hover{ color: #db460b; }

/* ----------------------------------------------------------
 contents
---------------------------------------------------------- */
.topImg{ width: 1000px; height: auto; }
.topImg img{ width: 100%; height: auto; }

.topImgTxt{ z-index: 2; position: absolute; width: 760px; height: 260px; top: 0; left: 0; right: 0; bottom: 0; margin: auto; padding: 30px; background: rgba(0,0,0,0.5); font-family: 'Noto Serif JP', serif; font-weight: 600; font-style: normal; }
.topImgTit01{ color: #fff; font-size: 3rem; text-align: center; letter-spacing: 2px; padding-top: 20px; }
.topImgTit02{ color: #fff; font-size: 8.5rem; text-align: center; letter-spacing: 4px; }

.topImgBtn{ position: absolute; right: 20px; bottom: 0px; text-align: right; }
.topImgBtn img{ width: 80%; height: auto; }
.topImgBtn a:hover{ opacity: 0.6; }


.top_info{ max-width: 1300px; width: 90%; margin: 0 auto 130px auto; }
.top_info_list{ display: flex; justify-content: space-between; }
.top_info_item{ flex-basis: 48%; }
.top_info_item_news{}
.top_info_item_column{}



.topNews{ margin-bottom: 0px; }
.topNews01{ width: 100%; margin: 0 auto; }
.topNewsTit{ display: flex; align-items: center; padding: 20px 0; background: linear-gradient(to right, rgba(219,70,11,1) 0%,rgba(128,0,0,1) 25%,rgba(128,0,0,1) 100%);  }
.topNewsTit01{ color: rgba(255,255,255,1); font-size: 3rem; font-family: 'Lexend Deca', sans-serif; font-weight: 600; font-style: normal; margin-right: 40px; margin-left: 100px; }
.topNewsTit01 span{ color: rgba(255,255,255,0.6); }
.topNewsTit02{ font-size: 1.4rem; color: #fff; letter-spacing: 2px; font-family: 'Noto Serif JP', serif; font-weight: 400; font-style: normal; padding-top: 6px; }
.topNewsTxt{ flex-basis: 100%; padding: 0; }
.topNewsTxt ul{  }
.topNewsTxt li{ display: flex; align-items: center; position: relative; padding-bottom: 20px; border-bottom: 1px solid #c5c5c5; margin-top: 20px; }
.topNewsTxt li:after{ position: absolute; content: ""; display: block; border-bottom: 1px solid #c9161d; bottom: -1px; width: 13%; }
.topNewsDate01{ flex-basis: 20%; color: #8c8c8c; font-size: 1.5rem; padding-left: 5px; font-family: 'Lexend Deca', sans-serif; font-weight: 200; font-style: normal; }
.topNewsTit03{ flex-basis: 75%; }
.topNewsTit03 a{ color: #221815; font-size: 1.6rem; }
.topNewsTit03 a:hover{ color: #c9161d; }

/*
.topNews{ margin-bottom: 80px; background: linear-gradient(to right, rgba(219,70,11,1) 0%,rgba(128,0,0,1) 20%,rgba(128,0,0,1) 35%,rgba(255,255,255,1) 35%,rgba(255,255,255,1) 100%); }
.topNews01{ width: 1200px; margin: 0 auto; display: flex; }
.topNewsTit{ display: flex; align-items: center; flex-basis: 35%; padding: 30px 0; }
.topNewsTit01{ color: rgba(255,255,255,1); font-size: 3rem; font-family: 'Lexend Deca', sans-serif; font-weight: 600; font-style: normal; margin-right: 40px; margin-left: 100px; }
.topNewsTit01 span{ color: rgba(255,255,255,0.6); }
.topNewsTit02{ font-size: 1.4rem; color: #fff; letter-spacing: 2px; font-family: 'Noto Serif JP', serif; font-weight: 400; font-style: normal; padding-top: 6px; }
.topNewsTxt{ flex-basis: 65%; padding: 30px; }
.topNewsTxt ul{  }
.topNewsTxt li{ display: flex; align-items: center; position: relative; padding-bottom: 20px; border-bottom: 1px solid #c5c5c5; }
.topNewsTxt li:after{ position: absolute; content: ""; display: block; border-bottom: 1px solid #c9161d; bottom: -1px; width: 13%; }
.topNewsDate01{ flex-basis: 20%; color: #8c8c8c; font-size: 1.5rem; padding-left: 5px; font-family: 'Lexend Deca', sans-serif; font-weight: 200; font-style: normal; }
.topNewsTit03{ flex-basis: 75%; }
.topNewsTit03 a{ color: #221815; font-size: 1.6rem; }
.topNewsTit03 a:hover{ color: #c9161d; }
*/


.topAbout{ width: 1000px; margin: 0 auto 100px auto; }


.topKouji{ width: 1000px; margin: 0 auto 100px auto; }
.topKoujiTit01{ font-size: 1.6rem; padding: 10px 10px 10px 10px; }
.topKoujiArrow:before{ display: none; }

.topAdvantageTit{ width: 100%; position: absolute; top: -180px; left: 0;
	background-image: url("../images/bg_tit01.png"),url("../images/bg_tit02.png");
	background-repeat: no-repeat, no-repeat;
	background-position: -130px bottom, -200px bottom;
	background-size: auto, auto;
min-height: 224px; }
.topAdvantageTit p{ width: 900px; }
.topAdvantage ul{ width: 100%; }
.topAdvantageTit01{ padding: 0 20px; }

.topWorks{ width: 1000px; margin: 0 auto 0px auto; }

#topBtn ul li .topSecImg { padding: 100px 0; }

.top_realestate{ width: 1000px; margin: 0 auto 0px auto; }
.top_realestate_sec{}
	/*
.top_realestate_list{ display: flex; justify-content: space-between; margin-bottom: 60px; }
.top_realestate_item{ flex-basis: 23%; }
.top_realestate_item a:hover{ opacity: .6; }
*/



.aboutSec{ width: 1000px; margin: 0 auto 150px auto; }
.aboutSec ul{}
.aboutSec li{ min-height: 300px; margin-bottom: 80px; }
.aboutSecKenchiku{ background: url("../about/images/img_kenchiku01.jpg") no-repeat top right; background-size: 53% auto; }
.aboutSecDoboku{ background: url("../about/images/img_doboku01.jpg") no-repeat top right; background-size: 53% auto; }
.aboutSecReform{ background: url("../about/images/img_reform01.jpg") no-repeat top right; background-size: 53% auto; }
.aboutSecTxt{ width: 1100px; margin: 0 auto; }
.aboutSecTit{ width: 40%; font-size: 3.5rem; font-family: 'Noto Serif JP', serif; font-weight: 700; font-style: normal;  display: flex; align-items: center; letter-spacing: 3px; margin-bottom: 30px; }
.aboutSecIco{ width: 90px; height: 90px; color: #fff; text-align: center; margin-right: 20px; font-size: 5rem; }
.ico-kenchiku{ background: linear-gradient(135deg, rgba(33,24,20,1) 0%,rgba(33,24,20,1) 50%,rgba(0,102,0,1) 50%,rgba(0,102,0,1) 100%); line-height: 90px; }
.ico-doboku{ background: linear-gradient(135deg, rgba(33,24,20,1) 0%,rgba(33,24,20,1) 50%,rgba(0,70,140,1) 50%,rgba(0,70,140,1) 100%); line-height: 90px; }
.ico-reform{ background: linear-gradient(135deg, rgba(33,24,20,1) 0%,rgba(33,24,20,1) 50%,rgba(178,89,0,1) 50%,rgba(178,89,0,1) 100%); line-height: 90px; }
.aboutSecTit01{}
.aboutSecTxt01{ width: 40%; font-size: 1.7rem; }
.aboutSecImg{}


.advantageSec{ margin-bottom: 100px; }
.advantageSec ul{ width: 1100px; margin: 0 auto; display: flex; justify-content: space-between; flex-wrap: wrap; }
.advantageSec li{ flex-basis: 48%; margin-bottom: 80px; }
.advantageSecTxt{ font-size: 1.7rem; line-height: 1.6; margin-top: 20px; }






.greetingSec{ width: 1000px; margin: 0 auto 100px auto; }
.greetingSecImg img{ margin-right: 20px;  }

.philosophySec{ width: 1000px; margin: 0 auto 100px auto; }

.companySec{ width: 1000px; margin: 0 auto 100px auto; }


.accessSec{ width: 90%; margin: 0 auto 100px auto; }
.accessSecMap{ position: relative; padding-bottom: 52.63%; padding-top: 30px; height: 0; overflow: hidden; }
.accessSecMap iframe,
.accessSecMap object,
.accessSecMap embed{ position: absolute; top: 0; left: 0; width: 100%; height: 100%; }


.contactNav{ width: 470px; background-color: #eee; padding: 20px; border-radius: 10px; margin: 0 auto 80px auto; }
.contactNav ul{ display: flex; justify-content: space-between; }
.contactNav li{ position: relative; }
.contactNav li a{ font-size: 1.6rem; font-weight: 500; padding-left: 30px; }
.contactNav li:before{ position: absolute; display: block; font-family: 'icomoon'; content: "\e900"; font-size: 1rem; color: #fff; }
.contactNav li:before{ position: absolute; display: block; top: 5px; background-color: #d0171e; width: 20px; height: 20px; border-radius: 100%; text-align: center; line-height: 20px; }

.contactSec{ width: 1000px; margin: 0 auto 100px auto; }

.privacySec{ width: 1000px; margin: 0 auto 100px auto; }
.privacySecTxt{ font-size: 1.6rem; margin-bottom: 60px; }
.privacySecTxt ol{ margin: 10px 0 0 30px; }
.privacySecTxt ol li{ list-style-type: decimal; line-height: 1.6; }


.sitemapSec{ width: 50%; margin: 0 auto 100px auto; }
.sitemapSec > ul > li{ position: relative; padding-left: 25px; margin-bottom: 30px; }
.sitemapSec > ul > li:after{ position: absolute; display: block; content: ""; top: 8px; left: 0; width: 8px; height: 8px; border: 3px solid #db460b; border-radius: 100%; }
.sitemapSec > ul > li a{ font-size: 1.8rem; color: #333; font-weight: 700; }
.sitemapSec > ul > li a:hover{ color: #db460b; }
.sitemapSec > ul > li > ul{ margin: 10px 0 0 25px; }
.sitemapSec > ul > li > ul > li{ list-style-type: disc; color: #800000; line-height: 1.4; }
.sitemapSec > ul > li > ul > li > a{ font-size: 1.4rem; }


/* faq */
.faqSec{ width: 1000px !important; margin: 0 auto 100px auto; }

.recruitSec{ width: 1000px; margin: 0 auto 100px auto; }

.works_sec{ width: 1000px; }


}
/* ----------------------------------------------------------
 PC CSS END
---------------------------------------------------------- */
/* ----------------------------------------------------------
 PC WIDE CSS
---------------------------------------------------------- */
@media screen and (min-width:1420px){
/* フォントサイズ10px */
html{ font-size: 62.5%; height: 100%; }

/* 基本のフォントサイズ */
body{ font-size: 16px; font-size: 1.8rem; height: 100%; }

/* 非表示用 */
.nonePCWIDE		{ display: none !important; }

/* ----------------------------------------------------------
 link
---------------------------------------------------------- */
/* ----------------------------------------------------------
 header
---------------------------------------------------------- */


/* 非表示 */
#nav-tgl{ display: none; }
.drower-menu{ display: none; }

/* ----------------------------------------------------------
 footer
---------------------------------------------------------- */
/* ページ下部 固定メニュー */
.btmMenu { display: none; }



/* ----------------------------------------------------------
 hx
---------------------------------------------------------- */



/* ----------------------------------------------------------
 contents
---------------------------------------------------------- */

.footer_btn_youtube01{ position: absolute; right: 20px; bottom: 50px; width: 8%; z-index: 2; }
.footer_btn_youtube01 a:hover{ opacity: 0.6; }
.footer_btn_youtube01 img{ width: 100%; height: auto; }

}
/* ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
 PCWIDE CSS END
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ */
