
body {
    background-color: rgba(239,232,220,0.4);
	height: 100%;
	text-align: center;
	margin: 0 auto;
	padding: 0;
	font: 14px/1.8em Verdana, "小塚ゴシック Pr6N", "Kozuka Gothic Pr6N B", "Kozuka Gothic Pr6N EL", "Kozuka Gothic Pr6N H", "Kozuka Gothic Pr6N L", "Kozuka Gothic Pr6N M", "Kozuka Gothic Pr6N R","PGothic", sans-serif;
}

.inner,#pointbox,#concept,#flow,#profile,p{
	max-width: 940px;
	margin: 0 auto;
}
 #main{
	position: relative;		/* フッター部の配置用に定義 */
	min-height: 100%;
	margin: 0 auto;
}
#contents,#examplecontents{
	padding-top: 130px;
	width: 100%;
	box-sizing: border-box;
}

a{
	text-decoration: none;
}

/*---------メインビジュアル---------*/
#main_visual{
	position: relative;
	width:100%;
	height: 310px;
	background: url(../index/image/main.png);
	background-position:center center;
	background-repeat:no-repeat;
	background-size:cover;
}
#main_visual{
	max-height:310px;
	max-width: 1920px;
}
#main_visual .pc{
	width: 100%;
	max-width: 1920px;
	height: auto;
	max-height: 310px;
}

#main_visual .sp{
	display: none;
}

#concept_visual,#flow_visual,#campany_visual,#contact_visual{
	width: 100%;
	max-width: 1920px;
	height: 200px;
	margin: 0 auto;
}
#concept_visual{
	background: url(../concept/image/header.png) no-repeat center;
}
#flow_visual{
	background: url(../flow/image/header.png) no-repeat center;
}
#campany_visual{
	background: url(../campany/image/header.png) no-repeat center;
}
#contact_visual{
	background: url(../contact/image/header.png)no-repeat center;
}
.contents_title{
	margin:0px auto;
	display: block;
	font-weight: bold;
	text-align: center;
	font-size: 46px;
	color: #754c24;
	padding: 100px 0 50px;
}
/*---------TOP---------*/
/*---------ニーズ---------*/
#needs{
	background: #fdeeeb;
	padding:20px; 
}

.needs_title{
	font-size: 22px;
	margin-bottom: 10px;
	color: #e83f6c;
	
}
.needs_honbun{
	font-size: 16px;
}

/*---------ポイント------------*/
#point{
	padding:25px 25px 0;
}
#pointbox{
	display: flex;
	justify-content: space-between;
}
#pointbox .pc{
	marigin:0 auto;
	padding:0;
	max-width: 940px;
	max-height: 381px;
	width: 100%;
	height: auto;
	align-items: center;
	
}
#pointbox .sp{
	display:none;
}

#design p{
	display: none;
	font-size: 26px;
	color:#754c24;
	margin:20px auto 20px;
}


/*---------コンセプト・リフォーム---------*/
#mainbox{
	max-width: 940px;
	height: auto;
	display: flex;
	margin: 30px auto;
	justify-content: space-between;
	align-items: center;
}
#mainbox_cosept,#mainbox_flow{
	padding: 0px ;
	margin :0px;
	width: 45%;
	height: auto;
	
}
.concept_back{
	background: url(../index/image/concept_back.png) no-repeat center;
	margin: 0 auto;
	max-width: 768px;
	width: 100%;
	height: auto;
	padding: 16px 0px 16px 0px;
}
.flow_back{
	background: url(../index/image/flow_back.png) no-repeat center;
	width: 100%;
	max-width: 768px;
	height: auto;
	margin: 0 auto;
	padding: 16px 0px 16px 0px;
}
.flow_back .sp,.concept_back .sp{
	display: none;
}
.border{
	width: 100%;
	margin: 30px 0px 10px;
	height: 1px;
}
.border_sp{
	display: none;
}
.mainbox_title_concept,.mainbox_title_flow{
	max-width: 450px;
	height: auto;
	margin: 0px auto 0px;
    padding-bottom: 10px;
	border-bottom:  #e83f6c solid 1px;
}
.mainbox_title_concept p,.mainbox_title_flow p{
	color: #754c24;
	font-size: 30px;
	padding-top: 16px;
}

