/******************************************************************
Site Name: bellflotz
Author: bellflotz

Stylesheet: Main Stylesheet

Here's where the magic happens. Here, you'll see we are calling in
the separate media queries. The base mobile goes outside any query
and is called at the beginning, after that we call the rest
of the styles inside media queries.

Helpful articles on Sass file organization:
http://thesassway.com/advanced/modular-css-naming-conventions

******************************************************************/
@import "./reset.css";
@charset "UTF-8";
@import "./reset.css";
@import "https://fonts.googleapis.com/css?family=Allura|Six+Caps";
a{
	color: #333;
	text-decoration: none;
}
i{ font-style: normal; }
body{
	font-family : YuMincho, '游明朝', serif;
	color: #000;
	width: 100%;
	font-size: 100%;
}
#wrapper{
	width: 100%;
	font-size: 1rem;
	line-height: 1.4rem;
	background: #fff;
}
/*================================
	common
================================*/

.minittl {
    max-width: 100%;
    margin: 0 auto;
    background: #dae4e7;
    display: block;
    overflow: hidden;
}

.minittl h2 {
    font-size: 1em;
    font-weight: bold;
    background: #dae4e7;
    display: block;
    width: 1000px;
    margin: 0 auto;
    padding-bottom: 1%;
}


  .canlogo{
    max-width: 1000px;
    margin: 0 auto;
    background: #e5e6e6;
   }
   .canlogo img{
    width: 60%;
    /* float: right; */
    overflow: hidden;
    display: block;
    margin: 0 0 5% 30%;
   }


footer #copyright img.footer_logo_icon2 {
    height: 47px;
	margin-top: -15px;
}

#project_small {
    /* padding: 2rem 0 4rem 0; */
}

#project_small ul {
    width: 100%;
}

#project_small ul li {
    background: #fff;
    margin-bottom: 6px;
    width:49%;
    float: left;
    height: 110px;
    margin-right: 1%;
    padding: 6px;
    display: block;
}

#project_small ul li img {
    width: 25%;
    float: right;
}

#project_contents, #project_small {
    background: #dae4e7;
    padding-bottom: 2%;
}


#project_small ul li p:last-child span {
    display: block;
    font-size: .7rem;
}

.agree span p{
	display:block;
	padding:1%;
	border:1px solid #000;
	width: 20%;
	margin: 0 auto;
}

.company ul li img{
    width:70%;
    margin-left: 10%;
    float: right;
}

.company ul li img.cp_pmark{
    width: 100px;
    display: inline-block;
}

.inner{
	max-width: 1000px;
	margin: 0 auto;
}
h1,h2,h3,h4{ font-weight: normal; }
h2,
nav ul.nav_other,
h3,
h4,
.history dt{
	font-family: 'Six Caps', sans-serif;
	/*font-weight: bold;*/
}
#contents .contents_body i{
	font-family: 'Allura', sans-serif;
}
.flex{
	display: flex;
	display: -webkit-flex;
	align-items: center;
	-webkit-align-items: center;
}
b{ font-weight: bold; }
h1{
	text-align: center;
	font-size: 1.8rem;
	letter-spacing: 8px;
	padding: 2rem 0;
}
h1 span{
	display: block;
	margin-top: 0.8rem;
	font-size: .8rem;
	letter-spacing: 3px;
}
h2{
	font-size: 1.8rem;
	letter-spacing: 2px;
}
h4{
	text-align: center;
	font-size: 2.4rem;
	letter-spacing: 4px;
	line-height: 1;
	padding: 2rem 0;
}
h4 span{
	display: block;
	font-size: .8rem;
	font-weight: normal;
	letter-spacing: 2px;
	margin-top: 2rem;
	position: relative;
}
h4 span::after{
	content: "";
	position: absolute;
	top: -1rem;
	left: 50%;
	width: 10%;
	height: 5px;
	background: #b0a78e;
	margin-left: -5%;
}
/*================================
	header
================================*/
header{
	margin-bottom: 2rem;
	padding-top: .5rem;
}
header.index{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	z-index: 20;
}
#logo{
	margin: 0 0 -15px 0;
}
#logo img{
	margin-right: 1%;
}
#logo img:first-child{
	width: 12%;
}
#logo img:last-child{
	width: 270px;
}
/*================================
	nav
================================*/
nav{
	position: relative;
}
nav ul{
	justify-content: flex-end;
	-webkit-justify-content: flex-end;
}
nav ul li a{
	display: block;
}
nav ul.nav li{
	text-align: center;
	width: 22%;
	border-top: 3px solid #000;
	padding: 3px 0 0 3px;
}
nav ul.nav li:first-child{
	padding: 3px 0 0 0;
}
nav ul.nav li a{
	color: #000;
	font-size: .9rem;
	padding: .5rem 0;
}
nav ul.nav li a:hover,
nav ul.nav li.active a{
	background: #000;
	color: #fff;
}
nav ul.nav_other{
	position: absolute;
	top: -35px;
	right: 0;
	font-size: .7rem;
}
nav ul.nav_other li{
	margin-left: .5rem;
	width: 140px;
	height: 28px;
	line-height: 28px;
	text-align: center;
}
nav ul.nav_other li a{
	color: #000;
	font-size: 1.2rem;
	letter-spacing: 2px;
	background: url("../img/nav_other_bg.png") no-repeat center center;
}
nav ul.nav_other li a:hover{
	opacity: .5;
}
header.index nav ul.nav li{
	border-top: 3px solid #fff;
}
header.index nav ul.nav li a{
	color: #fff;
}
header.index nav ul.nav li a:hover,
header.index nav ul.nav li.active a{
	background: #fff;
	color: #000;
}
header.index nav ul.nav_other li a{
	color: #fff;
	background: url("../img/nav_other_bg_index.png") no-repeat center center;
}
/*================================
	foooter
================================*/
footer{
	background: #fdd000;
	text-align: center;
	font-size: .9rem;
	padding: 2rem 0 1rem 0;
}
footer ul{
	justify-content: center;
	-webkit-justify-content: center;
}
footer ul li{
	width: 33%;
	border-right: 2px solid #000;
}
footer ul li:nth-child(2){
	width: 34%;
}
footer ul li:first-child{
	border-left: 2px solid #000;
}
footer ul li a{
	display: block;
}
footer ul li a:hover{
	opacity: .5;
}
footer #copyright{
	margin-top: 1rem;
}
footer #copyright img.footer_logo_icon{
	height: 50px;
	margin-right: .5rem;
	margin-bottom: 1.5rem;
}
/*================================
	index
================================*/
#mainvisual{
	position: relative;
	width: 100%;
	overflow: hidden;
}
#mainvisual ul li{
	height: 750px;
}
#mainvisual .mainvisual_body{
	position: absolute;
	top: 50%;
	left: 0;
	width: 100%;
	z-index: 10;
	text-align: center;
	height: 126px;
}
#mainvisual ul{
	position: relative;
}
#mainvisual ul li{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
}
#mainvisual ul li::after{
	content: "";
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	background: rgba(0, 0, 0, 0.3);
}
#mainvisual ul li:first-child{
	position: relative;
}
#mainvisual ul li img{
	object-fit: cover;
	width: 100%;
}
#mainvisual ul li{
	transform: scale(1.2,1.2);
	-webkit-transform: scale(1.2,1.2);
	-moz-transform: scale(1.2,1.2);
	opacity: 1;
}
#mainvisual ul li.scale{
	transform: scale(1.1,1.1);
	-webkit-transform: scale(1.1,1.1);
	-moz-transform: scale(1.1,1.1);
}
#mainvisual ul li.hidden{
	opacity: 0;
}
#mainvisual ul li{
	transition: transform 8s linear;
	-webkit-transition: -webkit-transform 8s linear;
	-moz-transition: -moz-transform 8s linear;
}
#news{
	padding: 1rem 0;
}
#news ul{
	margin-top: 1rem;
}
#news ul li{
	margin-bottom: .5rem;
	position: relative;
}
#news ul li:last-child{
	margin-bottom: 0;
}

#news ul li p.news_date{
	display: inline-block;
	width: 100px;
	position: absolute;
	top: 0;
}

#news ul li p.news_text{
	display: inline-block;
	width: 750px;
	margin-left: 120px;
}

