@charset "utf-8";

/*　　お問い合わせ　　*/

#contact .section,
#page .section {
	margin-top:-100px;
	}

#contact .section article,
#page .section .frame {
	position:relative;
	padding:50px 60px;
	background:#fff;
	border-radius:10px;
	z-index:2;
	}

#contact .flow {
	list-style:none;
	display:flex;
	flex-wrap:wrap;
	margin:0;
	padding:0;
	}

#contact .flow li {
    position:relative;
    width:calc(100% / 3);
    text-align:center;
    align-items:center;
    justify-content: center;
    padding:15px 0;
    line-height:1.5;
    background:#dae1ce;
    color:#839b5c;
	}

#contact .flow li:not(:last-child)::before,
#contact .flow li:not(:last-child)::after {
    position:absolute;
    z-index:2;
    top:0;
    bottom:0;
    left:100%;
    content:'';
    border:27.5px solid transparent;
    border-left:20px solid #dae1ce;
    margin:auto;
	}

#contact .flow li:not(:last-child)::before {
    margin-left:2px;
    border-left-color:#FFF;
	}

#contact .mw_wp_form_input .flow li.step1,
#contact .mw_wp_form_confirm .flow li.step2,
#contact .mw_wp_form_complete .flow li.step3 {
    color:#fff;
    background:#839b5c;
    z-index: 1;
	}

#contact .mw_wp_form_input .flow li.step1:after,
#contact .mw_wp_form_confirm .flow li.step2:after {
    border-left-color:#839b5c;
	}

#contact .form {
	display:flex;
	margin:50px 20px 0;
	}

#contact .form  .aside {
	width:270px;
	padding-right:50px;
	}

#contact .form  .aside p {
	font-size:0.95em;
	line-height:1.85;
	color:#333;
	letter-spacing:0;
	text-align:justify;
	}

#contact .form  .main {
	width:calc(100% - 270px);
	padding-left:50px;
	border-left:1px solid #ccc;
	}

#contact .form dl {
	list-style:none;
	display:flex;
	flex-wrap:wrap;
	margin:0 0 20px;
	}

#contact .form dt {
	width:250px;
	padding:20px 0 15px;
	}

#contact .form dt:before {
	content:'任意';
	display:inline-block;
	margin-right:10px;
	padding:3px 8px 5px;
	font-size:0.8em;
	color:#fff;
	line-height:1;
	vertical-align:text-bottom;
	background:#aaa;
	border-radius:3px;
	}

#contact .form dt.req:before {
	content:'必須';
	background:#d00;
	}

#contact .form dd {
	width:calc(100% - 250px);
	padding:15px 0;
	line-height:0;
	}

#contact .mw_wp_form_confirm .form dl {
	border-top:1px solid #ddd;
	border-bottom:1px solid #ddd;
	}

#contact .mw_wp_form_confirm .form dt,
#contact .mw_wp_form_confirm .form dd {
	border-top:1px dashed #ddd;
	}

#contact .mw_wp_form_confirm .form dt:nth-child(1),
#contact .mw_wp_form_confirm .form dd:nth-child(2) {
	border-top:none;
	}

#contact .mw_wp_form_confirm .form dd {
	line-height:1.8;
	}

#contact dd input {
	width:100%;
	padding:6px 12px;
	border:1px solid #999;
	}

#contact dd textarea {
	width:100%;
	height:300px;
	padding:6px 12px;
	font:initial;
	border:1px solid #999;
	}

#contact .policy {
	padding:20px 30px;
	background:#ecf0e7;
	border-radius:10px;
	}

#contact .mw_wp_form_confirm .policy {
	display:none;
	}

#contact .policy .head {
	text-align:center;
	}

#contact .policy .scroll {
	overflow-y:scroll;
	height:200px;
	margin:15px 0;
	padding:20px;
	font-size:0.9em;
	background-color:#fff;
	border:1px solid #ccc;
	}

#contact .policy .scroll li,
#page .section .frame li {
	margin-bottom:20px;
	text-align:justify;
	}

#contact .policy .scroll li::marker,
#contact .policy .scroll li strong,
#page .section .frame li::marker,
#page .section .frame li strong {
	font-weight:600;
	}

#contact .policy .chk {
	text-align:center;
	}

#contact .btnFrame {
	margin:40px 0 0;
	text-align:center;
	}

#contact .btnFrame input {
	display:inline-block;
	width:auto;
	height:40px;
	margin:0 10px;
	padding:0 30px;
	color:#fff;
	background-color:#ccc;
	border:none;
	border-radius:20px;
	}

#contact .mw_wp_form_input .btnFrame .send.active,
#contact .mw_wp_form_confirm .btnFrame .send {
	background-color:#839b5c;
	cursor:pointer;
	}

#contact .btnFrame .back {
	color:#555;
	background-color:#fff;
	border:1px solid #999;
	cursor:pointer;
	}

#contact .mw_wp_form_complete .thanks {
	max-width:800px;
	margin:0 auto 50px;
	}

#contact .mw_wp_form_complete .thanks .txt01 {
	margin-bottom:20px;
	font-size:1.2em;
	line-height:1;
	color:#000;
	}

#contact .mw_wp_form_complete .thanks .txt02 {
	font-size:0.95em;
	line-height:1.7;
	color:#444;
	}

.is-style-wide {
	width:100%;
	height:1px;
	margin:20px 0;
	border:none;
	border-top:1px solid #aaa;
	}


@media screen and (max-width:960px){

#contact .section,
#page .section {
	margin-top:-10vw;
	}

#contact .section article,
#page .section .frame {
	padding:6vw;
	}

#contact .flow li {
    font-size: 14px;
    line-height: 1.4;
    padding:14px 0;
	}
	
#contact .flow li:not(:last-child)::before,
#contact .flow li:not(:last-child)::after {
    border-width: 25px;
    border-left-width: 12px;
	}

#contact .form {
	display:block;
	margin:0;
	}

#contact .form  .aside {
	width:100%;
	padding:4vw 0;
	}

#contact .form  .main {
	width:100%;
	padding:2vw 0 0;
	border-left:none;
	border-top:1px solid #ccc;
	}

#contact .form dl {
	display:block;
	}

#contact .form dt {
	width:100%;
	padding:0 0 10px;
	}

#contact .form dd {
	width:100%;
	padding:0 0 3vw;
	}

#contact .mw_wp_form_confirm .form .main {
	padding:0;
	border-top:none;
	}

#contact .mw_wp_form_confirm .form dt {
	padding:0.5vw 1vw;
	background-color:#eee;
	border-top:1px solid #ddd;
	}

#contact .mw_wp_form_confirm .form dd {
	padding:1vw 1.5vw 1.5vw;
	border-top:none;
	}

#contact .btnFrame {
	margin:4vw 0 0;
	}

}


@media screen and (max-width:600px){


}