@charset "utf-8";
/* CSS Document */

/*　共通設定--------------------------------　*/

html {
	/* reset-min設定の打ち消し
	background-color:transparent; */
}
body {
	margin:0 ;
	padding: 0 ;
	/* background: url(../img/common_body.gif) center repeat-y; */
	font-family:sans-serif;
	-webkit-text-size-adjust: 100%;
	color: #333;
}

* {
	box-sizing: border-box;
}

/*　背景のボックスが必要な場合のみ設定  */
#back {
}

p {
	font-size:100%;
	line-height:1.8em;
	margin:0;
	}

strong {font-weight:bold}

figure{
	margin: 0;
}

img {
	border:0;
	vertical-align:bottom;
	max-width: 100%;
}
a:hover{
	text-decoration: none;
}
hr{
	margin:0;
	border-top: 1px solid #bbb;
	/* background: url(../img/hr.gif) repeat-x ; */

/* hr 左右グラデ表示用設定
	background-image: -webkit-linear-gradient(left, #ccc, #333, #ccc);
	background-image:    -moz-linear-gradient(left, #ccc, #333, #ccc);
	background-image:     -ms-linear-gradient(left, #ccc, #333, #ccc);
	background-image:      -o-linear-gradient(left, #ccc, #333, #ccc); */}

table th,
table td {
	line-height:1.8 }

table td hr {
	margin:0 0 1em 0;
    border: 0;
    height: 1px;
    background: url(../img/hr.gif) repeat-x ;
}

.pc-only{
	display: block;
}
.sp-only{
	display: none;
}
ul {
	list-style: none;
}
.float-l{
	float: left;
}
.float-r{
	float: right;
}
.mt6em{
	margin-top: 6em;
}

.flex{
	display: flex;
	display:-ms-flexbox;
}

.flex-jcsb {
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
}
.flex-jcc{
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
}
.flex-jcsa {
	-ms-flex-pack: distribute;
	justify-content: space-around;
}
.flex-drr{
	-webkit-box-orient: horizontal;
  	-webkit-box-direction: reverse;
  	-ms-flex-direction: row-reverse;
  	flex-direction: row-reverse;
}
.flex-aic{
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
}
.flex-ais{
	-webkit-box-align: start;
	-ms-flex-align: start;
	align-items: flex-start;
}
.flex-aie{
	-webkit-box-align: end;
	-ms-flex-align: end;
	align-items: flex-end;
}

.flex-wrap{
	-ms-flex-wrap: wrap;
  	flex-wrap: wrap;
}
.ct-half > *{
	width: 50%;
}
.ct-half_gap > *{
	width: 47%;
}
.ct-m{
	margin-bottom: 120px;
}

.tac{
	text-align: center !important;
}
.tal{
	text-align: left !important;
}
.tar{
	text-align: right !important;
}


/*　ヘッダー--------------------------------　*/

#head{
	/* background:#fff; */
	/* max-width: 100%; */
	height:96px;
	width:100%;
	margin:0;
	padding:0 ;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 10;
	/* background:url(../img/common_logo_pc.jpg) no-repeat left 20px; */
}
.head_inner{
	width: 100%;
	padding: 20px 0;
	display: flex;
	/* background:#fff; */
}
#head h1 {
	margin:0;
	left: 0;
	padding-left: 40px;
	width: 33%;
	max-width: 428px;
	display: block;
    transition: 0.3s;
    opacity: 1;
}

#head h1 a span,
#head h1 span{
	display:none;
}
#head h1.logo.scroll {
	opacity: 0;
	visibility: hidden;
}

/*ハンバーガーメニュー*/
#head .drawer--right .drawer-hamburger{
	right: 28px;
    margin-top: 10px;
}
#head .drawer-hamburger {
    width: 42px;
	right: 28px;
    margin-top: 18px;
}
#head .drawer-hamburger-icon:before {
	top: -16px;
}
#head .drawer-hamburger-icon:after {
    top: 16px;
}
.drawer-open #head .drawer-hamburger-icon:before {
    top: 0;
}
.drawer-open #head .drawer-hamburger-icon:after {
    top: 0;
}
.drawer-open #head .ov {
    position: fixed;
    width: 100%;
    height: 100vh;
    background-color: #3e3e3e;
    opacity: 0.5;
    top: 0;
    z-index: 1;
}
.drawer-open .drawer-overlay {
	display: none !important;
}

