
/*============================
	Foundation
==============================*/


/*============================
	Layout
==============================*/


/*============================
	Object
==============================*/

/*---------------
	component
----------------*/
.c-address{
	font-size: 0.8125rem;
	line-height: 1.4;
}
.c-required{
	color: #E6002D;
}
.c-note{
	margin: 0.5em 0;
}
.c-center{
	text-align: center;
}
/*---------------
	project
----------------*/
.p-contactBody{
	margin: 0 0 2rem;
	padding:0.5rem 1.2rem;
	border: #ccc 1px solid;
}
.p-contactBody dl{
	margin: 0 0 1rem;
	padding: 1rem 0 0;
	border-top: #ccc 1px solid;
	display: flex;
	justify-content:space-between;
}
.p-contactBody dl:first-child{
	border: none;
}
.p-contactBody__subTitle{
	flex:0 0 auto;
	width: 6em;
	margin-right: auto;
	font-size: 1.125rem;
}
.p-contactArea{
	flex: 1 0 auto;
	margin-left: auto;
	width: 50%;
	display: flex;
	justify-content: flex-start;
	flex-wrap: wrap;
}
.p-contactArea__info{
	flex: 0 0 auto;
	width: 32%;
	margin-right: 1%;
	margin-bottom: 1rem;
	line-height: 1.3;
}

/*contactForm*/

.p-contactForm{
	border: #ccc 1px solid;
	padding: 1rem 1.2rem;
	margin-bottom: 3rem;
}
.p-contactForm__section{
	margin: 0 0 1.2rem;
	padding: 0 0 0.5rem 0;
	border-bottom: #ccc 1px solid;
}
.p-contactForm__section dl{
	display: flex;
	justify-content: space-between;
}

.p-contactForm__sectionTitle{
	flex: 0 0 auto;
	width:20% !important;
}
.p-contactForm__sectionBody{
	flex: 0 0 auto;
	width:80% !important;
}
.p-formItem{
	display: flex;
	justify-content: flex-start;
	margin-bottom: 1rem;
}
.p-formItem .c-cellLabel{
	flex: 0 0 auto;
	width: 6em;
}
.p-formItem.u-indent{
	margin-left: 3rem;
}

/*formElem*/
textarea{display: block;}
form input.txt,
form textarea {
	border:#CCCCCC 1px solid;
}

form input.txt.hover,
form textarea.hover {
	background-color:#f4f4f4;
}

form input.txt.focus,
form textarea.focus {
	background-color:#f4f4f4;
	border:#000099 1px solid;
}

form label {
	cursor:pointer;
}

.p-contactForm input.txt {
	width:24em;
	padding:3px;
	cursor:text;
}
.p-contactForm input.txt.yubin {
	width:3em;
	vertical-align:0px;
	margin:0 3px 8px 3px;
}

.p-contactForm label {
	cursor:pointer;
}

.p-contactForm textarea {
	width:24em;
	height:10em;
	padding:3px;
	cursor:text;
}
.p-contactForm textarea.address {
	height:4em;
}
.p-contactForm textarea.message {
	width:32em;
}

.p-chbox_naiyo{
	margin-bottom: 0.5rem;
}
.p-chbox_naiyo li{
	margin-bottom: 0.5rem;
}

.p-privacyComment{
	font-size: 0.875rem;
}
.p-privacyComment a{
	text-decoration: underline;
	color: #051E93;
}
.p-progress_step *{
	box-sizing: border-box;
}
/*.p-btnArea{
	display: flex;
	justify-content: center;
	align-items:center;
	margin: 2rem 0 2rem;
}
.p-btnArea .txt{
	flex: 0 0 auto;
	text-align: left;
	width: auto;
	margin-right: 1rem;
}
.p-btnArea input{
	display: block;
	width: 8rem;
	text-align: center;
	padding:0.8rem 0;
	font-size: 0.9325rem;
	cursor:pointer;
	letter-spacing: 0.5em;
	border-radius: 4px;
	background: #fff;
	border: #666 1px solid;
	line-height: 1;
}
.p-btnArea input:hover{
	background-color: #f0f0f0;
}*/

/*-------------------
	Utility
--------------------*/


/*============================
	sp
==============================*/
.sp .l-title--sp .p-snav__ctgTitle{
	margin-bottom: 1.6rem;
}

/*p-snav__nav*/
.sp .l-title--sp .p-snav__nav,
.sp .l-snav{
	display: none;
}

.sp .p-contactBody dl{
	display: block;
}
.sp .p-contactArea{
	width: 100%;
	margin: 0;
	margin-left: 0 !important;
}
.p-contactBody__subTitle{
	margin-bottom: 0.5rem;
}
.sp .p-contactArea__info{
	margin-bottom: 1rem;
	width: 100%;
	margin-right: 0;
}
.sp .c-address{
	font-size: 0.9375rem;
}

.sp .p-contactForm__section dl{
	display: block;
}

/*form*/

.sp .p-contactForm{
	border: none;
	background-color: #f4f4f4;
}
.sp .p-contactForm__section dl{
	display: block;
}
.sp .p-contactForm__sectionTitle{
	width: 100%;
	margin-bottom: 0.75rem;
}
.sp .p-contactForm__sectionBody{
	padding-left: 0 !important;
	width: 100%;
}
.sp .p-formItem.u-indent{
	margin-left: 0;
}

.sp .p-contactForm input.txt{
	width:100%;
	box-sizing: border-box;
	border: #ccc 1px solid;
}
.sp .p-contactForm input.txt.yubin{
	width: 3em;
}
.sp .p-contactForm textarea{
	width: 100%;
	margin: 0.5rem 0;
	border: #ccc 1px solid;
}
.sp .p-formTxt{
	flex:1 0 auto;
	/*width: 50%;*/
}

/*.sp .p-btnArea{
	display: block;
}
.sp .p-btnArea .txt{
	text-align: center;
	margin-bottom: 1rem;
}
.sp .p-btnArea input{
	margin: 0 auto;
}
.sp .p-privacyComment{
	font-size: 0.75rem;
	line-height: 1.5;
}
.sp .p-btnArea input{
	background: #fff;
	border: #ccc 1px solid;
	height: 3rem;
}*/