
/*============================
	Foundation
==============================*/
/*form reset iOS*/

input[type=submit]{
	-webkit-appearance: none;
	border-radius: 0;
}

/*============================
	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
----------------*/
h2.p-main_heading{
	font-size: 1.5rem;
	margin: 2rem auto 0;
}

.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;
	padding-top: 2rem;
	border-top: #ccc 1px solid;
}
.p-contactForm__section{
	margin: 0 0 2rem;
	padding: 0 0 0.75rem 0;
	border-bottom: #ccc 1px solid;
}
.p-contactForm__section dl{
	display: flex;
	justify-content: space-between;
}

.p-contactForm__sectionTitle{
	flex: 0 0 auto;
	width:15%;
}
.p-contactForm__sectionBody{
	flex: 0 0 auto;
	width:85%;
}
.p-formItem{
	display: flex;
	justify-content: flex-start;
	margin-bottom: 1.5rem;
}
.p-formItem .c-cellLabel{
	flex: 0 0 auto;
	width: 7em;
}
.p-contactForm .u-indent{
	margin-left: 3rem;
}

/*formElem*/
textarea{display: block;}
form input.txt,
form textarea {
	border:#b6b6b6 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:28em;
	padding:6px;
	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:28em;
	height:16em;
	padding:6px;
	cursor:text;
}
.p-contactForm textarea.address {
	height:6em;
}
.p-contactForm textarea.message {
	width:36em;
	margin-top: 0.75rem;
}

.p-chbox_naiyo{
	margin-bottom: 0.5rem;
}
.p-chbox_naiyo li{
	margin-bottom: 0.5rem;
	position: relative;
	padding-left: 1.5rem;
}
.p-chbox_naiyo li input{
	position: absolute;
	top:0.25rem; left: 0px;
}

.p-privacyComment{
	font-size: 0.875rem;
	text-align: center;
}
.p-privacyComment a{
	text-decoration: underline;
	color: #051E93;
}

.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,
.p-btnArea button{
	display: block;
	/*margin:0.5rem auto;*/
	width: 14rem;
	text-align: center;
	padding:1.5rem 0 1.5rem 0.5em;
	font-family:"Roboto","Noto Sans JP","メイリオ", Meiryo, "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", "ＭＳ ゴシック", sans-serif; 
	font-size: 1.375rem;
	font-weight: 500;
	cursor:pointer;
	letter-spacing: 0.5em;
	border-radius: 2px;
	background: #447AAC;
	border: #447AAC 1px solid;
	color: #fff;
	line-height: 1;
	transition: background-color 0.3s;
	margin: 0 0.75rem;
}
.p-btnArea input:hover,
.p-btnArea button:hover{
	background-color: #375d94;
}


/*-------------------
	Utility
--------------------*/
.u-bold{
	font-weight: bold;
}


/*============================
	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;
	padding-left: 1.125rem;
	padding-right: 1.125rem;
}
.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{
	display: block;
}
.sp .p-formItem.u-sp_inline{
	display: inline-block;
	margin-right: 1.5rem;
}
.sp .p-contactForm .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: 100%;
}

.sp .p-btnArea{
	display: block;
	padding-bottom: 2rem;
	text-align: center;
}
.sp .p-btnArea .txt{
	text-align: center;
	margin-bottom: 1rem;
}
.sp .p-btnArea input,
.sp .p-btnArea button{
	display: inline-block;
	width: 10rem;
	/*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;*/
}