/*ヘッダー　お問い合わせ*/
#head .header-contact{
	margin-left: auto;
    padding-right: 130px;
	font-family: 'Noto Sans JP', sans-serif;
}
#head .header-contact a{
	font-size: 26px;
	font-size: min(2vw, 26px);
    letter-spacing: 0.05em;
    font-weight: 600;
	text-decoration: none;
	color: #333;
}
#head .header-contact > div{
	margin-left: 2em;
	line-height: 1;
}
/* .header-contact_line a::before{
	content: "";
	display: inline-block;
	width: 1.2em;
	height: 1.2em;
	background: url(../img/icon-line.png) no-repeat left center;
	background-size: contain;
	margin-right: 10px;
	vertical-align: text-bottom;
} */
#head .header-contact .header-contact_tel{
    font-size: 108%;
}
/* .header-contact_tel a::before{
	content: "";
	display: inline-block;
	width: 1.2em;
	height: 1.2em;
	background: url(../img/icon-freedial.png) no-repeat left center;
	background-size: contain;
	margin-right: 10px;
	vertical-align: text-bottom;
} */

/*　ナビ表示--------------------------------　*/


#head .drawer-nav {
    padding: 5%;
	width: 40rem;
}
.drawer--right #head .drawer-nav {
    right: -40rem;
}
.drawer--right.drawer-open #head .drawer-nav{
	right: 0;
}
#head .drawer-menu{
	margin-top: 5%;
	margin-bottom: 8%;
}
#head .drawer-menu li{
	width: 100%;
    /* border: 1px solid #aaa; */
    margin: 0 auto 1em;
}
#head .drawer-menu-item {
    font-size: 120%;
	font-weight: bold;
    text-align: center;
	background-color: #fef8e8;
	transition: 0.2s ease background-color;
}
#head .drawer-menu-item:hover {
	text-decoration: none;
	background-color: #fcc964;
	color: #000;
	opacity: 1;
}
#head .contact-box{
	text-align: center;
	margin: 1em auto;
}
#head .contact-tel{
	color: #ec6018;
	font-size: 190%;
	font-family: 'Noto Sans JP', sans-serif;
	letter-spacing: 0.05em;
	line-height: 1;
	display: inline-block;
	text-decoration: none;
}


/*ドロワー内のお問い合わせ*/
/*ナビアイコン*/
.drawer-nav .navi-logo{
	width: 60%;
	margin:  0 auto;
}

/*.drawer-nav ul li span::before{
	content: "";
	display: inline-block;
	width: 1em;
	height: 1em;
	margin-right: 8px;
	vertical-align: text-bottom;
}


 .drawer-nav ul li.navi-home span::before{
	background: url(../img/navicon_home.png) no-repeat top center;
	background-size: contain;
}
.drawer-nav ul li.navi-company span::before{
	background: url(../img/navicon_company.png) no-repeat top center;
	background-size: contain;
}
.drawer-nav ul li.navi-business span::before{
	background: url(../img/navicon_business.png) no-repeat top center;
	background-size: contain;
}
.drawer-nav ul li.navi-news span::before{
	background: url(../img/navicon_news.png) no-repeat top center;
	background-size: contain;
}
.drawer-nav ul li.navi-insta span::before{
	background: url(../img/navicon_insta.png) no-repeat top center;
	background-size: contain;
}
.drawer-nav ul li.search span::before{
	background: url(../img/navicon_search.png) no-repeat top center;
	background-size: contain;

} */


/*　ビジュアル--------------------------------　*/

#visual {
	width:100%;
    height: auto;
    margin: 0 auto 0;
	clear:both;
	padding: 0 0;
	position:relative;
	z-index:1; /* naviが下に重なるのを防ぐ */
	/* overflow: hidden; */
}
#visual .slick-list {
    overflow: inherit;
}
#visual .visual_01{
	background: url(../img/top_visual_bgn.png) no-repeat top left;
	background-size: 100% 100%;
	position: relative;
	height: 54.94vw;
}

#visual .visual_01 .object-left{
	width: 35.43%;
	position: absolute;
	left: 2.3426%;
	top: 27%;
	display: block;
}
#visual .visual_01 .object-left::before{
	content: "";
	display: inline-block;
	width: 85.95%;
	height: 50.89%;
	background: url(../img/top_bl_shape.png) no-repeat top right;
	background-size: contain;
	position: absolute;
	top: 100%;
	right: 40%;
}
#visual .visual_01 .object-right{
	width: 29.65%;
	position: absolute;
	right: 1%;
	top: 33.2%;
	display: block;
}
#visual .visual_01 .object-right::before{
	content: "";
	display: inline-block;
	width: 170.7%;
	height: 178%;
	background: url(../img/top_br_shape.png) no-repeat top left;
	background-size: contain;
	position: absolute;
	top: -33.59%;
	left: -30.5%;
	z-index: -1;
}

#visual .object-center{
	width: 83.4%;
    margin: 0 auto;
    display: block;
    padding-left: 14%;
}
#visual .full {
	height: 100vh;
	overflow: hidden;
	width: 100%;
}
#visual .full img{
	width: 100%;
	height: 100%;
	object-fit: cover;
}