#contents ul li{
	position: relative;
}
#contents ul li a{
	display: block;
}
#contents ul li img{
	width: 100%;
	opacity: 0;
	transform: translate3d(0,10px,0);
	-webkit-transform: translate3d(0,10px,0);
	-moz-transform: translate3d(0,10px,0);
}
#contents ul li .contents_body{
	position: absolute;
	width: 450px;
	height: 160px;
	top: 50%;
	left: 50%;
	margin-top: -80px;
	opacity: 0;
	transform: translate3d(-10px,0,0);
	-webkit-transform: translate3d(-10px,0,0);
	-moz-transform: translate3d(-10px,0,0);
}
#contents ul li.active img,
#contents ul li.active .contents_body{
	opacity: 1;
	transform: translate3d(0,0,0);
	-webkit-transform: translate3d(0,0,0);
	-moz-transform: translate3d(0,0,0);
}
#contents ul li img{
	transition: all 1.4s linear;
	-webkit-transition: all 1.4s linear;
	-moz-transition: all 1.4s linear;
}
#contents ul li .contents_body{
	transition: all 1s 1s linear;
	-webkit-transition: all 1s 1s linear;
	-moz-transition: all 1s 1s linear;
}
#contents ul li:nth-child(2n+1) .contents_body{
	margin-left: -500px;
}
#contents ul li:nth-child(2n) .contents_body{
	margin-left: 50px;
}
#contents ul li .contents_body span{
	letter-spacing: 1px;
	font-size: .9rem;
}
#contents ul li .contents_body p{
	font-size: 1.8rem;
	letter-spacing: 8px;
	margin: 1.5rem 0 .5rem 0;
}
/*================================
	project
================================*/
#project_contents,
#project_list,
#planned_property {
	background: #dae4e7;
}
#project_slide{
	width: 100%;
	overflow: hidden;
}
#project_slide ul{
	width: 5000px;
}
#project_slide ul li{
	width: 500px;
	float: left;
}
#project_slide ul li img{
	width: 100%;
}
#project_slide_mark{
	padding: 1rem;
	text-align: center;
}
#project_slide_mark ul li{
	display: inline-block;
	width: 10px;
	height: 10px;
	background: #9fa0a0;
	margin-left: .4rem;
}
#project_slide_mark ul li:first-child{
	margin-left: 0;
}
#project_slide_mark ul li.active{
	background: #000;
}
#project_contents>ul>li{
	position: relative;
	opacity: 0;
	transform: translate3d(0,10px,0);
	-webkit-transform: translate3d(0,10px,0);
	-moz-transform: translate3d(0,10px,0);
	transition: all 1s linear;
	-webkit-transition: all 1s linear;
	-moz-transition: all 1s linear;
}
#project_contents>ul>li.active,
#project_contents>ul>li.active a .project_contens_body{
	opacity: 1;
	transform: translate3d(0,0,0);
	-webkit-transform: translate3d(0,0,0);
	-moz-transform: translate3d(0,0,0);
}
#project_contents>ul>li a{
	display: flex;
	display: -webkit-flex;
	align-items: center;
	-webkit-align-items: center;
	background: #fdd000;
	transition: all .3s ease;
	-webkit-transition: all .3s ease;
	-moz-transition: all .3s ease;
}
#project_contents>ul>li a:hover{
	background: #ffe983;
}
#project_contents>ul>li a img{
	transition: all .3s ease;
	-webkit-transition: all .3s ease;
	-moz-transition: all .3s ease;
}
#project_contents>ul>li a:hover img{
	display: inline-block;
	background: #fff;
	opacity: .8;
}
#project_contents>ul>li a .project_contens_body{
	opacity: 0;
	transform: translate3d(-10px,0,0);
	-webkit-transform: translate3d(-10px,0,0);
	-moz-transform: translate3d(-10px,0,0);
	transition: all 1s .5s linear;
	-webkit-transition: all 1s .5s linear;
	-moz-transition: all 1s .5s linear;
}
#project_contents>ul>li a .project_contens_banner,
#project_contents>ul>li a .project_contens_body{
	width: 50%;
}
#project_contents>ul>li:nth-child(2n+1) a .project_contens_banner,
#project_contents>ul>li:nth-child(2n) a .project_contens_body{
	order: 2;
}
#project_contents>ul>li:nth-child(2n+1) a .project_contens_body,
#project_contents>ul>li:nth-child(2n) a .project_contens_banner{
	order: 1;
}
#project_contents>ul>li a .project_contens_body .project_contens_body_inner{
	width: 90%;
	font-size: .9rem;
}
#project_contents>ul>li:nth-child(2n+1) a .project_contens_body .project_contens_body_inner{
	float: right;
	margin-right: 50px;
}
#project_contents>ul>li:nth-child(2n) a .project_contens_body .project_contens_body_inner{
	margin-left: 50px;
}
#project_contents>ul>li a .project_contens_banner{
	position: relative;
}
#project_contents>ul>li a .project_contens_banner::after{
	content: "";
	position: absolute;
	top: 0;
	width: 30px;
	height: 100%;
	background: rgba(255, 210, 0, 0.5);
}
#project_contents>ul>li:nth-child(2n+1) a .project_contens_banner::after{ left:0; }
#project_contents>ul>li:nth-child(2n+2) a .project_contens_banner::after{ right:0; }
#project_contents>ul>li a .project_contens_banner img{
	width: 100%;
}
#project_contents>ul>li .project_contens_body_inner h3,
.history dt{
	position: relative;
	font-size: 1.8rem;
	line-height: 1;
	letter-spacing: 2px;
	font-weight: normal;
}
#project_contents>ul>li .project_contens_body_inner h3::after,
.history dt::after{
	content: "";
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 1px;
	background: #000;
}
#project_contents>ul>li .project_contens_body_inner>p{
	font-size: 1.4rem;
	margin: 1rem 0 2rem 0;
}
#project_contents>ul>li .project_contens_body_inner>p span{
	display: block;
	font-size: .7rem;
}
#project_contents>ul>li .project_contens_body_inner li{
	font-size: .9rem;
	list-style: disc;
	margin-left: 1rem;
}
#project_contents>ul>li .projent_contens_btn{
	margin-top: 2rem;
	font-size: .8rem;
}
#project_contents>ul>li .projent_contens_btn p{
	display: inline-block;
	font-family : YuGothic, '游ゴシック', sans-serif;
	font-weight: bold;
	padding: .3rem .5rem;
	line-height: 1;
}
#project_contents>ul>li .projent_contens_btn p:last-child{
	color: #f00;
	background: #fff;
}
#project_contents>ul>li .projent_contens_btn p:first-child{
	background: #004862;
	color: #fff;
}
#project_contents>ul>li .projent_contens_btn span{
	display: inline-block;
	margin-left: .5rem;
	font-family : YuGothic, '游ゴシック', sans-serif;
	font-size: .8rem;
	font-weight: bold
}
#project_contents>ul>li .projent_contens_btn span.red{ color: #f00; }
#project_list{
	padding: 2rem 0 4rem 0;
}
#project_list ul{
	width: 25%;
	float: left;
	padding: 3px;
}
#project_list ul li{
	background: #fff;
	margin-bottom: 6px;
}
#project_list ul li p:last-child {
    padding: .5rem;
}

#project_list ul li {
    padding: 6px;
    display: block;
}
#project_list ul li p:last-child span {
    display: block;
    font-size: .7rem;
}
#project_list ul li a{
	padding: 6px;
	display: block;
}
#project_list ul li a p:last-child{
	padding: .5rem;
}
#project_list ul li a p:last-child span{
	display: block;
	font-size: .7rem;
}
#project_list ul li img{
	width: 100%;
}
/*================================
	special
================================*/
#wrapper.special{
	background: #eae8e1;
}
#special_banner{
	text-align: center;
}
#special_banner>img{
	display: inline-block;
	margin: -35px 0 2rem 0;
	max-width: 700px;
}
#special_contents{
	/*padding-bottom: 4rem;*/
}
.special_slide_container{
	width: 100%;
	overflow: hidden;
	position: relative;
}
.special_slide{
	width: 100%;
	overflow: hidden;
}
.special_slide_container .special_left,
.special_slide_container .special_right{
	position: absolute;
	width: 50px;
	height: 34px;
	top: 50%;
	margin-top: -17px;
	cursor: pointer;
}
.special_slide_container .special_left{
	left: 50%;
	margin-left: -35%;
	display: none;
}
.special_slide_container .special_right{
	right: 50%;
	margin-right: -35%;
	transform: rotateY(180deg);
	-webkit-transform: rotateY(180deg);
	-moz-transform: rotateY(180deg);
}
.slide1 .special_slide ul{ width: calc(100vw * 25); }
.slide2 .special_slide ul{ width: calc(100vw * 12); }
.slide3 .special_slide ul{ width: calc(100vw * 5); }
.slide4 .special_slide ul{ width: calc(100vw * 13); }
.slide5 .special_slide ul{ width: calc(100vw * 4); }
.special_slide ul li{
	float: left;
	width: 100vw;
}
.special_slide ul li img,
.special_slide_container .special_left img,
.special_slide_container .special_right img{
	width: 100%;
}
/*================================
	about
================================*/
#wrapper.about{
	background: #e5e6e6;
}
#menu,
#container{
	/* float: left; */
}
#menu{
	width: 18%;
	margin-right: 2%;
}
#menu h1{
	border-bottom: 3px solid #000;
	padding: 0 0 1rem 0;
	margin-bottom: 1rem;
	font-size: 1.4rem;
	line-height: 1;
	letter-spacing: 6px;
}
#menu h1 span{
	font-size: .7rem;
}
#menu ul li{
	margin-bottom: .4rem;
}
#menu ul li a{
	text-align: center;
	display: block;
	padding: .4rem 0;
	font-size: .9rem;
	line-height: 1;
}
#menu ul li.active a,
#menu ul li a:hover{
	background: #fff;
}
#container{
	width: 80%;
	margin-bottom: 4rem;
	background: #fff;
}
/* 代表挨拶 */
.message>img{
	width: 100%;
}
.message_body{
	padding: 4rem;
	padding-top: 1rem;
}
.message_title{
	font-size: 1.2rem;
	line-height: 1;
	margin-bottom: 1rem;
}
.message_body>p{
	font-size: .9rem;
	line-height: 1.2rem;
}
.message_sign{
	text-align: right;
}
.message_sign img{
	display: inline-block;
	margin-top: .5rem;
    width: 25%;
}
.message_identity{
	background: #004861;
	color: #b0a78e;
	text-align: center;
	margin-top: 3rem;
	position: relative;
	overflow: hidden;
}
.message_identity::after{
	content: "";
	width: 140px;
	height: 140px;
	position: absolute;
	top: -70px;
	right: -70px;
	transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
	-moz-transform: rotate(45deg);
	background: #fff;
}
.message_identity h4{
	color: #fff;
}
.message_identity>p{
	padding: 0 0 4rem 0;
	font-size: .9rem;
	letter-spacing: 2px;
	line-height: 1.8rem;
}

