@charset "UTF-8";

/* ---------------------------------------------------------
	CSS Document contact
--------------------------------------------------------- */

.p-contact_tel_sec {
	width: 980px;
	margin: 0 auto 60px;
}

.p-contact_tel_sec h2 {
	margin-bottom: 20px;
	font-weight: 600;
	font-size: 26px;
	color: #457B9D;
}

.p-contact_tel_list {
	display: flex;
	justify-content: space-between;
	gap: 15px;
}

.p-contact_tel_item {
	flex: 1;
	background: #ECF6FA;
	padding: 15px;
	border-radius: 5px;
	text-align: center;
}

.tel-link {
	font-weight: bold;
	font-size: 1.2rem;
	text-decoration: none;
	opacity: 1;
}

.p-contact_form_sec {
	margin-bottom: 30px;
}

.p-contact_form_sec h2 {
	margin-bottom: 10px;
	font-weight: 600;
	font-size: 26px;
	color: #457B9D;
}

/* ---------------------------------------------------------
	CSS Document contact
--------------------------------------------------------- */

#form {
	scroll-margin-top: 160px;
}

#contact {
	width: 980px;
}

#contact .em,
#contact em {
	color: #3FA7D1;
}

#contact .notice {
	margin-bottom: 2em;
}

#contact .table {
	display: table;
	width: 100%;
	margin-bottom: 50px;
	text-align: left;
	font-size: 15px;
	position: relative;
}

#contact .table:before {
	content: '';
	width: 100%;
	height: 1px;
	background-image: linear-gradient(90deg, transparent 0%, transparent 80%, #525656 80%, #525656 100%, transparent);
	background-size: 3px 1px;
	position: absolute;
	top: 0;
	left: 0;
}

#contact dl {
	display: table-row;
	position: relative;
}

#contact dl:after {
	content: '';
	width: 100%;
	height: 1px;
	background-image: linear-gradient(90deg, transparent 0%, transparent 80%, #525656 80%, #525656 100%, transparent);
	background-size: 3px 1px;
	position: absolute;
	bottom: 0;
	left: 0;
}

#contact dt {
	display: table-cell;
	vertical-align: middle;
	width: 240px;
	padding: 20px 0;
	line-height: 18px;
	position: relative;
}

#contact dt em {
	display: inline-block;
	vertical-align: top;
	width: 2.5em;
	height: 19px;
	margin-left: 1em;
	background: #FFD166;
	text-align: center;
	font-size: 13px;
	letter-spacing: 0.05em;
	line-height: 18px;
	color: #fff;
}

#contact dd {
	display: table-cell;
	vertical-align: middle;
	height: 86px;
	padding: 20px 0;
}

#contact dd p {
	margin-top: 10px;
}

#contact dd label {
	display: inline-block;
	vertical-align: middle;
	margin-right: 3em;
	line-height: 46px;
}

/* ---------------------------------------------------------
	CSS Document input
--------------------------------------------------------- */

input, textarea, select, button {
	outline: 0;
	margin: 0;
	padding: 0;
	border-radius: 0;
	border: 0;
	box-shadow: none;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 15px;
	color: #291c14;
}

::-webkit-input-placeholder {
	color: #c8c8c8;
}

::-moz-placeholder {
	opacity: 1;
	color: #c8c8c8;
}

:-ms-input-placeholder {
	color: #c8c8c8;
}

#contact input[type='url'],
#contact input[type='tel'],
#contact input[type='email'],
#contact input[type='text'],
#contact select,
#contact textarea {
	padding: 0 0.8em;
	border-radius: 3px;
	border: solid 1px #d5d5d5;
	background: #fff;
	box-shadow: 1px 1px 3px 0 rgba(0, 0, 0, 0.08) inset;
	letter-spacing: 0.05em;
}

#contact select,
#contact input[type='url'],
#contact input[type='tel'],
#contact input[type='email'],
#contact input[type='text']{
	height: 46px;
}

#contact input[type='checkbox'],
#contact input[type='radio'] {
	vertical-align: -4px;
	width: 20px;
	height: 20px;
	margin: 0 0.2em 0 0;
	padding: 0;
}

#contact textarea {
	vertical-align: top;
	width: 100%;
	padding: 0.8em;
}

#contact select {
	padding: 0 0 0 0.5em;
}

#contact .err {
	box-shadow: 0 0 3px 0 #f00 !important;
}

#contact .w320 {
	width: 320px;
}

#contact .w620 {
	width: 620px;
}

#contact .submit {
	display: flex;
	justify-content: center;
}

#contact .submit .send {
	margin-left: 50px;
}

#contact .submit button {
	vertical-align: top;
	width: 240px;
	height: 70px;
	border-radius: 70px;
	background: #457B9D;
	text-align: center;
	text-decoration: none;
	font-weight: 500;
	font-size: 20px;
	letter-spacing: 0.05em;
	color: #fff;
	cursor: pointer;
	transition: .4s;
}

#contact .submit .back button {
	background: #bbb;
}

#contact .submit button:hover {
	opacity: 0.6;
}

/* ---------------------------------------------------------
	CSS Document notice
--------------------------------------------------------- */

#contact h2 {
	margin-bottom: 20px;
	font-weight: 600;
	font-size: 26px;
	color: #457B9D;
}

#contact .notice {
	margin-bottom: 3em;
}

#contact .complete {
	margin-bottom: 3em;
}

#contact .complete p {
	margin-bottom: 2em;
}