/*テキスト*/
#visual .area-ttl{
	position: absolute;
	top: 53.5%;
	left: 50%;
	z-index: 5;
	transform:translateX(-50%);
	-webkit-transform: translateX(-50%);
}
#visual .area-ttl a{
	background-color: #ef7b0a;
	padding: 10px 1m;
	border-radius: 30px;
	color: #fff;
	font-size: 200%;
	display: block;
	font-size:min(3vw,32px);
	text-decoration: none;
    letter-spacing: 0.1em;
    font-weight: bold;
	transition: 0.3s ease background-color;
	font-family: 'Noto Sans JP', sans-serif;
}
#visual .area-ttl a:hover{
	background-color: #EF940A;
}
#visual .area-ttl_text {
    display: block;
    font-size: 150%;
    margin: 0 auto 10px;
    text-align: center;
    letter-spacing: 0.1em;
	font-weight: bold;
}
#visual .area-ttl_text.nodispaly{
	display: none;
}


/*　ページビジュアル　--------------------------------　*/

#title {
	width:100%;
	/* max-width: 1080px; */
	height: 0;
	padding-top: 30%; /* calc(画像高さ ÷ 画像横幅 × 100%) */
	margin:0 auto 0px ;
	position:relative;
	z-index:1;/* naviが下に重なるのを防ぐ */
	background: url(../img/page-ttl_bg.png) center top / cover no-repeat;
	}
#title h2 {
	color: #000;
    text-align: center;
    font-size: 340%;
    font-weight: bold;
    letter-spacing: 0.1em;
    font-family: 'Noto Sans JP', sans-serif;
    position: absolute;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    margin: auto;
    width: 80%;
    height: 1.5em;
}

/* 各ページの画像設定 */
/* body.greet #title  { background: url(../img/greet_title.jpg) center center / cover no-repeat;}
body.company #title  { background: url(../img/company_title.jpg) center center / cover no-repeat;}
body.flow #title  { background: url(../img/flow_title.jpg) center center / cover no-repeat;}
body.works #title  { background: url(../img/works_title.jpg) center center / cover no-repeat;}
body.evaluation #title  { background: url(../img/evaluation_title.jpg) center center / cover no-repeat;}
body.contact #title  { background: url(../img/contact_title.jpg) center center / cover no-repeat;}
body.info #title  { background: url(../img/info_title.jpg) center center / cover no-repeat;}
 */

@keyframes fadeIn {
	from {
		opacity: 0;
		transform: translateX(-100px);
	}
	to {
		opacity: 1;
		transform: translateX(0);
	}
}




/*　スクロール時のナビ固定　jquery連動*/
.fixed {
	position: fixed;
	top: -1px;}






/*　コンテンツ背景--------------------------------　*/

#back {
	min-height: 100vh;
	background-color: #fef8e8;
	position: relative;
	overflow: hidden;
}

.contents-bg {
	background: url(../img/common_contents_bg.png) repeat-y top left;
	background-size: 100% auto;
}




/*　パンくずリスト--------------------------------　*/
#bread {
	width:880px;
	padding:14px 0 0 0;
	margin:0px auto 0px auto ;
	font-size:75%;
	color:#333;
	clear:both;
	}
#bread a {
	color:#336699;
	}




/*　コンテンツ外枠--------------------------------　*/

#contents{
	margin:0 auto 0 auto;
}

#contents:after,
.cf:after {
	content:".";
	height:0;
	clear:both;
	visibility:hidden;
	display:block;
	}


/*　コンテンツ　メインカラム--------------------------------　*/

#contents-main{
	height:auto;
	width:100%;
	/* max-width: 100%; */
	padding: 96px 0 0;
	margin:0px auto;
	}

.w1200 #contents-main{
	max-width: 1200px;
	margin:0px auto;
}
/* .contents_inner {
	position: relative;
}
 */

.con-main-box{
	width:94%;
	max-width: 1200px;
	margin: 0 auto 150px;
}
.con-main-box_02{
	width:94%;
	max-width: 1000px;
	margin: 0 auto 150px;
}
.top-con-main-box{
	margin-top: 2em;
}



/*　見出し　--------------------------------　*/
#contents-main .mds {
	text-align: center;
}

#contents-main h1 {
    margin: 0 0 20px 0;
	padding: 0 0 20px;
    color: #000;
    font-size: 200%;
	font-family: 'Noto Sans JP', sans-serif;
    /* font-family: "游明朝", "YuMincho", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif; */
    position: relative;
}