/* 事業紹介 */
.business>img{
	display: block;
	width: 80%;
	margin: 0 auto 2rem auto;
}
.business_title{
	display: table;
	width: 100%;
	padding: .5rem 1rem;
	color: #fff;
	font-size: .9rem;
	color: #fff;
}
.business_title img{
	height: 40px;
}
.business_title span{
	display: table-cell;
	vertical-align: middle;
	width: 50%;
}
.business_title span:last-child{
	text-align: right;
}
section.bellflotz{ background: rgba(227,190,83,0.07); }
section.bznexus{ background: rgba(133,116,79,0.07); }
section.bzconception{ background: rgba(184,28,34,0.07); }
section.bzstyle{ background: rgba(0,109,128,0.07) }
section.bellflotz .business_title,
section.bellflotz .business_btn{ background: #e3be53; }
section.bznexus .business_title,
section.bznexus .business_btn{ background: #85744f; }
section.bzconception .business_title,
section.bzconception .business_btn{ background: #b81c22; }
section.bzstyle .business_title,
section.bzstyle .business_btn{ background: #006d80; }
.business_contents{
	padding: 3rem;
}
.business_contents>div{
	border-left: 3px solid #000;
	padding-left: 1rem;
	font-size: .8rem;
	line-height: 1.2rem;
	position: relative;
}
.business_contents>div>ul{
	margin-top: 1rem;
	color: #85744f;
}
.business_contents>div>ul li{
	list-style: square;
	margin-left: 1rem;
}
.business_contents_title{
	font-size: 1.2rem;
	line-height: 1.8rem;
	margin-bottom: 1rem;
}
.business_contents p{
	position: relative;
}
.business_btn{
	position: absolute;
	right: 0;
	bottom: 0;
	font-size: .7rem;
	color: #fff;
	display: block;
	padding: 0 .5rem 0 1.5rem;
}
.business_btn a{
	color: #fff;
	display: block;
	padding: 0 .5rem 0 1.5rem;
	position: relative;
}
.b_slash .business_btn::after,
.business_btn a::after,
.company_btn a::after,
.access_btn a::after{
	content: "";
	width: 0;
	height: 0;
	position: absolute;
	top: 50%;
	left: .5rem;
	margin-top: -6px;
	border: 6px solid transparent;
	border-left: 6px solid #fff;
}
section.bellflotz .business_contents p{
	margin-bottom: 2rem;
}
section.bellflotz .business_contents p span,
section.bzstyle .business_contents p span{
	display: block;
	margin-left: 1.4rem;
}
section.bellflotz .business_contents p span:first-child,
section.bzstyle .business_contents p span:first-child{
	margin-left: 0;
}
section.bellflotz .business_contents p span img,
section.bzstyle .business_contents p span img{
	width: 100%;
}
section.bznexus .business_contents,
section.bzconception .business_contents{
	align-items: stretch;
	-webkit-align-items: stretch;
}
section.bznexus .business_contents p{
	order: 2;
	width: 50%;
}
section.bznexus .business_contents>div{
	width: 45%;
	order: 1;
	margin-right: 5%;
}
section.bznexus .business_contents p img,
section.bzconception .business_contents p img{
	width: 100%;
}
section.bznexus .business_btn{
	bottom: -10px;
}
section.bzconception .business_contents p{
	width: 50%;
}
section.bzconception .business_contents>div{
	width: 45%;
	margin-left: 5%;
}
section.bzstyle .business_contents{
	display: flex;
	display: -webkit-flex;
	flex-direction: column-reverse;
	-webkit-flex-direction: column-reverse;
}
section.bzstyle .business_contents p{
	margin-top: 1rem;
}
/* 会社概要 */
.company ul{
	margin: 2rem;
	margin-top: 0;
	font-size: .9rem;
	line-height: 1.3rem;
	border: 1px solid #d9d9d9;
}
.company ul li{
	display: table;
	width: 100%;
	border-bottom: 1px solid #d9d9d9;
}
.company ul li:last-child{
	border-bottom: 0;
}
.company ul li p{
	display: table-cell;
	vertical-align: middle;
	padding: .5rem;
}

.company ul li p span{
    width: 70%;
    display: inline-block;
}

.company ul li p:first-child{
	width: 20%;
	color: #fff;
	background: #004862;
	border-right: 1px solid #d9d9d9;
}
.company_btn{
	background: #004862;
	display: inline-block;
}
.company_btn a{
	color: #fff;
	display: inline-block;
	font-size: .6rem;
	line-height: 1;
	padding: 0 .5rem 0 1.5rem;
	position: relative;
}

/* 「SDGSへの取り組み」 */
.company .sdgs p:nth-child(2) {
  display: flex;
  align-items: self-start;
  justify-content: space-between;
  gap: 10px;
}
.company .sdgs span:nth-child(1) {
  flex: 8;
  font-size: 14px;
}
.company .sdgs span:nth-child(2) {
  flex: 2;
}
.company .sdgs span a {
  display: flex;
  flex-direction: column;
  align-items: center;
  font-size: 10px;
} 
.company .sdgs span a img {
  width: 40%;
  margin-left: 0;
  float: inherit;
}
.company .sdgs a:hover {
  opacity: 0.7;
}

/* 沿革 */
.history dl{
	margin: 2rem;
	margin-top: 0;
	font-size: .9rem;
	line-height: 1.3rem;
}
.history dd{
	margin: 1rem 3rem;
}
.history_body{
	display: table;
	width: 100%;
}
.history_body p{
	display: table-cell;
	vertical-align: top;
}
.history_body p:first-child{
	width: 10%;
	text-align: right;
	padding-right: 1rem;
}
/* 組織図 */
.organization>img{
	display: block;
	width: 80%;
	margin: 0 auto 3rem auto;
}
/* アクセス */
.access .access_contents{
	margin: 2rem;
	margin-top: 0;
	font-size: .9rem;
	line-height: 1.3rem;
	align-items: stretch;
	-webkit-align-items: stretch;
	border: 1px solid #cfcfcf;
}
.access .access_title{
	width: 1.6rem;
	padding: 0 .3rem;
	writing-mode: vertical-rl;
	-webkit-writing-mode: vertical-rl;
	-moz-writing-mode: vertical-rl;
	-ms-writing-mode: vertical-rl;
	background: #b0a78e;
	color: #fff;
	text-align: center;
	letter-spacing: 16px;
	font-size: 1rem;
	display: inline-flex;
	align-items: center;
	justify-content: center;
}
.access .access_body{
	padding: 2rem;
	font-size: 1.1rem;
}
.access .access_body>img{
	width: 100%;
	display: block;
	margin-bottom: 1rem;
}
.access .access_body>p{
	font-size: .9rem;
	margin: 1rem 0;
}
.access .access_body>ul{
	font-size: 1rem;
}
.access .access_body>ul li{
	list-style: square;
	margin-left: 1rem;
	margin-bottom: .5rem;
}
.access_btn{
	margin-top: 1rem;
}
.access_btn p{
	display: inline-block;
	font-size: .7rem;
	padding: 0 .5rem 0 1.5rem;
	position: relative;
	background: #004862;
}
.access_btn p a{
	color: #fff;
}
/*================================
	contact
================================*/
.contact,
.privacy{
	max-width: 800px;
	margin: 0 auto 4rem auto;
}
.contact>p{
	text-align: center;
	margin-bottom: 2rem;
}
.contact ul{
	font-size: .9rem;
}
.contact ul li:not(:last-child){
	display: table;
	width: 100%;
}
.contact ul li:not(:last-child) p{
	display: table-cell;
	vertical-align: middle;
}
.contact ul li p{
	padding: .5rem;
}
.contact ul li p span{
	display: inline-block;
    width: 48%;
}
.contact ul li p span:first-child{
	margin-right: 2%;
}
.contact ul li p span input{
	width: 100%;
}
input#contact_method_mail{
	margin-left: 3rem;
}
input#contact_method_tel{
	margin-left: 1rem;
}
.contact ul li:not(:last-child) p:first-child{
	width: 14%;
}
.contact ul li:last-child{
	margin-top: 2rem;
}
.contact input,
.contact select,
.contact textarea{
	appearance: none;
	-webkit-appearance: none;
	border: 2px solid #000;
	border-radius: 0;
	padding: .5rem;
	font-size: 1rem;
}
.contact ul li p span input[type="radio"]{
	border: 0;
	width: 20px;
	height: 20px;
	display: inline-block;
	background: url("./../img/radio_off.png") no-repeat center center;
	background-size: 20px 20px;
	-webkit-background-size: 20px 20px;
	-moz-background-size: 20px 20px;
}
.contact ul li p span label{
	position: relative;
	display: inline-block;
	height: 20px;
	line-height: 20px;
}
.contact ul li p span input[type="radio"]:checked{
	background: url("./../img/radio_on.png") no-repeat center center;
	background-size: 20px 20px;
	-webkit-background-size: 20px 20px;
	-moz-background-size: 20px 20px;
}
.contact input:focus,
.contact select:focus,
.contact textarea:focus{ outline: 0; }
.contact textarea{
	width: 100%;
	height: 300px;
}
.contact .submit{
	text-align: center;
	margin: 1rem 0 0 0;
}
.contact .submit input[type="submit"]{
	border: 0;
	background: #004862;
	color: #fff;
	padding: .5rem 4rem;
	font-size: 1rem;
	cursor: pointer;
}
.contact .agree{
	text-align: center;
	padding: 1rem 0 0 0;
	font-size: .8rem;
}
.err{
	color: #f00;
	text-align: center;
	margin-bottom: 1rem;
}
/*================================
	privacy policy
================================*/
.privacy{
	border: 2px solid #000;
}
.privacy>p,
.privacy .privacy_body{
	margin: 3rem;
	margin-top: 0;
}
.privacy .privacy_body{
	border: 1px solid #cfcfcf;
	padding: 2rem;
	font-size: .9rem;
	line-height: 1.3rem;
	/* height: 300px; */
	overflow-y: auto;
}

.contact_privacy{
	width: 784px;
	border: 1px solid #cfcfcf;
	padding: 2rem 2rem 2rem 3.6rem;
	font-size: .9rem;
	line-height: 1.3rem;
	box-sizing: border-box;
	margin-top: 10px;
	text-align: left;
}

.contact_privacy span{
	display: inline-block;
	text-indent: -1.6rem;
}

.privacy_date{
	text-align: right;
	font-size: 1.0rem;
	margin: 0 3rem 3rem 0
}

.privacy_date p:last-child{
	display: inline-block;
	text-align: left;
	margin-top: 20px;
}

.privacy_sub_list{
	display: inline-block;
	text-indent: -1.2rem;
	margin-left: 1.2rem;
}

.pri_inde{
	display: inline-block;
	text-indent: -1.8rem;
	margin-left: 1.8rem;
}

.pri_inde_sub{
	display: inline-block;
	text-indent: -0.9rem;
	margin-left: 0.9rem;
}

.pri_inde_sub_num{
	display: inline-block;
	text-indent: -0.9rem;
	margin-left: 2.7rem;
}

.p_content{
    max-width: 1000px;
    margin: 0 auto;
    padding: 20px 0;
    position: relative;
    z-index: 2;
    background-color: #FFF;
}

.afs{
    float: left;
    width: 30%;
    margin-right: 5%;
    margin-top: 10px;
}

.afs img{
    display: block;
    width: 100%;
}

.p_comment{
    float: left;
    width: 50%;
    line-height: 1.4;
    color: #555;
    margin-top: 18px;
}

.p_mark{
    float: right;
    width: 10%;
}

.p_mark img{
    display: block;
    width: 100%;
}

@media (max-width: 999px){
    .p_content{
        width: 100%;
    }
    
    .afs{
        float: left;
        width: 28%;
        margin-left: 2%;
        margin-top: 0;
    }
    
    .p_comment{
        margin-top: 0;
    }
    
    .p_mark{
        float: right;
        width: 8%;
        margin-right: 2%;
    }
    
}

@media (max-width: 900px){
    .company ul li p span{
        width: 100%;
    }
    
    .company ul li img.cp_pmark{
        display: block;
        margin: 10px auto;
    }
	.company .sdgs p:nth-child(2) {
		flex-direction: column;
    align-items: center;
	}

	.company .sdgs p span:nth-child(2) {
		width: 70%;
    text-align: center;
	}
}

@media (max-width: 700px){
    .afs{
        float: none;
        width: 300px;
        margin: 0 auto;
    }

    .afs img{
        display: block;
        width: 100%;
    }

    .p_comment{
        float: left;
        width: 70%;
        margin-left: 5%;
        margin-right: 5%;
        margin-top: 30px;
    }

    .p_mark{
        float: left;
        width: 15%;
        margin-top: 30px;
    }

    .p_mark img{
        display: block;
        width: 100%;
    }
}
/*================================
	transition
================================*/
nav ul li a,
footer ul li a,
#project_slide_mark ul li,
#menu ul li a{
	transition: all .3s ease;
	-webkit-transition: all .3s ease;
	-moz-transition: all .3s ease;
}
/*================================
	media
================================*/
@media all and (min-width:768px) and (max-width:999px) {

	#wrapper{
		overflow: hidden;
	}

#mainvisual ul li{
	height: 540px;
}

	#news h2{
		padding: 30px 0 0 50px;
	}

	#news ul{
		padding: 1rem 50px;
	}

	#contents ul li:nth-child(2n+1) .contents_body{
		margin-left: -350px;
	}

	#project_contents>ul>li:nth-child(2n+1) a .project_contens_body .project_contens_body_inner{
		margin-right: 5%;
	}

	#project_contents>ul>li:nth-child(2n) a .project_contens_body .project_contens_body_inner{
		margin-left: 5%;
	}

	#project_contents>ul>li a .project_contens_body .project_contens_body_inner{
		width: 90%;
	}

	#project_contents>ul>li .project_contens_body_inner h3, .history dt{
		font-size: 1.4rem;
	}

	#project_contents>ul>li .project_contens_body_inner>p{
		font-size: 1.2rem;
		margin: 1rem 0 1rem 0;
	}

	#project_contents>ul>li .projent_contens_btn{
		margin-top: 1rem;
	}


}

