@charset "UTF-8";
/* CSS Document */
.l-header {
    box-shadow: 0 0 2px 2px rgba(201,201,201,0.5);
}
.l-header .l-header-inner {
    width: 100%;
    height: auto;
}
.l-content {
    padding-top: 98px;
}

.l-footer {
    width: 100%;
    height: auto;
    min-width: 1120px;
    margin: 0 auto;
    border-top: none;
    background: #fff;
    position: relative;
    box-sizing: border-box;
    padding-bottom: 90px;
}
@media screen and (max-width: 767px){
    .l-header {
        box-shadow: none;
    }
    .l-header .l-header-inner {
        width: 100%;
        height: 14.6vw;
    }
    .l-content {
        padding-top: calc(14.6vw - 30px);
    }

    .l-footer {
        width: 100%;
        height: auto;
        min-width: 1px;
        margin: 0 auto;
        border-top: none;
        background: #fff;
        position: relative;
        box-sizing: border-box;
        padding-bottom: 90px;
    }
}

/*---------------------------------------------
    PC- main-box
-----------------------------------------------*/
.p-sh-txt {
    padding: 70px 0;
}
.p-sh-txt .m-mh {
    padding: 0;
    font-size: 4.8rem;
    font-weight: 500;
    text-align: left;
}

.m-sh {
    margin-bottom: 50px;
    font-size: 2.6rem;
    text-align: center;
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 500;
}
@media screen and (max-width: 767px){
    .p-sh-txt {
        padding: 10vw 0;
    }
    .p-sh-txt .m-mh {
        padding: 0;
        font-size: 7.2vw;
    }
    .m-sh {
        margin-bottom: 6vw;
        font-size: 5.6vw;
        font-weight: 500;
    }
}

input[type='checkbox'] {
    /*display: none;*/
    visibility: hidden;
    position: absolute;
}

input[type='checkbox'] + span {
    box-sizing: border-box;
    cursor: pointer;
    display: inline-block;
    padding: 5px 30px;
    position: relative;
    width: auto;
}
input[type='checkbox'] + span::before {
    background: #fff;
    border: 1px solid #c3c3c3;
    content: '';
    display: block;
    height: 14px;
	width: 14px;
    left: 5px;
    margin-top: -8px;
    position: absolute;
    top: 50%;
}
input[type='checkbox'] + span::after {
    border-right: 2px solid #5096ff;
    border-bottom: 2px solid #5096ff;
    content: '';
    display: block;
    height: 9px;
    left: 10px;
    margin-top: -7px;
    opacity: 0;
    position: absolute;
    top: 50%;
    transform: rotate(45deg);
    width: 5px;
}
input[type='checkbox']:checked + span::after {
    opacity: 1;
}
input[type='checkbox']:checked + span::before {
    background: #f7f7f7;
}

input[type='radio'] {
    appearance: auto;
    border: 1px solid #c3c3c3;
}

/**
 * horizontal style of radio and checkbox
 */
.mw_wp_form .horizontal-item + .horizontal-item {
	margin-left: 0 !important;
}
.mw_wp_form .horizontal-item {
    width: 32%;
    display: inline-block;
}
.mw_wp_form .input-only .horizontal-item {
    width: 100%;
    display: inline-block;
}

.know span {
    width: auto !important;
    display: content !important;
}


.select01.sl03 {
    margin: 10px 0;
}
.select01.sl04 {
    margin-bottom: 10px;
}
input[type='text'].input-zip {
    width: 150px;
    margin-right: 30px;
    display: inline-block;
}
.l-blank-btn {
    display: inline-block;
}
@media screen and (max-width: 767px){
    
    input[type='text'].input-zip {
        width: calc(100% - 20vw);
        margin-right: 0;
        margin-left: 2vw;
        display: inline-block;
    }
    .l-blank-btn {
        display: block;
        text-align: right;
    }
}

/*---------------------------------------------
    form
-----------------------------------------------*/

.p-form-wrap {
    padding: 70px 0 100px;
}

.p-white-wrap {
    padding: 80px 70px;
    background: #fff;
}

.p-white-wrap .m-sh {
    margin-bottom: 50px;
    font-size: 2.6rem;
    text-align: center;
}
.p-white-wrap .p-form-txt {
    text-align: center;
    font-family: 'Noto Sans JP', sans-serif;
    font-size: 1.8rem;
    font-weight: 400;
    line-height: 1.8;
}

.ttl_mt {
    margin-top: 80px;
}