#contents-main h2 {
	padding:0 0 0;
	margin:0 0 50px 0;
	color:#000;
	text-align: center;
	font-size: 312.5%;
    font-weight: bold;
	font-family: 'Noto Sans JP', sans-serif;
	/* font-family: "游明朝", "YuMincho", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif; */
    position: relative;
	letter-spacing: 0.05em;
	line-height: 1;
}

#contents-main h3 {
	padding:0 0 6px 0px;
	margin:0 0 30px 0;
	/* border-bottom: 1px solid #999; */
	color:#000;
	text-align:left;
	font-size:150%;
	font-family: 'Noto Sans JP', sans-serif;
	/* font-family: "游明朝", "YuMincho", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif; */
    position: relative;
	letter-spacing: 0.05em;
}


#contents-main h3 a{
	color:#000;
	text-decoration:none;
	}
#contents-main h3 a:hover{
	text-decoration:underline;
	}


#contents-main h4{
	/* border-bottom:#666 dotted 1px; */
	padding:0 0 10px;
	margin: 1em 0;
	line-height:1.4em;
	color: #555;
	clear:both;
	font-family: 'Noto Sans JP', sans-serif;
}

#contents-main h4 img{
	margin-left:8px;}


/*イラストつき見出し*/
#contents-main .plus-visual{
	position: relative;
	background-color: rgba(199,83,87, 0.25);
	padding: 3em 0 0;
	margin-bottom: 3em;
}
#contents-main .plus-visual::after{
	content: "";
	width: 30%;
	max-width: 240px;
	height: 100px;
	display: block;
	background: url(../img/h2_visual.png) no-repeat bottom center;
	background-size: contain;
	margin: -2em auto 0;
}



/*　本文　--------------------------------　*/

/*　文字色　*/
#contents-main p,
#contents-main table,
#contents-main li { color:#333 }

#contents-main p {
	margin:0 0 1em 0 ;
	color:#333;
	line-height: 2;
	font-size:125%;
}

#contents-main p img{
	margin:0 10px 20px 10px;
/*	background:#FFF;
	padding:2px;
	border: #CC9 solid 1px; */
	}

#contents-main p a:hover img{
/*	border: #2A5050 solid 1px;*/
}



/* リンク文字色 */
#contents-main a {
	color:#333;
	text-decoration:none ;}

/* #contents-main a:hover {
	text-decoration:underline ;}
 */
#contents-main a img{
	opacity: 1;
	transition: ease 0.3s opacity;
}

#contents-main a:hover img{
	opacity: 0.5;
}
#contents-main span.en{
	display: block;
    font-size: 70%;
    color: #c75357;
    margin-top: 8px;
}

#contents-main h2 span.en{
    font-size: 60%;
	margin-top: 0;
    margin-bottom: 16px;
}

/*　リスト　*/

#contents-main ul , #contents-main ol{
	line-height:1.6em;
	font-size: 110%;
	margin:0 0 2em;
	}
#contents-main ul li{
	list-style:disc;
	margin-bottom: 12px;
	margin-left: 1.2em;
}
#contents-main ol li{
	list-style:decimal inside ;
	margin-bottom:1em;
	}

/* リスト内のテーブル設定 */
#contents-main ol li table,
#contents-main ul li table {
	width:auto;
	font-size:100%;
	margin:0;
	}
#contents-main ol li table td,
#contents-main ul li table td {
	vertical-align:top;
	}




/*　テーブル　*/

#contents-main table {
	width:100%;
	border-collapse:collapse;
	font-size: 100%;
	margin:0 0 30px 0;
}
#contents-main table th {
    text-align: left;
	padding: 1em;
	white-space:nowrap;
	vertical-align:middle;
	font-weight: bold;
	font-size: 125%;
	background-color: rgba(252, 201, 99, 0.4);
}
#contents-main table td {
	background:none;
	padding: 1em;
	text-align: left;
	font-size: 110%;
}

#contents-main table td:first-child {
	/* font-weight: bold; */
	white-space: nowrap;
}
select{
	padding: 10px;
}


/* ★タブの設定-------------------------------- */

#contents-main #tabArea {
/*	background:#FFF;*/
	border-top:1px solid #999;
	height:auto;
	padding:30px 0;
	margin:0 0 0px 0;
	overflow-y:auto;
	clear:both;
	}

/*　タブ切り替えの設定　--------------------------------　*/

#contents-main ul#tab {
	margin:0 auto;
	padding-left:60px;
	width:100%;
	}
#contents-main ul#tab li{
	float:left;
	list-style:none;
	display:inline;
	}
#contents-main ul#tab li a{
	display:inline-block;
	background:#F4F4F4;
	height:40px;
	width:130px;
	margin:0 5px 0 0;
	font-size:95%;
	line-height:40px;
	text-align:center;
	color:#333;
	white-space:nowrap;
	text-decoration:none;
	border:1px solid #999;
	border-bottom:0;
	}