@media (max-width: 767px){
	
	#contents{
		width:100% !important;
	}



	#mainvisual .mainvisual_body2 {
    position: absolute;
    top: 80%;
    left: 0 !important;
    width: 100%;
    z-index: 10;
    text-align: center;
    height: 126px;
}



	.minittl {
	    max-width: 100%;
	    margin: 0 auto;
	    background: #dae4e7;
	    display: block;
	    overflow: hidden;
	}

	.minittl h2 {
	    font-size: 1em;
	    font-weight: bold;
	    background: #dae4e7;
	    display: block;
	    width: 90%;
	    margin: 0 auto;
	    padding-bottom: 1%;
	}

	.canlogo img {
	    width: 60%;
	    /* float: right; */
	    overflow: hidden;
	    display: block;
	    /* margin: 0 0 5% 30%; */
	    margin: 0 20% 5%;
	}

	.agree span p {
	    display: block;
	    padding: 1%;
	    border: 1px solid #000;
	    width: 45%;
	    margin: 0 auto;
	}

	#project_small ul li {
	    background: #fff;
	    margin-bottom: 6px;
	    float: none;
	    width: 100%;
	    padding: 1%;
	    margin-left: 1%;
	    height: 110px;
	}

	.inner {
		max-width: 100%;
		margin: 0 auto;
		padding: 0 4%;
	}
	#logo{
		margin: 0;
	}
	#logo img:first-child{
		width: 50px;
	}
	#logo img:nth-child(2){
		width: 170px;
	}
	#wrapper{
		position: relative;
		z-index: 10;
	}
	nav{
		position: fixed;
		width: 200px;
		top: 0;
		right: 0;
		height: 100%;
		background: #221815;
		z-index: 1;
	}
	nav::before{
		content: "MENU";
		display: block;
		color: rgba(255,255,255,.6);
		text-align: center;
		padding: .8rem 0;
	}
	nav ul.nav{
		display: block;
	}
	nav ul.nav li{
		width: 100%;
		padding: 0 !important;
	}
	nav ul.nav li a{
		color: #fff;
	}
	header.index nav ul.nav li,
	nav ul.nav li,
	nav ul.nav_other li{
		border-top: 1px solid rgba(255,255,255,.2);
	}
	nav ul.nav_other{
		display: block;
		position: static;
		top: auto;
		right: auto;
	}
	nav ul.nav_other li{
		width: 100%;
		height: auto;
		line-height: 1;
		margin-left: 0;
		font-size: .9rem;
	}
	header.index nav ul.nav li.active a,
	nav ul.nav li.active a{
		background: rgba(255,255,255,.2);
		color: #fff;
	}
	nav ul.nav_other li a{
		background: none !important;
		font-size: .8rem;
		padding: .5rem 0;
		color: #fff;
	}
	nav ul.nav_other{
		font-family : YuMincho, '游明朝', serif;
	}
	.nav_icon{
		width: 50px;
		height: 50px;
		position: absolute;
		top: .5rem;
	    right: 2%;
	}
	.nav_icon i, .nav_icon i::before, .nav_icon i::after{
		display: block;
		background: rgba(0,0,0,.8);
		position: absolute;
	}
	header.index .nav_icon i, header.index .nav_icon i::before, header.index .nav_icon i::after{
		background: rgba(255,255,255,.8);
	}
	.nav_icon i{
		width: 26px;
		height: 4px;
		transition: all 0ms 300ms;
		top: 50%;
		left: 12px;
		margin-top: -2px;
	}
	.nav_icon.on i, header.index .nav_icon.on i{
		background: rgba(0, 0, 0, 0);
	}
	.nav_icon i::before, .nav_icon i::after{
		content: "";
		left: 0;
		width: 100%;
		height: 100%;
	}
	.nav_icon i::before{
		bottom: 8px;
		transition: bottom 300ms 300ms cubic-bezier(0.23, 1, 0.32, 1), transform 300ms cubic-bezier(0.23, 1, 0.32, 1);
	}
	.nav_icon i::after{
		top: 8px;
		transition: top 300ms 300ms cubic-bezier(0.23, 1, 0.32, 1), transform 300ms cubic-bezier(0.23, 1, 0.32, 1);
	}
	.nav_icon.on i::before{
		bottom: 0;
		transform: rotate(-45deg);
		transition: bottom 300ms cubic-bezier(0.23, 1, 0.32, 1), transform 300ms 300ms cubic-bezier(0.23, 1, 0.32, 1);
	}
	.nav_icon.on i::after{
		top: 0;
		transform: rotate(45deg);
		transition: top 300ms cubic-bezier(0.23, 1, 0.32, 1), transform 300ms 300ms cubic-bezier(0.23, 1, 0.32, 1);
	}
	#wrapper.on{
		transform: translateX(-200px);
		-webkit-transform: translateX(-200px);
		-moz-transform: translateX(-200px);
	}
	#mainvisual .mainvisual_body, #mainvisual ul li{
		height: 500px;
	}
	#mainvisual .mainvisual_body img{
		width: 300px;
	}
	#mainvisual ul li img{
		height: 100%;
	}
	#contents ul li{
		overflow: hidden;
	}
	#contents ul li img {
		width: 300%;
		margin-left: -100%;
	}
	#contents ul li .contents_body{
		width: 92%;
	}
	#contents ul li:nth-child(2n+1) .contents_body{
	    margin-left: 4%;
	}
	#contents ul li .contents_body{
		left: auto;
	}
	#contents ul li:nth-child(2n) .contents_body{
		margin-left: 4%;
		text-align: right;
	}
	#contents .contents_body i{
		font-size: .8rem;
	    line-height: 1;
	}
	footer ul{
		display: block !important;
	}
	footer ul li{
		width: 100% !important;
		border: 0 !important;
		margin-bottom: .5rem;
	}
	header {
	    margin-bottom: .5rem;
	    padding-top: .5rem;
	}
	#project_slide ul{
		width: calc(100vw * 10);
	}
	#project_slide ul li{
		width: 100vw;
	}
	#project_slide_mark{
		padding: .5rem;
	}
	h1 {
		font-size: 1.4rem;
		letter-spacing: 6px;
		padding: 1rem 0;
	}
	#project_contents>ul>li a{
		flex-direction: column;
		-webkit-flex-direction: column;
		padding: 1rem 4% 2rem 4%;
	}
	#project_contents>ul>li:nth-child(2n) a .project_contens_banner{
		order: 2;
	}
	#project_contents>ul>li:nth-child(2n) a .project_contens_body{
		order: 1;
	}
	#project_contents>ul>li a .project_contens_body .project_contens_body_inner,
	#project_contents>ul>li a .project_contens_banner, #project_contents>ul>li a .project_contens_body{
		width: 100%;
	}
	#project_contents>ul>li:nth-child(2n+1) a .project_contens_body .project_contens_body_inner{
		float: none;
		margin: 0;
	}
	#project_contents>ul>li:nth-child(2n) a .project_contens_body .project_contens_body_inner{
		margin: 0;
	}
	#project_contents>ul>li .projent_contens_btn{
		margin: 1rem 0;
	}
	#project_list ul li a{
		display: block;
	}
	#project_list ul{
		width: 50%;
	}
	#special_banner>img{
		width: 92%;
	}
	#project_contents>ul>li .project_contens_body_inner h3{
		font-size: .9rem;
		line-height: 1.4;
		letter-spacing: 0;
	}
	.special_slide_container .special_left{
		left: 4%;
		margin: 0;
	}
	.special_slide_container .special_right {
	    right:4%;
	    margin: 0;
	}
	.special_slide_container .special_left, .special_slide_container .special_right {
	    width: 30px;
	    height: 20px;
	    margin-top: -10px;
	}
	.special_slide ul li{
		overflow: hidden;
	}
	.special_slide ul li img{
		width: 130%;
		margin-left: -15%;
	}
	#special_contents {
	    padding-bottom: 0rem;
	}
	#menu, #container{
		float: none;
	}
	#menu {
	    width: 100%;
	    margin-right: 0;
	    margin-bottom: 1rem;
	}
	#menu h1{
		padding: .5rem 0;
		 margin-bottom: 0;
		font-size: 1.4rem;
		line-height: 1;
		letter-spacing: 6px;
		border-top: 3px solid #000;
		position: relative;
	}
	#menu h1::before,
	#menu h1::after{
		content: "";
		height: 2px;
		width: 14px;
		background: #000;
		position: absolute;
		top: 50%;
		margin-top: -1px;
		right: 1rem;
	}
	#menu h1::after{
		transform: rotate(90deg);
		-webkit-transform: rotate(90deg);
		-moz-transform: rotate(90deg);
	}
	#menu h1.active::after{
		transform: rotate(180deg);
		-webkit-transform: rotate(180deg);
		-moz-transform: rotate(180deg);
	}
	#menu h1 span{
		display: inline-block;
		margin-left: 1rem;
	}
	#menu ul{
		display: none;
	}
	#menu ul li{
		border-bottom: 1px solid #000;
		margin-bottom: 0;
	}
	#menu ul li a{
		padding: 1rem 0;
	}
	#container {
	    width: 100%;
	    margin-bottom: 1rem;
	}
	h4 {
	    font-size: 2rem;
	    letter-spacing: 4px;
	    padding: 1rem 0;
	}
	h4 span{
		margin-top: 1.6rem;
	}
	.message_body{
		padding: 1rem 4%;
	}
	.message_title{
		line-height: 1.8rem;
	}
	.message_identity{
		margin-top: 1rem;
	}
	.message_identity::after {
	    width: 80px;
	    height: 80px;
	    top: -50px;
	    right: -50px;
	}
	.message_identity>p {
	    padding: 0 4% 1rem 4%;
	    letter-spacing: 0px;
	    line-height: 1.6rem;
	}
	.business_title{
		padding: .5rem 4%;
	}
	.business_title img {
	    height: 28px;
	}
	.business_title span{
		font-size: .7rem;
	}
	.business_contents {
	    padding: 1rem 4%;
	}
	section.bellflotz .business_contents p {
	    margin-bottom: 1rem;
	}
	section.bellflotz .business_contents p span, section.bzstyle .business_contents p span{
		margin-left: 2%;
	}
	section.bellflotz .business_contents p span:first-child, section.bzstyle .business_contents p span:first-child {
	    margin-left: 0;
	}
	.business_contents_title {
	    font-size: 1rem;
	    line-height: 1.6rem;
	    margin-bottom: .5rem;
	}
	.business_contents>div{
		padding-left: 4%;
	}
	.business_btn {
	    position: relative;
	    right: auto;
	    bottom: auto;
	    display: block;
	    margin-top: .5rem;
	}
	.business_contents,
	.access_contents{
		display: block !important;
	}
	section.bznexus .business_contents p,
	section.bzconception .business_contents p,
	section.bzstyle .business_contents p{
		width: 100%;
		margin-bottom: 1rem;
		margin-top: 0;
	}
	section.bznexus .business_contents>div,
	section.bzconception .business_contents>div{
		width: 100%;
		margin: 0;
	}
	.company,
	.history,
	.organization,
	.access{
		/*padding-bottom: 1rem;*/
	}
	.company ul,
	.history dl{
		margin: 0 4%;
	}
	.company ul li,
	.company ul li p{
		display: block;
        overflow: hidden;
	}
    .company ul li img{
    width:70%;
    margin-left: 0;
    float: none;
    }
	.company ul li p{
		padding: .2rem 2%;
	}
	.company ul li p:first-child{
		width: 100%;
		border-right: 0;
	}
    
    .company ul li p:first-child br{
        display: none;
    }
	.history dd{
		margin: 1rem;
	}
	.history_body p:first-child {
	    width: 20%;
	    padding-right: 2%;
	}
	.access .access_contents{
		margin: 0 4% 1rem 4%;
	}
	.access .access_title{
		width: 100%;
		writing-mode: horizontal-tb;
		-webkit-writing-mode: horizontal-tb;
		-moz-writing-mode: horizontal-tb;
		padding: .5rem 0;
	}
	.access .access_body {
	    padding: 1rem 4%;
	}
	.contact, .privacy {
	    max-width: 100%;
	    padding: 0 4%;
	}
	.contact ul li{
		margin-bottom: 1rem;
	}
	.contact ul li:not(:last-child) p:first-child{
		width: 30%;
	}
	.contact ul li:not(:last-child) p{
		vertical-align: top;
	}
	.contact ul li p span:first-child {
	    margin-right: 0;
	}
	.contact ul li p{
		padding: 0;
	}
	.contact ul li p span {
	    display: inline-block;
	    width: 100%;
	    margin-bottom: .5rem;
	}
	.contact input, .contact select, .contact textarea{
		font-size: .8rem;
	}
	label[for="contact_method_mail"]{
		display: block;
		margin: 0;
	}
	.contact ul li:last-child{
		margin: 0;
	}
	.contact textarea{
		height: 200px;
	}
	.contact ul li p span label:first-child{
		display: block;
		margin-bottom: .5rem;
	}
	input#contact_method_mail{
		margin-left: 0;
	}
	.privacy{
		margin: 0 4% 1rem 4%;
		padding-bottom: 1rem;
	}
	.privacy>p, .privacy .privacy_body{
		margin: 0;
	}
	.privacy .privacy_body{
		/* height: 200px; */
		padding: 1rem;
		margin-top: 1rem;
	}
	/* transition */
	.nav_icon,
	.nav_icon i,
	#wrapper,
	nav,
	#menu h1::after{
		transition: all .3s ease;
		-webkit-transition: all .3s ease;
		-moz-transition: all .3s ease;
	}

	.contact_privacy{
		width: 100%;
	}
	


}