.p-step-bar {
    margin: 70px auto 40px;
    background: #eeeeee;
}
.p-step-bar li {
    float: left;
    /*width: calc(100% / 3);*/
    text-align: center;
    font-size: 2.2rem;
    font-weight: 300;
    color: #153e66;
    padding: 19px 0;
}
.p-step-bar li:first-child { width: 33%;}
.p-step-bar li:nth-child(2) { width: 34%;}
.p-step-bar li:nth-child(3) { width: 33%;}

.p-step-bar li.is-active {
    color: #fff;
    background: #153e66;
}
.p-step-bar li + li {
    position: relative;
}
.p-step-bar li + li::after {
    display: block;
    content: "";
    width: 35px;
    height: 35px;
    border-top: 3px solid #fff;
    border-right: 3px solid #fff;
    position: absolute;
    left: -20px;
    top: 0;
    bottom: 0;
    margin: auto;
    -webkit-transform: rotate(45deg) skew(15deg, 15deg);
    -moz-transform: rotate(45deg) skew(15deg, 15deg);
    -ms-transform: rotate(45deg) skew(15deg, 15deg);
    transform: rotate(45deg) skew(15deg, 15deg);
    background: #eee;
    z-index: 1;
}
.p-step-bar li.is-active + li::after {
    display: block;
    content: "";
    width: 35px;
    height: 35px;
    border-top: 3px solid #fff;
    border-right: 3px solid #fff;
    position: absolute;
    left: -20px;
    top: 0;
    bottom: 0;
    margin: auto;
    -webkit-transform: rotate(45deg) skew(15deg, 15deg);
    -moz-transform: rotate(45deg) skew(15deg, 15deg);
    -ms-transform: rotate(45deg) skew(15deg, 15deg);
    transform: rotate(45deg) skew(15deg, 15deg);
    background: #153e66;
}
.p-step-bar li p {
    position: relative;
    z-index: 2;
    line-height: 1;
}
.p-step-bar li span {
    display: inline-block;
    font-size: 2.6rem;
    font-weight: 300;
    margin-right: 0.5em;
}




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

    input[type='text'],
    input[type='number'], 
    input[type='tel'], 
    textarea {
        width: 100%;
        padding: 1vw;
        font-size: 3.6vw;
    }
    textarea {
        width: 100%;
        height: 40vw;
    }
    

    .p-select-wrap{
        width: 100%;
        padding: 1vw 0 1vw 2vw;
    }
    .p-select-wrap::after {
        content: "";
        width: 6vw;
        height: 8.8vw;
        background-color: #efefef;
        background-image: url("../../images/common/icn_select_arrow.svg");
        background-size: cover;
        background-position: center center;
        background-repeat: no-repeat;
        border-left: 1px solid #d0d0d0;
        position: absolute;
        top: calc(50% - 4.4vw);
        right: 0;
        z-index: 1;
    }

    .p-form-wrap {
        padding: 12vw 0 20vw;
    }

    .p-white-wrap {
        margin-top: 12vw;
        padding: 8vw 5vw;
        background: #fff;
    }

    .p-white-wrap .m-sh {
        margin-bottom: 4vw;
        font-size: 5.6vw;
        text-align: center;
    }
    .p-white-wrap .p-form-txt {
        text-align: left;
        font-size: 3.8vw;
    }

    .p-step-bar {
        margin: 8vw auto;
    }
    .p-step-bar li {
        height: 22vw;
        font-size: 3.6vw;
        padding: 3vw 0;
        line-height: 1.2;
    }
    .p-step-bar li:first-child {
        width: 30%;
        padding: 3vw 0 3vw 1vw;
    }
    .p-step-bar li:nth-child(2) {
        width: 35%;
        padding: 3vw 0;
        padding: 3vw 0 3vw 6vw;
    }
    .p-step-bar li:nth-child(3) {
        width: 35%;
        padding: 3vw 0;
        padding: 3vw 0 3vw 4vw;
    }
    .p-step-bar li + li::after {
        display: block;
        content: "";
        width: 12vw;
        height: 12vw;
        border-top: 3px solid #fff;
        border-right: 3px solid #fff;
        position: absolute;
        left: -6vw;
        top: 0;
        bottom: 0;
        margin: auto;
        -webkit-transform: rotate(45deg) skew(15deg, 15deg);
        -moz-transform: rotate(45deg) skew(15deg, 15deg);
        -ms-transform: rotate(45deg) skew(15deg, 15deg);
        transform: rotate(45deg) skew(15deg, 15deg);
        background: #eee;
        z-index: 1;
    }
    .p-step-bar li.is-active + li::after {
        display: block;
        content: "";
        width: 12vw;
        height: 12vw;
        border-top: 3px solid #fff;
        border-right: 3px solid #fff;
        position: absolute;
        left: -6vw;
        top: 0;
        bottom: 0;
        margin: auto;
        -webkit-transform: rotate(45deg) skew(15deg, 15deg);
        -moz-transform: rotate(45deg) skew(15deg, 15deg);
        -ms-transform: rotate(45deg) skew(15deg, 15deg);
        transform: rotate(45deg) skew(15deg, 15deg);
        background: #153e66;
    }
    .p-step-bar li span {
        display: block;
        font-size: 4.6vw;
        margin-right: 0;
        margin-bottom: 1vw;
    }

}