#contents-main ul#tab li a.hover,
#contents-main ul#tab li a.active{
	background:#00A55D;
	color:#fff;
	}






/* フッター--------------------------------　*/

#footer {
	margin:0 auto 0px auto;
	padding: 56px 0;
	width:100%;
	clear:both;
	background-color: #fcc963;
	position: relative;
	font-family: 'Noto Sans JP', sans-serif;
}
#footer .footer_inner {
    max-width: 1200px;
    width: 94%;
    margin: 0 auto;
}
#footer .footer_ct {
	display: flex;
	display:-ms-flexbox;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	-webkit-box-align: end;
	-ms-flex-align: end;
	align-items: flex-end;
}
#footer .footer_ct .ct-text{
	flex: 1 1 auto;
}
#footer .footer-logo {
	margin-right: 6.6666%;
}
#footer .footer-logo a {
	font-size: min(2vw, 32px);
    letter-spacing: 0.05em;
    font-weight: 600;
    text-decoration: none;
    color: #333;
	display: block;
	white-space: nowrap;
}
#footer address {
	font-size: 112.5%;
    font-weight: 600;
	line-height: 1.9;
	color: #333;
}
#footer a{
	color: #333;
	text-decoration: none;
}



/* ページトップ */
#footer p.pagetop {
	display: none;
	position: fixed;
	bottom: 20px;
	right: 20px;
	}
#footer p.pagetop a {
	display: block;
	width: 50px;
	height: 50px;
	background-color: #000;
	text-align: center;
	color: #fff;
	font-size: 14px;
	text-decoration: none;
	line-height: 48px;
	filter: alpha(opacity=85); /* 透過設定 */
	  -moz-opacity:0.85;
	opacity:0.85;
	border-radius: 50%;
	}
#footer p.pagetop a:hover {
	background-color: #333;
	}

/* 住所 */
#footer #address {
	padding-top:30px;
	margin-bottom:4px;
	}
#footer #address p{
	text-align:center;
	font-size:75%;
	color:#333;
	}

/* コピーライト */
#footer #copyright {
	margin:0px auto 0 auto;
	padding: 10px 0px;
	}
#footer #copyright p{
	text-align:center;
	font-size:70%;
	color:#eee;
	}




/* ★追記の設定-------------------------------- */

.tuiki{
	display:none;
	}

.read_open_close{
	cursor:pointer;
	}

/* ★縦書きの設定-------------------------------- */

#contents-main .tate{
	-ms-writing-mode: tb-lr;
	-o-writing-mode: vertical-lr;
	writing-mode: vertical-lr;
}

.p-relative{
	position: relative;
}
.p-center {
	display: block;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translateY(-50%) translateX(-50%);
	-webkit-transform: translateY(-50%) translateX(-50%);
}


/* ★トップページのみ--------------------------------　*/
body.index #contents-main {
	padding-bottom: 0;
}

/*実家じまい専科について　top-about*/

.top-about {
	margin-top: 37px;
}
.top-about .top-about_inner {
	background-color: #fde5b5;
	border-radius: 40px;
	padding: 4.2%;
}
.pd-left{
	padding-left: 5%;
}

/*ボタン*/
#contents-main .btn {
	font-size: 125%;
    font-weight: bold;
    color: #fff;
    background: #ec6018;
    padding: 20px 26px;
    border-radius: 30px;
	letter-spacing: 0.05em;
	transition: 0.3s ease;
	display: inline-block;
    white-space: nowrap;
    line-height: 1;
}
#contents-main .btn .btn-text{
	padding: 0 1em;
	display: inline-block;
}
#contents-main .btn-arrow{
	display: inline-block;
	transition: 0.3s ease-in-out;
}
#contents-main .btn:hover {
	background-color: #000;
}
#contents-main .btn:hover .btn-arrow{
	transform: translateX(10px);
}

/*私たちにできること*/
.cando_item {
	width: 29.1%;
	text-align: center;
}
.cando_item .want-ttl {
	font-size: 150%;
	margin-bottom: 20px;
	display:-webkit-box;
  	display:-ms-flexbox;
  	display:flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	font-weight: bold;
}
.cando_item .want-ttl img {
	max-height: 35px;
	margin-right: 10px;
}
.cando_item .cando_item_img{
	width: 70%;
	margin: 0 auto 20px;
}
#contents-main .cando_item h3 {
	color: #ec6018;
	font-weight: bold;
	text-align: center;
	font-size: 200%;
	padding-bottom: 0;
	margin-bottom: 14px;
}

/*よくあるお悩み*/
.readmore {
	position: relative;
	margin: 0 auto 0;
	padding: 0px 0px 56px;
}
  