/* 物件コンタクトフォーム */

.form_table {
    width: 100%;
    border-top-width: 1px;
    border-top-style: solid;
    border-top-color: #cccccc;
    border-left-width: 1px;
    border-left-style: solid;
    border-left-color: #cccccc;
    font-size: 85%;
}

.form_table th {
    text-align: left;
    vertical-align: top;
}

.form_table th {
    border-right-width: 1px;
    border-bottom-width: 1px;
    border-right-style: solid;
    border-bottom-style: solid;
    border-right-color: #cccccc;
    border-bottom-color: #cccccc;
    padding-top: 10px;
    padding-right: 20px;
    padding-bottom: 10px;
    padding-left: 20px;
}

.form_table th {
    width: 200px;
    background-color: #ede6d9;
    border: #cdc5a0 1px solid;
    color: #666;
    font-size: 100%;
}

.form_table td {
    border-right-width: 1px;
    border-bottom-width: 1px;
    border-right-style: solid;
    border-bottom-style: solid;
    border-right-color: #cccccc;
    border-bottom-color: #cccccc;
    padding-top: 10px;
    padding-right: 20px;
    padding-bottom: 10px;
    padding-left: 20px;
}

table td {
    /*width: 500px;*/
    /* border: #808080 1px solid; */
    border: #cdc5a0 1px solid;
    background-color: #fafaf7;
    text-align: left;
    color: #666;
    padding: 5px 10px 5px;
    font-size: 100%;
    line-height: 1.3em;
}