.p-form-box {
    width: 100%;
    margin-bottom: 3px;
    display: flex;
    justify-content: space-between;
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 400;
    text-align: left;
}
.p-form-box .p-form-ttl {
    width: 340px;
    padding: 40px 28px;
    display: flex;
    background: #edf2ff;
    justify-content: space-between;
    align-items: flex-start;
    font-size: 1.6rem;
    line-height: 1.6;
}
.p-form-box .p-form-ttl.center-align {
    align-items: center;
}

.p-form-box .p-form-ttl .hissu {
    min-width: 32px;
    margin-left: 5px;
    padding: 4px 10px;
    display: inline-block;
    background: #d21708;
    text-align: center;
    color: #fff;
    font-size: 1.4rem;
}
.p-form-box .p-form-ttl .nini {
    min-width: 32px;
    margin-left: 5px;
    padding: 4px 10px;
    display: inline-block;
    background: #9e9e9e;
    text-align: center;
    color: #fff;
    font-size: 1.4rem;
}
.p-form-box .p-form-txt {
    width: calc(100% - 343px);
    padding: 20px 50px;
    background: #f8f8f8;
    text-align: left;
}
.p-ex-txt {
    margin-top: 10px;
    color: #8a8a8a;
    font-size: 1.6rem;
    line-height: 1.6;
    text-indent: -1em;
    padding-left: 1em;
}
.p-ex-txt.p-txt-indent {
    text-indent: -1.7em;
    padding-left: 1.7em;
}


.callBack_box {
    display: flex;
    flex-wrap: wrap;
}

.callBack_box span {
    width: auto !important;
}

.mail_ttlBox,
.inquiry_ttlBox {
    background: #edf2ff;
    width: 340px;
}

.mail_ttlBox p, 
.inquiry_ttlBox p{
    padding: 0 28px 40px 40px;
    font-size: 16px;
}