.mainbox_sub{
	position: relative;
	padding-left: 70px;
}
.mainbox_sub li{
	font-size: 20px;
	line-height: 30px;
	margin: 0 auto 10px ;
	text-align: left;
	list-style: none;
	z-index: auto;
}
.mainbox_sub .li_concept{
	color: #e83f6c;
}
.mainbox_sub .li_flow{
	color: #e83f6c;
}
.mainbox_sub li:before {/*疑似要素*/
  font-family: "Font Awesome 5 Free";
  content: "\f111";
  color: #e83f6c; /*アイコン色*/
  position: absolute;
  left : 2em; /*左端からのアイコンまで*/
}
.more_btn{
	position: relative;
	background: #fff url(../index/image/arrow_pink.png) no-repeat 90%;
	border: #754c24 solid 1px;
	border-radius: 4px;
	width: 120px;
	height: 35px;
	margin: 0px auto 20px;
}
.more_btn p{
	position: absolute;
	width: 120px;
	top: 45%;
    left: 50%;
    transform : translate(-50%,-50%);
	display: block;
	color: #754c24;
	font-size: 18px;
}
/*---------TOP-終わり--------*/
/*---------コンセプト---------*/
.invitation p{
	font-size: 14px;
	color: #000;
	text-align: center;
}
.invitation{
	margin: 40px auto 20px;;
	padding: 0 8px;
}
.concept_box1,.concept_box2{
	max-width: 940px;
	max-height: 256px;
	position: relative;
	width: 100%;
	height: 256px;
	margin: 0 auto 40px;
	display: block;
}
.concept_box1{
	background: url(../concept/image/1_back.png)no-repeat center;
}
.concept_box2{
	background: url(../concept/image/2_back.png)no-repeat center;
}

.concepthead_title1,.concepthead_title2{
	max-width:400px;
	color: #fff;
	font-size: 28px;
	font-weight: bold;
	line-height: 39px;
}
.concepthead_title1{
	position: absolute;
	right: 0px;
	top: 34px;
	padding-right: 44px;
}
.concepthead_title2{
	position: absolute;
	left: 0px;
	top: 34px;
	padding-left: 60px;
}
.concepthead_sub1,.concepthead_sub2{
	padding: 0px;
}
.concepthead_sub1 p,.concepthead_sub2 p{
	color: #fff;
	max-width:400px;
	max-height: 109px;
	text-align: left;
}
.concepthead_sub1 p{
	right: 0;
	top:165px;
	position: absolute;
	padding-right: 40px;
}
.concepthead_sub2 p{
	left: 0;
	top:175px;
	position: absolute;
	padding-left: 40px;
}

.concept_massege{
	display: flex;
	justify-content: center;
	margin:20px auto 40px;
	max-width: 940px;
	max-height: 110px;
	align-items: center;
}
.concept_massege img{
	width: 110px;
	height: 100px;
	margin-left: 20px;
}
.massege{
	position: relative;
	max-width:480px; 
	height: auto; 
	background: #fff;
	display: inline-block;
 	margin: 8px 15px 1.5em 0;
	padding: 7px 16px;
 	color: #555;
	text-align: left;
	border-radius: 8px;
}
.massege:before{
	position: absolute;
	content: "";
	top: 50%;
	left: 100%;
 	margin-top: -15px;
	border: 15px solid transparent;
	border-left: 15px solid #FFF;
}
/*---------リフォーム--------*/
.pink{
	color: #e83f6c;
}

.step{
	display: block;
	margin: 0px auto;
	align-items: center;
	justify-content: left;
	background: #fff;
	border-radius: 12px;
	max-width: 700px;
}
.arrow {
	width: 100%;
	height: 20px;
	max-width: 100px;
	margin: 20px auto 16px;
}
.step p{
	display:block;
	max-width:550px;
	margin: 0px auto;
	padding: 16px;
	text-align: center;
}