.table_inner {
    border: 0;
    width: 680px;
}

.form_table table th {
    background-image: none;
    padding: 5px;
    border-top-style: none;
    border-right-style: none;
    border-bottom-style: none;
    border-left-style: none;
}

.table_inner th {
    width: 160px;
    background-color: #fafaf7;
    font-size: 110%;
}

.form_table table td {
    background-image: none;
    padding: 5px;
    border-top-style: none;
    border-right-style: none;
    border-bottom-style: none;
    border-left-style: none;
}

.table_inner td {
    background-color: #fafaf7;
    font-size: 110%;
}

.wpcf7 input[name="address"],
.wpcf7 input[name="text-238"]{
        width: 70%;
        height: 22px !important;
}

.wpcf7 input[name="zip"]{
        width: 25%;
        height: 22px !important;
}

.wpcf7 input[name="text-623"],
.wpcf7 input[name="text-624"],
.wpcf7 input[name="text-563"],
.wpcf7 input[name="text-566"]{
        width: 20%;
        height: 22px !important;
}

.wpcf7 input[name="menu-130"],
.wpcf7 input[name="menu-316"],
.wpcf7 input[name="menu-712"],
.wpcf7 input[name="menu-889"] {
        width: 20%;
        height: 35px !important;
}

.bukenttl{
	background-color: #ede6d9;
	width:200px;
	padding-top: 0 !important;
    padding-right: 0 !important;
    padding-bottom: 0 !important;
   padding-left: 0 !important;
}

.contmigi{
	width:25%;
	float:left;
	padding:2% 0 0;
line-height: 1.3em;
    font-size: 80%;
    color: #666;
    font-size:100%;
	}

.conthidari{
	width:100%;
	float:left;
	/*padding:1% 0 1%;*/
    padding:2% 0 5% 5%;
	font-size: 80%;
	line-height: 1.3em;
    color: #666;
}

.subbtm{
	text-align: center;
	}

.form_table th .hpoint{
	color: #F00;
}


/* ここからベルフラッツの物件コンタクトCSS */
/*reset.css*/

	img,a{border:0;}
	a{outline:none;}
	a:hover{}

	a.bukken {color:#666666; }
	a.bukken:hover{text-decoration: none;}

	/*a:link{color:#80c28b;}*/
	/*a:visited{color:#80c28b}*/
	/*a:hover{color:#8bd397;}*/

	.fL{float:left;}
	.fR{float:right;}
	.clear{float:none;}

	.txtL{text-align:left;}
	.txtC{text-align:center;}
	.txtR{text-align:right;}

	.mgb5{
		margin-bottom:5px;
		}
	.mgb20{
		margin-bottom:20px;
		}
	.mgb10{
		margin-bottom:10px;
		}
	.mgb30{
		margin-bottom:30px;
		}
	.mgb40{
		margin-bottom:40px;
		}
	.mgb50{
		margin-bottom:50px;
		}
	.mgb60{
		margin-bottom:60px;
		}
	.mgb70{
		margin-bottom:70px;
		}



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

	#header{
		width:800px;
		height:85px;
		margin:0 auto;
		}
	#header h1.logo{
		width:200px;
		height:44px;
		padding-top:20px;
		}
	#header h1.logo a{
		outline:none;
		}
	#header p.hd_discri{
		width:780px;
		text-align:right;
		font-size:12px;
		color:#9d8864;
		padding-top:5px;
	}
	#header p.btn_hd_request{
		padding-top:23px;
		padding-left:10px;
	}
	#header p.btn_small{
		padding-top:42px;
		padding-left:10px;
	}

	#header p.btn_small a:hover img{
		opacity:0.7;
		filter:alpha(opacity=70);
	}

	p.hd_underline{
		display:block;
		width:980px;
		padding-bottom:15px;
	}

/* ------------------------------------------------------------
										header2
------------------------------------------------------------ */

	#header2{
		width:980px;
		height:85px;
		margin:0 auto;
        padding-bottom: 0;
		}
	#header2 h1.logo{
		width:200px;
		height:44px;
		padding-top:20px;
		}
	#header2 h1.logo a{
		outline:none;
		}
	#header2 p.hd_discri{
		width:780px;
		text-align:right;
		font-size:12px;
		color:#9d8864;
		padding-top:5px;
	}
	#header2 p.btn_hd_request{
		padding-top:23px;
		padding-left:10px;
	}
	#header2 p.btn_small{
		padding-top:42px;
		padding-left:10px;
	}

	#header2 p.btn_small a:hover img{
		opacity:0.7;
		filter:alpha(opacity=70);
	}




/* ------------------------------------------------------------
										スライドショー
------------------------------------------------------------ */

	div.slide img{
		display:block;
		margin:0 auto;
	}



/* ------------------------------------------------------------
									グローバルメニュー
------------------------------------------------------------ */

	div.g_menu{
		height:40px;
		background: url(../1/images/bg_gmenu.gif) repeat-x;
	}
	ul.g_inner{
		width:980px;
		height:72px;
		margin:0 auto;
	}


/* ------------------------------------------------------------
									コンテンツ
------------------------------------------------------------ */

	p.cont_title{
		padding-bottom:35px;
	}
	div.under_line{
		background:url(../1/images/under_line.gif) repeat-x;
		height:2px;
		margin-top:50px;
		margin-bottom:10px;
	}


	#contents{
		/*width:980px;*/
		margin:0 auto;
	}

	#contents p.pankuzu{
		font-size:12px;
		padding-top:5px;
	}

	#contents p.contents_title{
		padding-top:20px;
	}

	#contents p.title_under{
		padding-top:10px;
	}