.p-form-txt_center {
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.inquiry_ttlBox .noIndent {
    text-indent: 0;
    padding-left: 0;
    padding: 0 28px 40px;
}

.checkbox_center {
    display: flex;
    align-items: center;
}


.p-form-note-box {
    width: 100%;
    margin: 40px auto 0;
    display: block;
    text-align: center;
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 400;
}
.p-form-note-box a {
    display: inline-block;
    color: #153e66;
    border-bottom: 1px solid #153e66;
}
.p-form-note-box .m-normal-txt {
    margin-bottom: 30px;
    font-size: 1.6rem;
}
.p-form-note-box .checkbox01 {
    font-size: 2.0rem;
    line-height: 1;
}


.p-btn-submit {
    margin-top: 40px;
	text-align: center;
}
.p-btn-submit button, 
.p-btn-submit input[type="submit"]{
	outline: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	margin: 0 auto ;
	width: 365px;
	font-family: 'Shippori Mincho', serif;
	letter-spacing: 0.1em;
	text-align: center;
	padding: 25px 1.5em 25px 0;
	font-size:2.2rem;
	border:1px #153e66 solid;
	border-radius: 4px;
    position: relative;
    text-decoration: none;
    background-color: #153e66;
    color: #fff;
    transition: .2s;
}

.p-btn-submit button::after, 
.p-btn-submit input[type="submit"]::after{
	position: absolute;
	content:'';
	width: 24px;
	height: 100%;
	top: 0;
	bottom: 0;
	right: 25px;
	margin: auto;
	background-size: contain;
	background-repeat:no-repeat;
	background-position: center;
	background-image: url("../../images/common/icn_mail.svg");
}

.p-btn-submit button::before, 
.p-btn-submit input[type="submit"]::before{
	position: absolute;
	content:'';
	width:100%;
	height: 100%;
	top:0;
	left:0;
	margin: auto;
	border-bottom: 4px #688eb5 solid;
	border-radius: 4px;
	z-index: -1;
	transition: .2s;
	
}
@media screen and (min-width: 1024px){
	.p-btn-submit button:hover, 
    .p-btn-submit input[type="submit"]:hover {
		transform: translateY(4px);
		/*margin-top: 4px;
		margin-bottom: 0*/
	}
	.p-btn-submit button:hover::before, 
    .p-btn-submit input[type="submit"]:hover::before {
		border-bottom:none;
	}
}



@media screen and (max-width: 1023px){
    .mw_wp_form .horizontal-item {
        width: 100%;
        display: block;
    }
}

@media screen and (max-width: 767px){
    .p-form-box {
        width: 100%;
        margin-bottom: 3px;
        display: block;
        text-align: left;
    }
    .p-form-box .p-form-ttl {
        width: 100%;
        margin-bottom: 3px;
        padding: 4vw;
        display: flex;
        background: #edf2ff;
        justify-content: space-between;
        align-items: flex-start;
        font-size: 3.8vw;
        line-height: 1.6;
    }
    .p-form-box .p-form-ttl .hissu, 
    .p-form-box .p-form-ttl .nini {
        padding: 0.8vw 2vw;
        font-size: 3.2vw;
    }
    .p-form-box .p-form-txt {
        width: 100%;
        padding: 4vw;
        background: #f8f8f8;
        text-align: left;
    }
    .p-form-box .p-form-txt .p-ex-txt {
        margin-top: 10px;
        color: #8a8a8a;
        font-size: 3.4vw;
        line-height: 1.6;
    }


    .p-form-note-box {
        width: 100%;
        margin: 8vw auto 0;
        display: block;
        text-align: center;
        font-family: 'Noto Sans JP', sans-serif;
        font-weight: 400;
    }
    .p-form-note-box a {
        display: inline-block;
        color: #153e66;
        border-bottom: 1px solid #153e66;
    }
    .p-form-note-box .m-normal-txt {
        margin-bottom: 6vw;
        font-size: 3.2vw;
        text-align: left;
    }
    .p-form-note-box .checkbox01 {
        font-size: 3.6vw;
        line-height: 1;
    }
    
    .mw_wp_form .horizontal-item {
        width: 48%;
        display: inline-block;
    }

    .p-btn-submit {
        margin-top: 8vw;
    }
	.p-btn-submit button, 
    .p-btn-submit input[type="submit"]{
		width: 90%;
		padding: 4.5vw 1.5em 4.5vw 0;
		font-size: 4.6vw;
	}
    
    .select01.sl05 {
        font-size: 3.5vw;
    }

    .mail_ttlBox,
    .inquiry_ttlBox {
        width: 100%;
    }

    .mail_ttlBox p,
    .inquiry_ttlBox p {
    padding: 0 4vw 4vw 6vw;
    font-size: 3.4vw;
    }

    .inquiry_ttlBox p {
        padding: 0 4vw 4vw;
    }
}



.p-btn-submit button[disabled] {
    opacity: 0.5;
    cursor: not-allowed;
}
.input-only {
    display: inline-block;
}
.mw_wp_form_confirm .input-only, 
.mw_wp_form_confirm .p-ex-txt {
    display: none;
}


.mw_wp_form_confirm .select01 {
	position: relative;
	border: none;
	border-radius: 0;
	background: none;
}
.mw_wp_form_confirm .select01.sl01, 
.mw_wp_form_confirm .select01.sl02, 
.mw_wp_form_confirm .select01.sl03, 
.mw_wp_form_confirm .select01.sl04{ width: 100%;}

.mw_wp_form_confirm .select01 select {
	width: 100%;
	padding: 0;
	cursor: pointer;
	text-indent: 0;
	text-overflow: ellipsis;
	border: none;
	outline: none;
	background: transparent;
	background-image: none;
	box-shadow: none;
	-webkit-appearance: none;
	appearance: none;
    line-height: 1.2;
}
.mw_wp_form_confirm .select01 select::-ms-expand {
    display: none;
}
.mw_wp_form_confirm .select01::before {
	content: none;
}
.mw_wp_form_confirm .select01::after {
	content: none;
}

.txt_ellipsis {
    text-overflow: ellipsis;
}