#flow_step{
	margin: 0px auto 40px;
} 

.step_title{
	display: flex;
	justify-content: space-between;
	width: 100%;
	padding: 16px;
	max-width: 668px;
	border-bottom: #e83f6c 2px solid;
}
.flow_title{
	color: #e83f6c;
	font-size: 20px;
	margin: 0px;
}
.flow_title img{
	max-width: 65px;
	width: 100%;
	height: auto;
    max-height: 26px;
}
/*---------会社概要---------*/
.mainboxcenter{
	padding: 60px 0px;
}
.mainbox_title p{
	color: #e83f6c;
	font-size: 32px;
	margin-bottom: 20px;
}
#mainbox_profile{
	margin: 30px 0px;
}
#main_table {
	border-collapse: collapse;
    width: 100%;
	height: auto;
    max-width: 700px;
	margin:0px auto;
}

#main_table td {
	max-width: 300px;
	 padding: 10px;
     border-top: 1px solid #e6ebee;
}

#main_table .titletext {
	color: #754c24 ;
	font-weight: bold;
    text-align: left;
    width: 40%;
}

#main_table .maintext{
	text-align: left;
}

#profile{
	margin-bottom: 30px;
}

.ggmap {
height: 450px;
max-width: 700px;
overflow: hidden;
margin: 0 auto;
}
.ggmap iframe,
.ggmap object,
.ggmap embed {
width: 100%;
height: 100%;
}

/*---------施工事例---------*/
#examplecontents{
	margin-bottom: 140px;
}
#example_tyuui p{
	font-size: 18px;
}
#example_tyuui img{
	margin-top: 20px;
	width: 100%;
	height: auto;
	max-height: 293px;
	max-width: 274px;
}
/*---------お問い合わせ---------*/
#mailform{
	margin: 30px auto;
	max-width: 700px;
}
table{
	border-collapse: collapse;
    width: 100%;
	height: auto;
    max-width: 940px;
	margin:0px auto;
}

#mailform td {
	 padding: 20px;
     border: 1px solid #754c24;
}

#mailform .title {
	color: #000 ;
	font-weight: bold;
    width: 30%;
	background: #fff1d3;
}

#mailform  .maintext{
	text-align: left;
}

#form_inputbtn{
	text-align:center;
	margin:30px 0px 1.5em 0px;
}

#form_inputbtn input{
	display:block;
	border:none;
	width:13em;
	border-radius: 6px;
	margin:0px auto;
	font-weight:bold;
	background-color: #e83f6c;
	color:#FFF;
	padding:10px;
	font-size:108%;
	cursor:pointer;
}

.thank{
	font-size: 40px;
	margin: 0 auto;
	text-align: center;
	line-height: 60px;
	color: #e83f6c;
	margin-top: 80px;
}
.thank_comments{
	font-size: 20px;
	line-height: 32px;
	margin-bottom: 350px;
}

/*---------お問い合わせボタン---------*/
#contact_btn{
	background: #e83f6c;
	width:350px;
	padding: 20px 0px ;
	margin:30px auto;
	border-radius: 6px;
}

#telcontact_btn{
	background:#FF9FB6;
	width:100%;
	padding: 0px 0px 30px;
	margin:0 auto 60px;
}
.contact_item{
	max-width: 350px;
	margin: 0px auto;
	display: block;
	align-items: center;
	justify-content: space-between;
}
.contact_item p{
	display: inline-block;
	text-align: left;
	color: #fff;
	font-size: 22px;
	line-height: 30px;
	
}
.tel_moji{
	display: inline-block;
	text-align: center;
	color: #fff;
	font-size: 22px;
	line-height: 30px;	
}
.tel,#telcontact_item a{
	color: #754c24;
	font-size: 30px;
	line-height: 30px;
	margin: 10px auto 8px;
	text-decoration: none;
}
.tel{
	font-weight: bold;
}
#icon_mail{
	margin: 0px 10px 0px 5px;
}
.mail{
	font-size: 16px;
	margin: 10px auto 0px;
}
/*---------戻るボタン---------*/
#pageTop {
    position: fixed;
    bottom: 10px;
    right: 20px;
    padding:0px; 
	z-index: 1000;
}
#pageTop a {
    display: block;
    border-radius: 30px;
    width: 30px;
    height: 30px;
    background: #e83f6c url(../img/arrow_white.png) no-repeat center ;
    text-decoration: none;
    font-weight: normal;
}
#pageTop a:hover {
    text-decoration: none;
    opacity: 0.7;
}