/* ------------------------------------------------------------
										フッター
------------------------------------------------------------ */


#footer{
    height:150px;
    background:#ede6d9 repeat-x;
    margin-top:40px;
}
#footer div.ft_inner{
    width:980px;
    text-align:center;
    margin:0 auto;
}
#footer div.ft_inner p.tel{
    padding:27px 0 0 0;
}
#footer div.ft_inner p.bellwork{
    padding:32px 0 0 20px;
}

#footer div.ft_inner p.itochu{
    padding:30px 0 0 10px;
}

#footer div.ft_inner p.bell{
    padding:30px 0 0 10px;
}
#footer div.copylight{
    padding-top:15px;
    text-align:center;
    color:#787878;
    font-size:75%;
}

#footer2{
    height:100%;
    background:#ede6d9 repeat-x;
    margin-top:40px;
}

#footer2 div.ft_inner2{
    width:1100px;
    text-align:center;
    margin:0 auto;
}
#footer2 div.ft_inner2 p.tel{
    padding:27px 0 0 0;
}

#footer2 div.ft_inner2 p.bellwork{
    padding:32px 0 0 10px;
}

#footer2 div.ft_inner2 p.itochu{
    padding:30px 0 0 5px;
}

#footer2 div.ft_inner2 p.mitsu{
    padding:30px 0 0 40px;
}

#footer2 div.ft_inner2 p.bell{
    padding:30px 0 0 40px;
}



	/*---------------------------clearfix---------------------------*/
	.clearfix:after {
		  content: ".";  /* 新しい要素を作る */
		  display: block;  /* ブロックレベル要素に */
		  clear: both;
		  height: 0;
		  visibility: hidden;
		}

	.clearfix{
		  min-height: 1px;
		}

	* html .clearfix {
		  height: 1px;
		}


/* ------------------------------------------------------------
										マップ
------------------------------------------------------------ */
	p.map{
		text-align:center;
	}
	div.print{
		padding-right:20px;
		padding-top:10px;
		margin-bottom:20px;
	}
	p.btn_print{
		padding-right:10px;
	}

/* ------------------------------------------------------------
										物件概要
------------------------------------------------------------ */


	h2{
		padding:30px 0 0 140px;
		color:#666;
		}
	table.outline_table{
		width:700px;
		border:#808080 solid 1px;
		margin:2px auto 20px;
		}
	table.outline_table th{
		width:160px;
		background-color:#e8fcec;
		border:#808080 1px solid;
		text-align:right;
		color: #666;
		padding:5px 10px 5px;
		font-size:80%;
		}
	table.outline_table td{
		widoth:540px;
		border:#808080 1px solid;
		text-align:left;
		color:#666;
		padding:5px 10px 5px;
		font-size:80%;
		line-height:1.3em;
		}

	p.star {
		text-align: center;
	}

	.bukentext{
		width:974px;
		margin: 0 auto;
	}

	.bukentext p{
		font-size: 12px;
		padding-left: 20%;
	}

	/* 2017年5月26日追加 */
	.mynav_layout{
		position: relative;
	}

	.mynav{
		position: absolute;
		right: 0;
		bottom: 15px;
	}

	@media screen and (max-width:768px) {
        #pc{
            display: none;
        }

        #sp{
            display: block !important;
        }

/* spフォームCSS */

.wpcf7 input[name="text-427"], .wpcf7 input[name="text-812"] {
    width: 95% !important;
    height: 40px !important;
    border: 1px solid #cccccc !important;
}

.wpcf7 input[name="text-623"], .wpcf7 input[name="text-624"], .wpcf7 input[name="text-563"], .wpcf7 input[name="text-566"] {
    width: 30% !important;
    height: 30px !important;
    border: 1px solid #cccccc;
}


p.form_cont {
    display: block  !important;
    vertical-align: middle;
    padding: 2% 0 5% 5%;
}

select {
    height: 40px !important;
    border: 1px solid #cccccc;
    width: 95% !important;
}

.wpcf7 input[name="your-email"], .wpcf7 input[name="text-930"] {
    width: 95%  !important;
    height: 40px !important;
    border: 1px solid #cccccc;
}

.wpcf7 input[name="zip"] {
    width: 95%;
    height: 40px !important;
    border: 1px solid #cccccc  !important;
}

.wpcf7 input[name="address"], .wpcf7 input[name="text-238"] {
    width: 95%  !important;
    height: 40px !important;
    border: 1px solid #cccccc  !important;
}

span.wpcf7-list-item {
    display: inline-block;
    margin: 0 0 0 1em;
    label {
      display: flex;
      align-items: center;
    }
}

/* spフォームCSSここまで */

		.mynav{
			position: relative;
		}

		#footer2 div.ft_inner2{
    width:75%;
    text-align:center;
    margin:0 auto;
}
#footer2 div.ft_inner2 p.tel{
    padding:3% 0;
    width: 100%;
}
#footer2 div.ft_inner2 p.tel img{
    text-align:center;
}

#footer2 div.ft_inner2 p.bellwork{
    padding:3% 0;
    width: 100%;
}
#footer2 div.ft_inner2 p.bellwork img{
    text-align:center;
}


#footer2 div.ft_inner2 p.itochu{
    padding:3% 0;
    width: 100%;
}
#footer2 div.ft_inner2 p.itochu img{
    text-align:center;
}

#footer2 div.ft_inner2 p.mitsu{
    padding:3% 0;
    width: 100%;
}
#footer2 div.ft_inner2 p.mitsu img{
    text-align:center;
}

#footer2 div.ft_inner2 p.bell{
    padding:3% 0;
    width: 100%;
}
#footer2 div.ft_inner2 p.bell img{
    text-align:center;
}

	.contcbody{
	width:100% !important;
	margin: 0 auto;
	}
  .contcbody input[name="post_password"] {
    display: block;
    padding: 5px 10px;
    margin: auto;
    border: none;
    background-color: #e6e6e6;
  }
  .contcbody input[type="submit"] {
    color: #fff;
    background: #333;
    padding: 5px 30px;
    border-radius: 5px;
    display: flex;
    width: max-content;
    margin: 20px auto 60px;
    letter-spacing: 1em;
    text-indent: 1em;
  }
  .contcbody label {
    text-align: left;
    display: block;
  }

	.form_table th {
    width: 20% !important;
    background-color: #ede6d9;
    border: #cdc5a0 1px solid;
    color: #666;
    padding: 5px 10px 5px;
    font-size: 80%;
}

.contip input {
    width: 200px;
    /*margin: 3% 0 3% 23%;*/
    border: 1px solid;
    background-color: #fff;
}

.contip {
    display: block;
    text-align: left;
}

.bukentext {
    width: 100%;
    padding: 2% 0;
}

#header2{
		width:75%;
		height:85px;
		margin:0 auto;
		}

	}
/*↑↑↑↑↑↑↑↑↑↑↑ここまで768↑↑↑↑↑↑↑↑↑↑↑*/

.contcbody{
	width:980px;
	margin: 0 auto;
  padding: 30px 10px;
	}
  #post-7438 .contcbody p {
    text-align: center;
  }
  .contcbody p {
    margin-bottom: 30px;
    
  }
  .contcbody input[name="post_password"] {
    display: block;
    padding: 5px 10px;
    margin: auto;
    border: none;
    background-color: #e6e6e6;
  }
  .contcbody input[type="submit"] {
    color: #fff;
    background: #333;
    padding: 5px 30px;
    border-radius: 5px;
    display: flex;
    width: max-content;
    margin: 20px auto 60px;
    letter-spacing: 1em;
    text-indent: 1em;
    border: none;
  }
  #post-7438 .contcbody label {
    text-align: center;
    display: block;
  }

.wpcf7 input[name="your-email"], .wpcf7 input[name="text-930"] {
    width: 95%;
}

.wpcf7 input[name="tel-253"]{
    width: 20%;
    height: 22px !important;
}

.wpcf7 input[name="text-929"], .wpcf7 input[name="text-446"] {
    width: 20%;
    height: 22px !important;
}

.wpcf7 input[name="text-928"] {
    width: 15%;
    height: 22px !important;
}

.wpcf7 input[name="checkbox-185[]"]{
	outline: 4px outset red;
	border: 4px outset red;
}

select {
	height: 22px;
	border: 1px solid #cccccc;
}

/* 来場予約コンタクトフォーム */
.contactrevbody{
	width:100%;
}

.contactrevbody table{
	width: 974px;
    margin: 0 auto
}

.contactrevbody .hisutext{
	width:974px;
	    margin: 0 auto;
}

      #sp{
          display: none;
      }

/* コンタクトフォーム　sp */
p.form_title {
    width: 100%;
    height: 40px;
    background-color: #81c3c1;
    color: #FFF;
    text-align: left;
    padding-left: 5%;
    display: flex;
    align-items: center;
    margin-bottom: 7px;
    &::before {
      content: "※";
      color: #ff0000;
      margin-right: 5px;
    }
}

p.form_title span {
    display: table-cell;
    vertical-align: middle;
}