.readmore-hide {
	height: 0;
	overflow: hidden;
	transition: all .4s;
}
.readmore button{
	position: absolute;
	display: table;
	left: 50%;
	bottom: 0px;
	margin: 0 auto;
	width: 173px;
	padding: 8px 20px;
	line-height: 1;
	color: #fff;
	text-align: center;
	border-radius: 30px;
	border: none;
	background-color: #ec6018;
	transform: translateX(-50%);
	cursor: pointer;
	z-index: 1;
	transition: all .4s;
	font-size: 20px;
	font-weight: bold;
}
.readmore button::after{
	content: "";
    width: 12px;
    height: 12px;
    transform: translate(60%, -20%) rotate(135deg);
    border-top: 4px solid #fff;
    border-right: 4px solid #fff;
    transition: 0.3s ease;
    display: inline-block;
}
.readmore button.btn_open::after{
    transform: translate(60%, 20%) rotate(-45deg);
}
.faq_item{
	margin-bottom: 8%;
}
.faq_item:last-of-type{
	margin-bottom: 0;
}
.faq_num{
	color: #2f9f5f;
	font-weight: bold;
	text-align: center;
}
.faq_num span{
	display: inline-block;
	border-radius: 40px 40px 0 0;
	background-color: #fff;
	padding: 30px 2.4em 5px;
	font-size: 162.5%;
	line-height: 1;
}
.faq_box{
	margin-top: -2px;
	background-color: #fff;
    border-radius: 40px;
    padding: 30px 5% 20px;
}

.bg-green .faq_num{
	color: #fff;
}
.bg-green .faq_num span{
	background-color: #a1d6b9;
}
.bg-green .faq_box{
	background-color: #a1d6b9;
}

.faq_box .readmore-hide.is_open {
	margin-top: 40px;
}
.faq_ttl{
	position: relative;
	display: flex;
	display:-ms-flexbox;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: end;
	-ms-flex-align: end;
	align-items: flex-end;
}
#contents-main .faq_ttl h3{
	background-color: #f2f2f2;
	border-radius: 20px;
	padding: 1em;
	text-align: center;
	margin-bottom: 0;
	width: 100%;
}
.faq_hitoicon {
	max-height: 190px;
	max-width: 14%;
	position: absolute;
	bottom: -2px;
	z-index: 1;
}
.icon-left .faq_hitoicon{
	left: 0;
}
.icon-right .faq_hitoicon{
	right: 0;
}
#contents-main .readmore-hide h3{
	text-align: center;

}


/*おしらせ*/
/* .top-news{
	background-color: #F2F0EE;
}
.top-news .con-main-box{
	padding: 60px 0 84px;
	position: relative;
}
#contents-main .top-news h2.tate{
	position: absolute;
    top: -4%;
    left: 0;
}
#contents-main .allview {
	position: absolute;
    bottom: 60px;
	left: 0.5em;
}
#contents-main .allview a{
	text-decoration: none;
	position: relative;
	top:0;
	padding-top: 8px;
}
#contents-main .allview a:after{
	content: "";
    width: 1px;
    height: 54px;
    margin: 0 0;
    background: #ddd;
    display: inline-block;
    position: absolute;
    top: -100%;
    left: 50%;
}
.top-news .news-contents{
	width: 100%;
	padding-left: 20%;
	position: relative;
}

.news-contents .topics{
	border-bottom: 1px solid #ccc;
	padding: 1.5em 1em;
}
#contents-main .news .news-contents .topics .date{
	margin: 0;
	color: #999;
}
#contents-main .news .news-contents .topics .title{
	margin: 0 0 0 2em;
} */

/*お問い合わせ*/
.top-contact {
	padding-bottom: 150px;
}
.top-contact_inner{
	background: #fff;
	border-radius: 40px;
	padding: 4% 4.5%;
}
.top-contact_text{
	text-align: center;
}
#contents-main .contact-tel{
	color: #ec6018;
	font-size: 225%;
	font-family: 'Noto Sans JP', sans-serif;
	letter-spacing: 0.05em;
	line-height: 1;
	display: inline-block;
}
#contents-main .top-contact_text .btn{
	margin: 20px 0;
}
#contents-main .contact-tel .fs-small{
	font-size: 88.888%;
}
.top-contact_left {
	width: 30.5%;
}
.top-contact_right {
	width: 32.5%;
}