/*---------フッター---------*/
#footerbox{
	background: #754c24;
	height: 130px;
	bottom: 0px;
	width: 100%;
	margin: 0px;
	text-align: center;
	float: left;
	display: inline-block;
}
#footercontents{
	max-width: 760px;
	text-align: left;
	margin: 0px auto;
}
#footer_p{
	max-width: 760px;
	display: flex;
	text-align: left;
	padding: 20px 0px 0px;
	margin: 0px 0px 40px;
	align-items: baseline;
	justify-content: left;
	color: #fff;
}

.co{
	text-align: left;
	font-size: 15px;
	margin-right: 20px;
	margin-left: 0px;
}
.co a,.item a{
	color: #fff;
	text-decoration: none;
}
.item,.small{
	font-size: 12px;
}
.small{
	color: #f4f4f4;
	max-width: 760px;
	margin: 0px auto;
}

@media screen and (max-width: 768px){
	#main_visual{
		background: url(none);
		height: auto;
	}
	#contents{
		padding-top: 92px;
	}
	.mainbox_sub{
		z-index: 0;
	}
	#mainbox{
	display: block;
	margin: 0px auto;
	width: 100%;
	justify-content: space-between;
}
	#mainbox_cosept,#mainbox_flow{
	width: 100%;
	height: auto;
	margin: 0 auto;
		padding: 0px;
	
}
	.mainbox_sub{
		padding: 0px 0px 0px 40px;
		margin: 0px;
	}
	.mainbox_sub li{
	font-size: 18px;
	line-height: 28px;
}

.mainbox_sub li:before {/*疑似要素*/
  font-family: "Font Awesome 5 Free";
  content: "\f111";
  color: #e83f6c; /*アイコン色*/
  position: absolute;
  left : 1em; /*左端からのアイコンまで*/
}
	.mainbox_title_concept,.mainbox_title_flow{
		background: none;
		padding-bottom: 0px;
		margin: 0px auto  10px;
	}
	.mainbox_title_concept p,.mainbox_title_flow p{
	   font-size: 24px;
	   margin-bottom: 10px;
	   margin-top: 0px;
	   line-height: 30px;
     }
	.mainbox_title_flow{
		height: 60px;
	}
    .mainbox_sub p{
	   font-size: 20px;
     }
	#main_visual .pc{
		display: none;
	}
	#main_visual .sp{
		display: block;
		width: 100%;
		max-width: 750px;
		height: auto;
	}
	
	#point{
		padding: 10px;
	}
	#pointbox {
		display: block;
		margin: 0px auto;
		box-sizing: border-box;
	}
	#pointbox .pc{
		display: none;
	}
	#pointbox .sp{
		display:block;
		width: 100%;
		margin-bottom: 10px;
	}
	#design p{
		display: block;
		font-size: 20px;
		line-height: 28px;
	}
	.flow_back,.concept_back{
		padding: 20px 0px 10px;
		width: 100%;
		height: auto;
	}
	.flow_back p,.concept_back p{
		font-size: 16px;
	}
	.flow_back .pc,.concept_back .pc{
		display: none;
	}
	.flow_back .sp,.concept_back .sp{
		display: block;
		width: 95%;
		height: auto;
		margin: 0 auto;
	}
	.step{
		display: block;
	    margin: 0px auto ;
		width: 98%;
	    background: #fff;
	    border-radius: 12px;
		padding-bottom: 16px;
	}
	.step p{
	    max-width:400px;
	    text-align: left;
    }
	#concept img,#flow img{
	    width: 100%;
}
	#concept .pc,#flow .pc{
		display: none;
	}
	#concept .sp,#flow .sp{
		display: block;
		width:100%;
		max-width: 700px;
	}
}