p.form_cont {
    display: table-cell;
    vertical-align: middle;
    padding: 2% 0 5% 5%;
}

p.fmttl{
	width: 100%;
    height: 40px;
    background-color: #81c3c1;
    color: #FFF;
    text-align: left;
    padding-left: 5%;
    display: table;
    margin-bottom: 15px;
    }

.fmspbody{
	display: block;
	overflow: hidden;
	padding-top: 5%;
}

.contmigi2{
	    float: left;
    padding: 2% 3% 2%;
    line-height: 1.3em;
    font-size: 80%;
    color: #666;
    font-size: 100%;
    }

.footerspcon {
    width: 100%;
    height: 26px;
    background-color: #909090;
    color: #FFF;
    padding-top: 8px;
    text-align: center;
}

@media (max-width: 767px){
	
	#header2 h1.logo{
		width: 100%;
	}
	
	#news ul li p.news_date, #news ul li p.news_text{
		margin-right: 1rem;
		display: block;
		width: 100%;
		margin-bottom: 10px;
		position: relative;
	}
	
	#news ul li p.news_text{
		margin-bottom: 2rem;
		margin-left: 0;
	}
    
    .bukentext p.respo_text{
        padding: 10px;
        text-align: left;
    }
	
	
}

@media (max-width: 419px){
    .contip input{
        margin-right: 0;
    }
    
    .contip input:first-child{
        margin-bottom: 30px;
    }
    
    .contip input:nth-child(4){
        margin-bottom: 30px;
    }
    
    #footer2 div.ft_inner2 p.tel img{
        width: 100%;
        display: inline-blok;
    }
}


/* 来場予約フォームのcss */
.reservation_form_wrap {
	display: flex;
	flex-direction: column;
	min-height: 100vh;
}
.reservation_form_wrap div.reservation_form_footer {
	margin-top: auto !important;
}
.reservation_form_logo {
	max-width: 960px;
	width: 95%;
	margin: 0 auto;
}
.reservation_form_logo h1 {
	width: 35%;
	max-width: 400px;
}
.reservation_form_logo h1 img {
	width: 100%;
}
.reservation_form_footer_pc .link {
	display: flex; 
	justify-content: center; 
	margin-top:30px;
}
.reservation_form_footer_sp {
	display:none;
}
.reservation_form_wrap .copylight {
	color: #787878;
	margin-top: 3%;
	margin-bottom: 10px;
	text-align: center;
}
@media (max-width: 768px) {
	.reservation_form_logo h1 {
		width: 100%;
	}
	.reservation_form_footer_sp {
		display: block;
		font-size: 12px;
		text-align: center;
		padding: 10px 0;
	}
	.reservation_form_footer_pc {
		display:none;
	}
}



/* aboutページの事業紹介部分 B_slash追加 */
.inner.about {
  display: flex;
  align-items: flex-start;
  flex-wrap: wrap;
}
.b_slash {
	width: 100vw;
  margin: 0 calc(50% - 50vw);
  background-color: #fff;
}
.b_slash img {
  width: 100%;
}
.b_slash .b_slash_inner {
  display: flex;
  justify-content: space-between;
  max-width: 1000px;
  align-items: center;
  margin: 0 auto;
}
.space {
  width: 20%;
}
.logo {
  width: 35%;
  display: block;
}
.b_slash .business_contents {
  width: 38%;
  padding: 0 0 3rem 0;
}
div.b_slash_text {
  border: 1px solid #000;
  margin: 3rem 0;
  padding: 1rem;
  text-align: center;
  font-size: .8rem;
  line-height: 1.8rem;
}
.b_slash_text span {
  display: block;
  font-size: 1rem;
  font-weight: bold;
  margin-bottom: 5px;
}
.b_slash .business_btn {
  background-color: #231815;
  position: relative;
  width: max-content;
  margin: 10px 0 0 auto;
}

@media (max-width: 767px) {
  .b_slash {
    padding: 3rem;
  }
  .b_slash .b_slash_inner {
    display: block;
  }
  .b_slash .business_contents {
    width: 100%;
  }
  .logo {
    width: 60%;
  }
  .b_slash .business_btn {
    width: inherit;
  }
}


/* ------------------------------------------------------------
										企画販売プロジェクト 
------------------------------------------------------------ */
#planned_property a {
  width: 86%;
  margin: 0 auto;
  display: flex;
  align-items: center;
  justify-content: space-between;
  background-color: #e5e0d1;
  padding: 2% 3%;
  transition: all .3s ease;
	-webkit-transition: all .3s ease;
	-moz-transition: all .3s ease;
}
#planned_property a:hover{
  opacity: 0.7;
}
#planned_property a .project_contens_banner {
  width: 48%;
  order: 1;
}
#planned_property a .project_contens_banner img {
  width: 100%;
}
#planned_property a .project_contens_body {
  width: 50%;
  order: 2;
}
#planned_property a .project_contens_body_inner {
  font-size: .9rem;
}
#planned_property h3 {
  font-size: 1.8rem;
  line-height: 1;
  letter-spacing: 2px;
  font-weight: normal;
  position: relative;
}
#planned_property h3::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 1px;
  background: #000;
}
#planned_property .project_contens_body_inner p {
  font-size: 1.4rem;
  margin: 1rem 0 2rem 0;
}
#planned_property .project_contens_body_inner p span {
  display: block;
  font-size: .7rem;
}
#planned_property .projent_contens_btn {
  margin-top: 2rem;
}
#planned_property .projent_contens_btn p:first-child {
  background: #004862;
  color: #fff;
  display: inline-block;
  font-family: YuGothic, '游ゴシック', sans-serif;
  font-weight: bold;
  padding: 0.3rem 0.5rem;
  line-height: 1;
  font-size: .8rem;
}
#planned_property .projent_contens_btn span {
  display: inline-block;
  margin-left: 0.5rem;
  font-family: YuGothic, '游ゴシック', sans-serif;
  font-size: .8rem;
  font-weight: bold;
}

@media (min-width: 768px) and (max-width: 999px) {
  #planned_property .project_contens_body_inner > p {
    font-size: 1.2rem;
    margin: 1rem 0 1rem 0;
  }
}

@media (max-width: 767px){
  #planned_property a {
    display: block;
    width: 96%;
  }
  #planned_property a .project_contens_body {
    width: 100%;
  }
  #planned_property a .project_contens_banner {
    width: 100%;
  }
  #planned_property h3 {
    font-size: .9rem;
    line-height: 1.4;
    letter-spacing: 0;
  }
}


/* ------------------------------------------------------------
						プロジェクトページ リンクがない場合 
------------------------------------------------------------ */
.previous_note {
  display: flex;
  display: -webkit-flex;
  align-items: center;
  -webkit-align-items: center;
  background: #fdd000;
  transition: all .3s ease;
  -webkit-transition: all .3s ease;
  -moz-transition: all .3s ease;
}
.previous_note .project_contens_banner {
  position: relative;
  width: 50%;
}
.previous_note .project_contens_banner::after {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  width: 30px;
  height: 100%;
  background: rgba(255, 210, 0, 0.5);
}
.previous_note .project_contens_banner img {
  width: 100%;
}
.previous_note .project_contens_body {
  width: 50%;
  opacity: 1;
  transform: translate3d(0,0,0);
  -webkit-transform: translate3d(0,0,0);
  -moz-transform: translate3d(0,0,0);
}
.previous_note .project_contens_body .project_contens_body_inner {
  margin-left: 50px;
  width: 90%;
  font-size: .9rem;
}
.previous_note .project_contens_body .project_contens_body_inner h3{
  position: relative;
  font-size: 1.8rem;
  line-height: 1;
  letter-spacing: 2px;
  font-weight: normal;
}
.previous_note .project_contens_body_inner>p {
  font-size: 1.4rem;
  margin: 1rem 0 2rem 0;
  line-height: 1.1;
}
@media (max-width: 767px) {
  .previous_note {
    flex-direction: column;
    -webkit-flex-direction: column;
    padding: 1rem 4% 2rem 4%;
  }
  .previous_note h3 {
    font-size: .9rem;
    line-height: 1.4;
    letter-spacing: 0;
  }
  .previous_note .project_contens_body_inner>p {
    font-size: 1.4rem;
    margin: 1rem 0 2rem 0;
  }
  .previous_note .project_contens_body .project_contens_body_inner {
    margin: 0;
    width: 100%;
  }
  .previous_note .project_contens_body {
    width: 100%;
  }
  .previous_note .project_contens_banner {
    width: 100%;
    margin-top: 10px;
    order: 2;
  }
}
/* ------------------------------------------------------------
			来場予約のボタン
------------------------------------------------------------ */
#action-button button {
    width: min(100%, 400px) !important;
    height: 44px;
}


/* ------------------------------------------------------------
			来場予約のth td 幅固定
------------------------------------------------------------ */
fieldset table {
	width: 100%;
  table-layout: fixed;
  border-collapse: collapse;
}
fieldset table tr th {
	width:30%
}
fieldset table tr td {
  width: 70%;
}
fieldset table tr td select {
  width: 100%;
  box-sizing: border-box;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}