/*アクセス*/
.bg-b{
	background-color: #797369;
	color: #fff;
}
#contents-main .bg-b h3 {
	color: #fff;
	margin-bottom: 10px;
}
#contents-main .address-text {
	width: 40%;
}
#contents-main .bg-b p{
	color: #fff;
	font-size: 87.5%;
}
#contents-main .bg-b p a{
    color: #fff;
}
.bottom-company .con-main-box {
    padding: 60px 0;
    position: relative;
	margin-bottom: 0;
}
.bottom-company_text {
	margin-bottom: 30px;
}
#contents-main .bg-b .freedial {
	font-size: 150%;
	margin-bottom: 0;
    line-height: 1;
}
#contents-main .freedial img{
	vertical-align: top;
	margin: 0 10px 0 0;
}
#contents-main .freedial span.time{
	font-size: 66.6%;
}
#contents-main .ml-icon{
	margin-left: 48px;
}
#contents-main .mb-0{
	margin-bottom: 0;
}
#contents-main .bg-b .sns-box{
	margin-left: auto;
}


/* ★-------------------------------- */



/* ★ニュース-------------------------------- */
.newsblog{
	display: flex;
	display:-ms-flexbox;
	-webkit-box-align: start;
	-ms-flex-align: start;
	align-items: flex-start;
}

.newsblog .leftSide{
	width: 70%;
}
.newsblog .rightSide{
	width: 25%;
	margin-left: 5%;
}
#contents-main .newsblog .rightSide h3{
	border-bottom: 1px solid #bbb;
    letter-spacing: 0.1em;
    text-align: center;
	margin-top: 0;
}
.post{
	position: relative;
}
.detail .entry img{
	margin-bottom: 1em;
	max-height: 840px;
	max-width: 790px;
}
.entry div{
	line-height: 1.8em;
	/* font-size: 90%; */
}
#contents-main .entry p{
	font-size: 100%;
}
#contents-main .entry ul, #contents-main .entry ol {
    font-size: 100%;
	padding-left: 1em;
}
#contents-main .entry ul li, #contents-main .entry ol li{
	margin-bottom: 0;
}
#contents-main .entry ul li{
	margin-left: 1.2em;
}



/* ★ブログページ共通--------------------------------　*/
body #contents-main .post {
	margin: 0 ;
}
#contents-main .post h2 a{
	color: #333;
}
#contents-main .post h2 .newsdate{
    font-size: 50%;
    color: #666;
    letter-spacing: 0.1em;
}
#contents-main .post h2.title{
	border-bottom: 1px solid #bbb;
	margin-bottom: 1em;
    padding-bottom: 1em;
	text-align: left;
}

body #contents-main .post h3{
	margin-bottom: 14px;
	margin-top: 0;
	border-left: 6px solid #ccc;
    padding: 4px 0 4px 10px;
}
body #contents-main .post h3 a{
	color: #333;
}
#contents-main .post h4{
	font-weight: 600;
    font-size: 110%;
}
#contents-main .post h4:before{
	content: "";
	display: inline-block;
	width: 2em;
	height: 1px;
	background: #ccc;
	vertical-align: super;
    margin-right: 5px;
}

body #contents-main .post h3.cut-text{
	margin-left: 2em;
    font-size: 110%;
	margin-top: 1em;
	line-height: 1.3;
}
#contents-main .to-blogtop a{
	display: inline-block;
    padding: 10px 2em;
    border: 1px solid #bbb;
}

#contents-main .ct-mb{
	margin-bottom: 3em;
}

/* 画像下　影の設定 */
body #contents-main .post p img{
	padding-bottom:25px;
	/* background:url(../img/works_img_bg.png) no-repeat bottom center;
	background-size: 100% 25px; */
	}

/* 日付など */
#contents-main .post p.links{
	color:#333;
	line-height:1.8em;
	font-size:80%;
	text-align:right;
	margin:0 0px 5px 0;
	padding:0 0px;
	}

#contents-main p.links a{
	text-decoration:none; color:#1F0000
}


/* ページング */
#contents-main .post .pager {
	display: block;
	width: 100%;
	clear:both;
	text-align:center ;
	font-size:80%;
	line-height:2em;
	margin-top:40px;
	padding-top: 2em;
	}
#contents-main .post .pager span.pager_item a {
	margin:0 2px;
	padding:3px 4px;
	background:#fff;
	border:1px solid #bbb;color:#000;
	}

#contents-main .post .to-blogtop{
	text-align:center;
	margin: 4em 0;
}
#contents-main .post .to-blogtop a{
	color: #333;
	font-weight: normal;
}




