@charset "utf-8";

/*-----------------------------------------------------
 download
-----------------------------------------------------*/
.p-contact-column{
	--item-gap:40px;
	display: flex;
	flex-direction: column;
	gap:var(--item-gap);
}

@media screen and (min-width: 960px) {
.p-contact-column{
	flex-direction: row;
}
.p-contact-column__col{
	flex: 0 0 calc(50% - calc(var(--item-gap) / 2));
}

}
@media screen and (min-width: 1300px) {
.p-contact-column{
	--item-gap:60px;
}
}

.p-contact-title{
	margin: 0 0 15px 0;
	font-size: 1.25em;
	font-weight: 700;
	line-height: 1.78;
	color: var(--main-color);
}
.p-contact-text {
	font-size: 16px;
	line-height: 2;
}
.p-contact-logolist
p + .p-contact-title{
	margin: 40px 0 15px 0;}

.p-contact-logolist{
	margin: 0 0 30px 0;
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 40px 50px;
}
.p-contact-logolist li{
	display: flex;
	align-items: center;
	justify-content: flex-start;
}
.p-contact-logolist img{ height: 40px; max-width: 100%; object-fit: contain;}

.p-contact-heading{
	margin: 50px 0 30px 0;
	border-bottom: 1px solid #C3D0DB;
	font-size: 1.1em;
	font-weight: 700;
	line-height: 1.78;
	color: var(--main-color);
}

@media screen and (max-width: 959px) {
.p-contact-title{
	font-size: 1.75em;
}
.p-contact-heading{
	font-size: 1.625em;
}
.p-contact-logolist{
	gap: 20px 25px;
}
}
.p-contact-list{
	color: #02213B;
}
.p-contact-list>li{
	position: relative;
	padding: 0 0 0 22px;
	margin: 0 0 6px 0;
	font-weight: 500;
}
.p-contact-list>li::before{
	content: "•";
	position: absolute;
	left: 2px;
	top: -2px;
	font-size: 1.3em;
	line-height: 1.5;
	color: var(--main-color);
}

.p-contact-form{
	background: #F7F9FC;
	padding: 25px;
	border-radius: 12px;
}
.p-contact-form-text{
	font-weight: 500;
	line-height: 1.5;
	margin: 0 0 20px 0;
}
.c-contact-form__item{
	padding: 0!important;
}
.c-contact-form__item>dt{
	font-weight: 700;
	color: var(--main-color);
	margin: 0 0 3px 0;
	padding: 0!important;
}
.u-must::after{
	content: "必須";
	margin-left: 8px;
	display: inline-block;
	border-radius: 3px;
	padding: 2px 12px;
	font-size: 0.75em;
	line-height: 1.2;
	background:var(--main-color);
	color: var(--bg-color);
}
.c-contact-form__item input[type="text"],
.c-contact-form__item input[type="email"],
.c-contact-form__item input[type="tel"],
.c-contact-form__item textarea{
	width: 100%!important;
	background: #FFF!important;
	border: 1px solid #C3D0DB!important;
}

.p-contact-form-submit{
	text-align: center;
	margin: 0 0 10px 0;
}
.p-contact-form-submit>input[type="button"]{
	display: inline-block;
	padding: 12px 30px;
	background: var(--main-color);
	border-radius: 6px;
	font-weight: 700;
	box-shadow: var(--box-shadow);
	color: #fff;
	cursor: pointer;
	font-size: 1.25em;
	border: 0;
	width: 240px;
}
.p-contact-form-policy{
	font-size: 0.875em;
	line-height: 1.5;
	text-align: center;
	margin: 0;
}
@media screen and (min-width: 960px) {
.p-contact-form{
	padding: 35px 35px 45px 35px;
}
.c-contact-form__item{
	margin: 0 0 20px 0;
}
.p-contact-image{
	margin: 0 0 50px 0;
}

}
@media screen and (min-width: 1300px) {
.p-contact-title{
	font-size: 1.75em;
}
.p-contact-heading{
	font-size: 1.375em;
}
.p-contact-form-submit>input[type="button"]{
	font-size: 1.5em;
	width: 360px;
}
}

/* confirm
-----------------------------------------------------*/
.p-contact-confirm{
	margin: 0 auto!important;
	background: #F7F9FC!important;
	box-shadow: none!important;
	border: none!important;
	border-radius: 12px!important;
	padding: 20px!important;
	width: auto!important;
}
.p-contact-confirm-heading{
	font-size: 1.25em!important;
	font-weight: 700;
	line-height: 1.5;
	color: var(--main-color);
	margin: 0 0 20px 0!important;
	border: none!important;
	text-align: center!important;
	padding: 0!important;
	width: 100%!important;
}
.p-contact-window{
	background: #FFF!important;
	padding: 20px!important;
	margin: 0 auto!important;
	box-sizing: border-box!important;
}
.p-contact-window>dl{
	border: none!important;
	display: flex;
	flex-direction: column;
	color: var(--main-color);
	width: 100%!important;
}
.p-contact-window>dl:not(:last-child){
	margin: 0 0 20px 0!important;
}
.p-contact-window>dl>dt{
	float: none!important;
	padding: 0!important;
	text-align: left!important;
	font-weight: bold;
}
.p-contact-window>dl>dd{
	float: none!important;
	padding: 0!important;
	text-align: left!important;
}
.p-contact-confirm-submit{
	display: flex;
	flex-direction: column;
	align-items: center;
	width: 100%!important;
	gap: 20px;
	padding: 20px 0 0 0 !important;
}
.p-contact-confirm-btn__submit{
	width: 280px;
	margin: 0!important;
	box-shadow: var(--box-shadow);
	color: #FFF;
	background: var(--main-color)!important;
	border: none!important;
	font-size: 1.25em!important;
	font-weight: 700;
	padding: 15px 0!important;
	border-radius: 6px!important;
}
.p-contact-confirm-btn__cancel{
	width: 180px;
	background: #D9E2EF!important;
	color: var(--main-color)!important;
	margin: 0!important;
	border: none!important;
	font-weight: 700;
	padding: 15px 0!important;
	border-radius: 6px!important;
}
@media screen and (min-width: 960px) {
.p-contact-confirm-heading{
	font-size: 1.75em!important;
	padding: 20px 0!important;
}
.p-contact-window{
	width: 630px;
	padding: 40px!important;
}
.p-contact-confirm-submit{
	padding: 40px 0!important;
}
.p-contact-confirm-btn__submit{
	width: 360px;
	font-size: 1.5em!important;
}
.p-contact-confirm-btn__cancel{
	width: 220px;
	font-size: 1.25em!important;
}
}

@media screen and (min-width: 1300px) {
.p-contact-confirm{
	width: 1000px!important;
}
}
/*-----------------------------------------------------
 thanks
-----------------------------------------------------*/

.p-thanks-heading{
	font-size: 1.625em;
	font-weight: 700;
	line-height: 1.5;
	color: var(--main-color);
	margin: 0 0 40px 0;
}
.p-thanks-text{
	line-height: 2.25;
	margin: 0 0 40px 0;
}

.c-button__link--thanks{
	background: #FFF;
	border: 2px solid var(--main-color);
	color: var(--main-color);
	box-shadow: none;
	margin: 0 auto;
}
@media screen and (min-width: 960px) {
.l-section--thanks{
	text-align: center;
}
}