@media screen and (max-width: 420px){
	
	.border{
	   display: none;
}
    .border_sp{
		display: block;
		max-width: 700px;
	   width: 100%;
	   margin: 6px 0px 0px;
}
	.more_btn p{
		font-size: 20px;
	}
	.more_btn{
		height: 40px;
		margin-top: 8px;
	}
	.contents_title{
		font-size: 36px;
		line-height: 42px;
	}
	.concept_box1{
	background: url(../concept/image/1_back_sp.png)no-repeat center;
	margin-bottom: 20px;
}
    .concept_box2{
	background: url(../concept/image/2_back_sp.png)no-repeat center;
	margin-bottom: 20px;
}
	.invitation p{
		text-align: left;
		line-height: 24px;
	}
	.invitation img{
		width: 100%;
		height: auto;
	}
   .concepthead_title1,.concepthead_title2{
	font-size: 20px;
	line-height: 34px;
}
.concepthead_title1{
	right: 20px;
	top: 0px;
	padding-right: 24px;
}
.concepthead_title2{
	left: 40px;
	top: 0px;
	padding-left: 14px;
}
.concepthead_sub1,.concepthead_sub2{
	padding: 30px;
}

.concepthead_sub1 p{
	right: 0;
	top:130px;
	position: absolute;
	padding: 0 10px;
}
.concepthead_sub2 p{
	left: 0;
	top:130px;
	position: absolute;
	padding:0 10px;
}

.concept_massege{
	display: block;
	margin:10px auto 170px;
	max-width: 940px;
}
.concept_massege img{
	width: 110px;
	height: 100px;
	margin-left: 20px;
}

.massege:before{
	content: "";
	position: absolute;
	top: 110%;
	left: 50%;
 	margin-left: -15px;
	border: 15px solid transparent;
	border-top: 15px solid #fff;
}

	.step_title{
	padding: 10px;
	width: 93%;
}

	#mainbox_profile{
		margin: 0px 0px;
	}
	.ggmap{
		padding: 8px;
		height:200px;
	}
	#examplecontents{
	margin-bottom: 30px;
		padding-top:0px;
}
#example_tyuui p{
	font-size: 16px;
	padding: 0px 8px;
}
#example_tyuui img{
	width: 60%;
	height: auto;
	}
	
	table {
	width: 93%;
	margin: 0px auto ;
	font-size: 14px;
  }
  
   .titletext,td {
    display: block;
    width: 100%;
    height: auto;
	padding: 10px 10px 0px;
	table-layout: fixed;
    word-break: break-all;
    word-wrap: break-all;
  }
	
	#mailform tr:last-child td{
	border-bottom: 1px solid #754c24;
	}
	#mailform td {
	 padding: 10px;
     border: 1px solid #754c24;
	 border-bottom: none;
}
	
#mailform .title {
	color: #000 ;
	font-weight: bold;
    width: 93%;
	text-align: center;
	background: #fff1d3;
}

#mailform  .maintext{
	text-align: center;
	width: 93%;
}

#form_inputbtn{
	text-align:center;
	margin:30px 0px 1.5em 0px;
}

#form_inputbtn input{
	display:block;
	border:none;
	width:13em;
	border-radius: 6px;
	margin:0px auto;
	font-weight:bold;
	background-color: #e83f6c;
	color:#FFF;
	padding:10px;
	font-size:108%;
	cursor:pointer;
}
	input[type="text"] {
  property: value;
		width: 95%;
}
	textarea{
  property: value;
		width: 95%;
}
	
	#contact_btn{
		margin:30px auto 30px;
		width: 95%;
		padding: 20px 0px;
	}
	#contact_btn img{
	    margin: 5px 10px 0px 5px;
    }
	#telcontact_btn{
		margin-bottom: 30px;
	}
	.tel{
		font-size: 28px;
	}
	#footerbox{
		padding: 0px 10px ;
		box-sizing: border-box;
	}
	#footer_p{
		display: inline-block;
		padding: 10px 00px;
		margin-bottom: 10px;
		
	}
	
}