/* 会社概要★--------------------------------　*/
.company-profile_inner{
	padding: 6% 4.2%;
	background-color: rgba(252,201,99, 0.4);
	border-radius: 40px;
}
#contents-main table.com-profile-table {
	border: none;
	margin-bottom: 0;
}
#contents-main table.com-profile-table th{
	padding: 1.3em 1em;
	border: none;
    border-bottom: 1px solid #eec075;
	background: none;
    color: #ec6018;
	text-align: left;
	font-size: 125%;
	letter-spacing: 0.05em;
}
#contents-main table.com-profile-table td{
	padding: 1.3em 1em;
	border: none;
    border-bottom: 1px solid #eec075;
	text-align: left;
	font-size: 118.75%;
}
.about {
	position: relative;
}
.about-text .ct-text{
	width: 60%;
	text-align: left;
}
.about-text .ct-img{
	width: 36%;
	margin-left: 4%;
}
.case_inner {
	background-color: #fff;
    padding: 4.2%;
    border-radius: 40px;
	position: relative;
}
.case_inner::before{
	content: "";
	display: inline-block;
	width: 30%;
	height: 7em;
	background: url(../img/company_tr_shape.png) no-repeat top right;
	background-size: contain;
	position: absolute;
	top: -4%;
	right: 5%;
}
.case_ct {
	margin-bottom: 2em;
}
.case_data {
	border-top: 2px dashed #aaa;
    border-bottom: 2px dashed #aaa;
    padding: 20px 0 10px;
	position: relative;
}
#contents-main .case_data ul{
	margin-bottom: 0;
}
.case_data::before{
	content: "DATA";
	color: #8bcca6;
	font-size: 120%;
	font-weight: bold;
	position: absolute;
	right: 0;
	bottom: 101%;
}
.case_ct .ct-img {
	border-radius: 20px;
}


/* ★お問い合わせ-------------------------------- */

#contents-main table.soy_inquiry_message {
	border:0;
	background:none;
	margin:0;
	margin-bottom: 2em;
	text-align: center;
	}

#inquiry_form_wrapper{
	text-align: center;
}
#contents-main table.soy_inquiry_message td , #contents-main table.soy_inquiry_message th{
	border:0;
	background:none;
	padding:0;
	}

span.error_message {
	color:#900}

input[name="confirm"]{
	padding: 10px 30px;
}

/* お問い合わせ　テーブル設定 */
body #contents-main table#inquiry_form  {
	width:100%;
	border-collapse: separate;
	border-spacing: 5px;
	margin: 0 auto;
}
body #contents-main table#inquiry_form  th {
	width: 20%;
	border-radius: 5px;
}
body #contents-main table#inquiry_form table#soyinquiry_address_form td{
    width: auto;
}
body #contents-main table.soyinquiry_address_form td input{
    width: 60%;
}
body #contents-main table.soyinquiry_address_form td input[type="submit"]{
    width: auto;
}

body #contents-main table.soyinquiry_address_form td{
	padding: 10px 0;
}
/* nest table用 */
body #contents-main table#inquiry_form table{
	width:350px;
	border:0;
}


/* テキストボックスなどの長さ */
body #contents-main table#inquiry_form  td input,
body #contents-main table#inquiry_form  td textarea{
	padding: 8px;
    border: none;
}

body #contents-main table#inquiry_form  td input.name{
	width:100%;}
body #contents-main table#inquiry_form  td input.address{
	width:100%;}
body #contents-main table#inquiry_form  td input.mail{
	width:100%;}
body #contents-main table#inquiry_form  td input.tel{
	width:100%;}
body #contents-main table#inquiry_form  td input.company{
	width:100%;}
body #contents-main table#inquiry_form  td input.kenmei{
	width:100%;}
body #contents-main table#inquiry_form  td textarea {
	width:100%;
	padding: 8px;
}



/*privacy*/
#contents-main .privacy {
	margin-top: 5em;
}
#contents-main .privacy p,
#contents-main .privacy ul,
#contents-main .privacy li{
	color: #333;
    font-size: 100%;
}



@media screen and (min-width:801px) and ( max-width:960px) {
    /*　画面サイズが801pxから960pxまではここを読み込む　*/
	#contents-main .land-list_detail table td {
		font-size: 85%;
	}
	#title h2 {
		font-size: 290%;
	}
	#contents-main h2 {
		margin: 0 0 1em 0;
		font-size: 220%;
	}
	#contents-main h3 {
		font-size: 130%;
	}
	#contents-main p {
		font-size: 105%;
	}
	#contents-main ul, #contents-main ol {
		font-size: 100%;
	}
	.cando_item .want-ttl {
		font-size: 115%;
	}
	.cando_item .want-ttl img{
		max-height: 25px;
	}
	.cando_item {
		width: 31.1%;
	}
	#contents-main .cando_item h3 {
		font-size: 160%;
	}
	.faq_num span {
		font-size: 125%;
	}
	#footer .footer_ct {
		display: block;
	}
	.copyright {
		text-align: right;
		margin-top: 1em;
	}
}

/* 印刷用設定　ここから */
@media print {


/* JSナビ固定の解除 */
.fixed {
	position:relative ;
	}


}
/* 印刷用設定　ここまで */