
.p-form-checkbox-wrap label {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center
}

.p-form-checkbox-wrap .wpcf7-list-item-label:before {
    width: 15px;
    height: 15px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    content: '';
    display: inline-block;
	position: absolute;
	top: 4.2px;
	left: -13px;
    -webkit-box-shadow: 0 0 0 1px #666;
    box-shadow: 0 0 0 1px #666;
    margin-right: 1em;
    border: 3px solid #fff;
    background-color: #fff
}

.p-form-checkbox-wrap input {
    display: none
}

.p-form-checkbox-wrap input:checked+.wpcf7-list-item-label:before {
    background-color: #9db3cd!important;
}

@media all and (min-width: 768px) {
    .p-form-confirm-frame {
        margin-bottom:80px
    }
}

@media all and (max-width: 767px) {
    .p-form-confirm-frame {
        margin-bottom:30px
    }
}

@media all and (min-width: 768px) {
    .p-form-confirm-frame__row {
        display:-webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between;
        margin-bottom: 20px
    }
}

@media all and (max-width: 767px) {
    .p-form-confirm-frame__row {
        margin-bottom:20px;
        padding-bottom: 20px;
        border-bottom: 1px solid #caccd7
    }
}

@media all and (min-width: 768px) {
    .p-form-confirm-frame__head {
        width:22.22222%;
        padding-bottom: 20px;
        border-bottom: 1px solid #caccd7
    }
}

@media all and (max-width: 767px) {
    .p-form-confirm-frame__head {
        margin-bottom:8px
    }
}

@media all and (min-width: 768px) {
    .p-form-confirm-frame__content {
        width:72.22222%;
        padding-bottom: 20px;
        border-bottom: 1px solid #caccd7
    }
}

.p-form-content {
    position: relative
}

@media all and (min-width: 768px) {
    .p-form-content {
        margin-bottom:140px
    }
}

@media all and (min-width: 1367px) {
    .p-form-content {
        margin-right:27.5%;
        margin-left: 27.5%
    }
}

@media all and (min-width: 1025px) and (max-width:1366px) {
    .p-form-content {
        margin-right:20%;
        margin-left: 20%
    }
}

@media all and (min-width: 768px) and (max-width:1024px) {
    .p-form-content {
        margin-right:20%;
        margin-left: 20%
    }
}

@media all and (max-width: 767px) {
    .p-form-content {
        margin-bottom:60px;
        margin-right: 10px;
        margin-left: 10px
    }
}

.p-form-content:before {
    width: 1px;
    content: '';
    display: block
}

@media all and (min-width: 768px) {
    .p-form-content:before {
        height:100px;
        margin-top: -100px
    }
}

@media all and (max-width: 767px) {
    .p-form-content:before {
        height:70px;
        margin-top: -70px
    }
}

@media all and (max-width: 767px) {
    .p-form-content__in {
        padding:40px 20px;
        background-color: #fff
    }
}

.p-form-content__wrap-all-step {
    position: relative
}

.p-form-content__wrap-by-step {
    width: 100%;
    opacity: 0;
    position: absolute;
    top: 0;
    left: 0;
    pointer-events: none
}

@media all and (max-width: 767px) {
    .p-form-content__wrap-by-step {
        opacity:0;
        -webkit-transition-duration: .6s;
        transition-duration: .6s;
        -webkit-transition-property: opacity;
        transition-property: opacity
    }
}

.p-form-content__wrap-by-step.is-current {
    position: relative;
    pointer-events: auto
}

@media all and (max-width: 767px) {
    .p-form-content__wrap-by-step.is-current {
        opacity:1
    }
}

@media all and (min-width: 768px) {
    .p-form-content__wrap-by-step.is-shown {
        opacity:1
    }
}

.p-form-description {
    text-align: center
}

@media all and (min-width: 768px) {
    .p-form-description {
        margin-bottom:70px;
        margin-right: 5.55556%;
        margin-left: 5.55556%
    }
}

@media all and (max-width: 767px) {
    .p-form-description {
        margin-bottom:30px
    }
}

@media all and (min-width: 768px) {
    .p-form-frame {
        margin-bottom:80px
    }
}

@media all and (max-width: 767px) {
    .p-form-frame {
        margin-bottom:30px
    }
}

@media all and (min-width: 768px) {
    .p-form-frame__head {
        margin-bottom:15px
    }
    .p-form-frame__head3 {
        margin-top:0px!important;
		margin-bottom: 25px !important;
    }
}

@media all and (max-width: 767px) {
    .p-form-frame__head {
        margin-bottom:10px
    }
}


.p-form-frame__error {
    color: #fa723d
}

@media all and (min-width: 1025px) {
    .p-form-frame__error {
        font-size:13px;
        font-size: .8125rem
    }
}

@media all and (min-width: 768px) and (max-width:1024px) {
    .p-form-frame__error {
        font-size:13px;
        font-size: .8125rem
    }
}

@media all and (max-width: 767px) {
    .p-form-frame__error {
        font-size:11px;
        font-size: .6875rem
    }
}

@media all and (max-width: 767px) and (max-width:414px) {
    .p-form-frame__error {
        font-size:2.93333vw
    }
}

@media all and (max-width: 767px) and (min-width:415px) {
    .p-form-frame__error {
        font-size:12.144px
    }
}

@media all and (min-width: 768px) {
    .p-form-frame__error {
        margin-top:-10px;
        margin-bottom: 10px
    }
}

@media all and (max-width: 767px) {
    .p-form-frame__error {
        margin-top:-5px;
        margin-bottom: 7px
    }
}

.p-form-frame__error--flex {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex
}

.p-form-frame__error-col {
    width: 50%
}

.p-form-frame__error span {
    display: inline-block;
    margin-right: 1em
}


.p-form-frame__content4,.p-form-frame__content5 {
        border-bottom: 1px dashed rgb(102 127 155 / .7);;
        padding-bottom: 35px;
}

@media all and (min-width: 768px) {
    .p-form-frame__content {
        margin-bottom:35px
    }
	.p-form-frame__content3 {
        margin-bottom:0px
    }
	
	.p-form-frame__content4 {
        margin-bottom:28px
    }
	
	.p-form-frame__content5 {
        margin-bottom:45px
    }
}

@media all and (max-width: 767px) {
    .p-form-frame__content {
        margin-bottom:25px
    }
	.p-form-frame__content3 {
        margin-bottom:0px
    }
	.p-form-frame__content4 {
        margin-bottom:28px
    }
	.p-form-frame__content5 {
        margin-bottom:45px
    }
}

@media all and (min-width: 768px) {
    .p-form-frame__content2 {
        margin-bottom:0px;
		margin-top: 25px;
    }
}

@media all and (max-width: 767px) {
    .p-form-frame__content2 {
        margin-bottom:0px;
		margin-top: 25px;
    }
}

.p-form-frame__content--flex {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}

.p-form-input {
    width: 100%;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    display: block;
    background-color: #f2f2f2!important;
    border: 1px solid #9db3cd!important;
}

@media all and (min-width: 768px) {
    .p-form-input {
        padding:27.65px 30px!important;
    }
}

@media all and (max-width: 767px) {
    .p-form-input {
        padding:16px 20px!important;
		height: 53px;
    }
}

.p-form-input--twin {
}

.p-form-input--twin2 {
	margin-left: -1px!important;
}

@media all and (max-width: 767px) {
.p-form-input--twin {

}

.p-form-input--twin2 {
	margin-left: -1px!important;
}
}

.p-form-input--twin:nth-of-type(2) {
    border-left: 0;
	padding-right: 150px;
}


.p-form-input--one {
width: 200px!important;
}

.p-form-input--one2 {
	margin-left: -1px!important;
}

@media all and (max-width: 767px) {
.p-form-input--one {

}

.p-form-input--one2 {
	margin-left: -1px!important;
}
}

.p-form-input--one:nth-of-type(2) {
    border-left: 0;
	padding-right: 150px;
}



.p-form-select--twin {
	width: 150px!important;
}


.p-form-select--twin3 {
	width: 350px!important;
}

.p-form-select--twin2 {
	margin-left: -1px!important;
}

@media all and (max-width: 767px) {
.p-form-select--twin {

}

.p-form-select--twin2 {
	margin-left: -1px!important;
}
}

.p-form-select--twin:nth-of-type(2) {
    border-left: 0;
	padding-right: 150px;
}

.p-form-select--twin3:nth-of-type(2) {
    border-left: 0;
	padding-right: 150px;
}
.p-form-input--multi {
    height: 200px
}

.p-form-inquiry-with-tel {
    border: 1px solid #caccd7;
    text-align: center
}

@media all and (min-width: 768px) {
    .p-form-inquiry-with-tel {
        margin-bottom:30px;
        margin-right: 5.55556%;
        margin-left: 5.55556%;
        padding: 30px
    }
}

@media all and (max-width: 767px) {
    .p-form-inquiry-with-tel {
        margin-bottom:25px;
        padding: 15px
    }
}

@media all and (min-width: 768px) {
    .p-form-inquiry-with-tel--in-thanks {
        margin-bottom:60px
    }
}

@media all and (max-width: 767px) {
    .p-form-inquiry-with-tel--in-thanks {
        margin-bottom:30px
    }
}

.p-form-inquiry-with-tel p {
    margin: 0
}

.p-form-privacypolicy {
    width: 100%;
    height: 200px;
    overflow-y: scroll;
    margin-bottom: 30px;
    border: 1px solid #9db3cd;
}

@media all and (min-width: 1025px) {
    .p-form-privacypolicy {
        font-size:13px;
        font-size: .8125rem
    }
}

@media all and (min-width: 768px) and (max-width:1024px) {
    .p-form-privacypolicy {
        font-size:13px;
        font-size: .8125rem
    }
}

@media all and (max-width: 767px) {
    .p-form-privacypolicy {
        font-size:11px;
        font-size: .6875rem
    }
}

@media all and (max-width: 767px) and (max-width:414px) {
    .p-form-privacypolicy {
        font-size:2.93333vw
    }
}

@media all and (max-width: 767px) and (min-width:415px) {
    .p-form-privacypolicy {
        font-size:12.144px
    }
}

@media all and (min-width: 768px) {
    .p-form-privacypolicy__in {
        padding:25px 30px
    }
}

@media all and (max-width: 767px) {
    .p-form-privacypolicy__in {
        padding:15px 20px
    }
}

.p-form-privacypolicy h2,.p-form-privacypolicy h3,.p-form-privacypolicy h4,.p-form-privacypolicy h5,.p-form-privacypolicy h6 {
    font-weight: 400
}

@media all and (min-width: 1025px) {
    .p-form-privacypolicy h2,.p-form-privacypolicy h3,.p-form-privacypolicy h4,.p-form-privacypolicy h5,.p-form-privacypolicy h6 {
        font-size:13px;
        font-size: .8125rem
    }
}

@media all and (min-width: 768px) and (max-width:1024px) {
    .p-form-privacypolicy h2,.p-form-privacypolicy h3,.p-form-privacypolicy h4,.p-form-privacypolicy h5,.p-form-privacypolicy h6 {
        font-size:13px;
        font-size: .8125rem
    }
}

@media all and (max-width: 767px) {
    .p-form-privacypolicy h2,.p-form-privacypolicy h3,.p-form-privacypolicy h4,.p-form-privacypolicy h5,.p-form-privacypolicy h6 {
        font-size:11px;
        font-size: .6875rem
    }
}

@media all and (max-width: 767px) and (max-width:414px) {
    .p-form-privacypolicy h2,.p-form-privacypolicy h3,.p-form-privacypolicy h4,.p-form-privacypolicy h5,.p-form-privacypolicy h6 {
        font-size:2.93333vw
    }
}

@media all and (max-width: 767px) and (min-width:415px) {
    .p-form-privacypolicy h2,.p-form-privacypolicy h3,.p-form-privacypolicy h4,.p-form-privacypolicy h5,.p-form-privacypolicy h6 {
        font-size:12.144px
    }
}

.p-form-privacypolicy h2:first-child,.p-form-privacypolicy h3:first-child,.p-form-privacypolicy h4:first-child,.p-form-privacypolicy h5:first-child,.p-form-privacypolicy h6:first-child {
    margin-top: 0
}

.p-form-select {
    width: 100%;
    border: 1px solid #9db3cd;
    background-repeat: no-repeat;
    background-position: right 30px center;
    background-color: #f2f2f2;
    font-size: 1em;
    padding: 0 15px;
    color: #535657;
    font-family: YakuHanJP,Jost,Roboto,"Koburina Gothic W6 JIS2004","Koburina Gothic W3 JIS2004",FP-KoburinaGoStdN-W6,FP-KoburinaGoStdN-W3,YuGothic,"Yu Gothic Medium","Yu Gothic","Noto Sans Japanese","Source Sans Pro","Hiragino Kaku Gothic Pro","Meiryo",sans-serif;
}

@media all and (min-width: 768px) {
    .p-form-select {
        padding:25px 30px;
        /*background-image: url(../img/common/arrow_b.gif)*/
    }
}

@media all and (max-width: 767px) {
    .p-form-select {
        padding:15px 20px;
        /*background-image: url(../img/common/arrow_b_sp.gif);*/
        background-size: 12px 7px;
		height: 53px;
    }
}

.p-form-step {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    position: relative;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    margin-right: auto;
    margin-left: auto;
    border-top: 1px solid #caccd7
}

@media all and (min-width: 768px) {
    .p-form-step {
        width:360px;
        margin-bottom: 60px
    }
}

@media all and (max-width: 767px) {
    .p-form-step {
        width:200px;
        margin-bottom: 30px
    }
}

.p-form-step__item {
    width: 1px;
    line-height: 1;
    position: relative;
    z-index: 10;
    color: #666
}

.p-form-step__item:after,.p-form-step__item:before {
    content: '';
    display: block;
    border-radius: 50%;
    position: absolute
}

.p-form-step__item:before {
    z-index: 10
}

@media all and (min-width: 768px) {
    .p-form-step__item:before {
        width:11px;
        height: 11px;
        top: -6px;
        left: -5px
    }
}

@media all and (max-width: 767px) {
    .p-form-step__item:before {
        width:9px;
        height: 9px;
        top: -5px;
        left: -4px
    }
}

.p-form-step__item:after {
    background-color: rgba(29,78,137,.4)
}

@media all and (min-width: 768px) {
    .p-form-step__item:after {
        width:19px;
        height: 19px;
        top: -10px;
        left: -9px
    }
}

@media all and (max-width: 767px) {
    .p-form-step__item:after {
        width:15px;
        height: 15px;
        top: -8px;
        left: -7px
    }
}

.p-form-step__item-label {
    white-space: nowrap;
    margin-left: -1em
}

@media all and (min-width: 768px) {
    .p-form-step__item-label {
        margin-top:15px
    }
}

@media all and (max-width: 767px) {
    .p-form-step__item-label {
        margin-top:12px
    }
}

.p-form-step__item:after,.p-form-step__item:before {
    -webkit-transition-duration: .4s;
    transition-duration: .4s
}

.p-form-step__item:before {
    background-color: #caccd7;
    -webkit-transition-property: background-color;
    transition-property: background-color
}

.p-form-step__item:after {
    -webkit-transform: scale(0);
    transform: scale(0);
    -webkit-transition-property: -webkit-transform;
    transition-property: -webkit-transform;
    transition-property: transform;
    transition-property: transform,-webkit-transform
}

.p-form-step__item.is-current:before {
    background-color: #8c1c24
}

.p-form-step__item.is-current:after {
    -webkit-transform: scale(1);
    transform: scale(1)
}

@media all and (min-width: 768px) {
    .p-form-submit {
        display:-webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        -webkit-box-orient: horizontal;
        -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
        flex-direction: row-reverse
    }
    .p-form-back {
        display:-webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        -webkit-box-orient: horizontal;
        -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
        flex-direction: row-reverse;
		margin: 100px 0 25px;
    }
}

@media all and (max-width: 767px) {
    .p-form-submit {
        padding-right:20px;
        padding-left: 20px;
		text-align: center;
    }
}

@media all and (min-width: 768px) {
    .p-form-submit__btn-twin {
        width:41.66667%;
        margin-right: 5.55556%
    }

    .p-form-submit__btn-twin:first-child {
        margin-right: 0
    }
}

.p-form-thanks-message {
    text-align: center
}

@media all and (min-width: 768px) {
    .p-form-thanks-message {
        margin-bottom:50px;
        margin-right: 5.55556%;
        margin-left: 5.55556%
    }
}

@media all and (max-width: 767px) {
    .p-form-thanks-message {
        margin-bottom:25px
    }
}

@media all and (min-width: 768px) {
    .p-error-body {
        margin-bottom:150px
    }
}

@media all and (min-width: 1367px) {
    .p-error-body {
        margin-right:20%;
        margin-left: 20%
    }
}

@media all and (min-width: 1025px) and (max-width:1366px) {
    .p-error-body {
        margin-right:12.5%;
        margin-left: 12.5%
    }
}

@media all and (min-width: 768px) and (max-width:1024px) {
    .p-error-body {
        margin-right:12.5%;
        margin-left: 12.5%
    }
}

@media all and (max-width: 767px) {
    .p-error-body {
        position:relative;
        margin-bottom: 20px;
        margin-right: 10px;
        margin-left: 10px
    }
}

@media all and (max-width: 767px) {
    .p-error-body__wrap {
        padding:40px 30px;
        background-color: #fff
    }
}

@media all and (min-width: 1025px) {
    .p-error-body__message {
        font-size:22px;
        font-size: 1.375rem
    }
}

@media all and (min-width: 768px) and (max-width:1024px) {
    .p-error-body__message {
        font-size:22px;
        font-size: 1.375rem
    }
}

@media all and (max-width: 767px) {
    .p-error-body__message {
        font-size:15px;
        font-size: .9375rem
    }
}

@media all and (max-width: 767px) and (max-width:414px) {
    .p-error-body__message {
        font-size:4vw
    }
}

@media all and (max-width: 767px) and (min-width:415px) {
    .p-error-body__message {
        font-size:16.56px
    }
}

@media all and (min-width: 768px) {
    .p-error-body__message {
        margin-bottom:30px
    }
}

@media all and (max-width: 767px) {
    .p-error-body__message {
        margin-bottom:15px
    }
}

.p-error-number {
    height: 100vh;
    line-height: 1;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    pointer-events: none;
    position: absolute;
    z-index: 10;
    color: #053690;
    font-family: Zen Kaku Gothic New,Moon,serif;
    font-weight: 500
}

@media all and (min-width: 1367px) {
    .p-error-number {
        top:150px;
        right: 12.5%;
        font-size: 240px;
        font-size: 15rem
    }
}

@media all and (min-width: 1025px) and (max-width:1366px) {
    .p-error-number {
        top:160px;
        right: 10%;
        font-size: 210px;
        font-size: 13.125rem
    }
}

@media all and (min-width: 768px) and (max-width:1024px) {
    .p-error-number {
        top:160px;
        right: 10%;
        font-size: 210px;
        font-size: 13.125rem
    }
}

@media all and (max-width: 767px) {
    .p-error-number {
        top:-12vw;
        right: 30px;
        font-size: 80px;
        font-size: 5rem
    }
}

@media all and (max-width: 767px) and (max-width:414px) {
    .p-error-number {
        font-size:21.33333vw
    }
}

@media all and (max-width: 767px) and (min-width:415px) {
    .p-error-number {
        font-size:88.32px
    }
}

.p-error-number__digit {
    width: 1.2em;
    text-align: center;
    margin-right: -.5em;
    mix-blend-mode: multiply
}

.p-error-number__digit--0 {
    margin-right: -.8em
}










.input_textform.type1 table {
    width: 100%;
    min-height: 40px
}

.input_textform.type1 table tr {
    width: 100%
}

.input_textform.type1 table tr {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    align-items: flex-start
}

.input_textform.type1 table tr td {
    height: 40px
}

@media screen and (min-width: 767px) {
    .input_textform.type1 table tr td {
        width:calc( 50% - 5px )
    }
}

@media screen and (max-width: 767px) {
.input_textform.type1 table tr td {
        width:100%
    }
}

.input_textform.type1 table tr td:first-child {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
    background-color: #f2f2f2;
    font-size: 10px;
    padding: 0 15px
}

.input_textform.type1 table tr td:first-child input {
    width: calc( 100% - 50px );
    height: 40px;
    font-family: YakuHanJP,Jost,Roboto,"æ¸¸ã‚´ã‚·ãƒƒã‚¯ä½“",YuGothic,"æ¸¸ã‚´ã‚·ãƒƒã‚¯ Medium","Yu Gothic Medium","æ¸¸ã‚´ã‚·ãƒƒã‚¯","Yu Gothic","Noto Sans Japanese","Source Sans Pro","Hiragino Kaku Gothic Pro","ãƒ’ãƒ©ã‚®ãƒŽè§’ã‚´ Pro W3","ãƒ¡ã‚¤ãƒªã‚ª","Meiryo",sans-serif;
    font-size: 14px;
    font-weight: 600;
    text-align: center
}

@media screen and (max-width: 767px) {
    .input_textform.type1 table tr td:first-child input {
        width:calc( 100% - 40px )
    }
}

.input_textform.type1 table tr td:last-child {
    width: 100%;
    height: 50px;
    margin-top: 10px;
    position: relative
}

.input_textform.type1 table tr td:last-child button {
    width: 100%;
    height: 50px;
    background-color: #000;
    color: #FFF;
    text-align: center
}

.input_textform.type1 table tr td:last-child::before {
    content: "";
    display: block;
    width: 100%;
    height: 18px;
    background: url(../img/btn_buy.svg) center center no-repeat;
    background-size: contain;
    position: absolute;
    top: 16px;
    left: 0;
    z-index: 5;
    pointer-events: none
}

.input_textform.type1 table tr td:last-child::after {
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    background-color: #000;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 4;
    pointer-events: none;
    -moz-transition: all .4s ease;
    -o-transition: all .4s ease;
    -webkit-transition: all .4s ease;
    transition: all .4s ease
}

.input_textform.type1 table tr td:last-child:hover::after {
    background-color: #6184ab
}

.input_textform.type2 form>table {
    width: 100%;
    min-height: 40px
}

.input_textform.type2 form>table>tbody tr {
    width: 100%
}

.input_textform.type2 form>table>tbody tr td table {
    width: 100%;
    border-right: 1px solid #DDD;
    border-bottom: 1px solid #DDD;
    margin: 0 0 20px
}

.input_textform.type2 form>table>tbody tr td table tr td {
    width: 50%;
    border-top: 1px solid #DDD;
    border-left: 1px solid #DDD;
    padding: 7px 14px;
    font-size: 12px;
    text-align: left
}

.input_textform.type2 form>table>tbody tr td table tr td:last-child {
    background-color: #f2f2f2;
    text-align: center
}

.input_textform.type2 form>table>tbody>tr:last-child {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    align-items: flex-start
}

.input_textform.type2 form>table>tbody>tr:last-child td {
    height: 40px
}

@media screen and (min-width: 767px) {
    .input_textform.type2 form>table>tbody>tr:last-child td {
        width:calc( 50% - 5px )
    }
}

@media screen and (max-width: 767px) {
    .input_textform.type2 form>table>tbody>tr:last-child td {
        width:100%
    }
}

.input_textform.type2 form>table>tbody>tr:last-child td:first-child {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
    background-color: #f2f2f2;
    font-size: 10px;
    padding: 0 15px
}

.input_textform.type2 form>table>tbody>tr:last-child td:first-child input {
    width: calc( 100% - 50px );
    height: 40px;
    font-family: YakuHanJP,Jost,Roboto,"æ¸¸ã‚´ã‚·ãƒƒã‚¯ä½“",YuGothic,"æ¸¸ã‚´ã‚·ãƒƒã‚¯ Medium","Yu Gothic Medium","æ¸¸ã‚´ã‚·ãƒƒã‚¯","Yu Gothic","Noto Sans Japanese","Source Sans Pro","Hiragino Kaku Gothic Pro","ãƒ’ãƒ©ã‚®ãƒŽè§’ã‚´ Pro W3","ãƒ¡ã‚¤ãƒªã‚ª","Meiryo",sans-serif;
    font-size: 14px;
    font-weight: 600;
    text-align: center
}

@media screen and (max-width: 767px) {
    .input_textform.type2 form>table>tbody>tr:last-child td:first-child input {
        width:calc( 100% - 40px )
    }
}

.input_textform.type2 form>table>tbody>tr:last-child td:last-child {
    width: 100%;
    height: 50px;
    margin-top: 10px;
    position: relative
}

.input_textform.type2 form>table>tbody>tr:last-child td:last-child button {
    width: 100%;
    height: 50px;
    background-color: #000;
    color: #FFF;
    text-align: center
}

.input_textform.type2 form>table>tbody>tr:last-child td:last-child::before {
    content: "";
    display: block;
    width: 100%;
    height: 18px;
    background: url(../img/btn_buy.svg) center center no-repeat;
    background-size: contain;
    position: absolute;
    top: 16px;
    left: 0;
    z-index: 5;
    pointer-events: none
}

.input_textform.type2 form>table>tbody>tr:last-child td:last-child::after {
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    background-color: #000;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 4;
    pointer-events: none;
    -moz-transition: all .4s ease;
    -o-transition: all .4s ease;
    -webkit-transition: all .4s ease;
    transition: all .4s ease
}

.input_textform.type2 form>table>tbody>tr:last-child td:last-child:hover::after {
    background-color: #6184ab
}



	
input.wpcf7-submit {
padding:2.5em 8em !important;
background-color: #667f9b !important;
color: #f2f2f2 !important;
border: none !important;
font-size: 14px !important;
margin:0px !important;
letter-spacing: 0.15em;
width: 350px;
}

@media screen and (max-width: 767px) {	
input.wpcf7-submit {
width: 70vw;
}
}
.contact-kakunin {
padding:2.5em 8em !important;
background-color: #667f9b !important;
color: #f2f2f2 !important;
border: none !important;
font-size: 14px !important;
margin:0px !important;
letter-spacing: 0.15em;
width: 70vw;
text-align: center;
justify-content: center;
}

.wpcf7-spinner{
display: none;

	}

	
	
@media all and (max-width: 767px) {
input.wpcf7-submit {
padding:1em !important;
	}
.contact-kakunin {
padding:1em !important;
	}
	}	
	
.p-form-center{
	text-align: center;
	margin-bottom: 35px;
	font-size: 0.88em;
	}
	
input[type="text"]:focus{
	outline:3px solid #fcf69f;
	outline-offset: -4px;
	transition: all 0.1s ease-in-out;
}

input[type="email"]:focus{
	outline:3px solid #fcf69f;
	outline-offset: -4px;
	transition: all 0.1s ease-in-out;
}

input[type="tel"]:focus{
	outline:3px solid #fcf69f;
	outline-offset: -4px;
	transition: all 0.1s ease-in-out;
}
	
textarea:focus{
	outline:3px solid #fcf69f;
	outline-offset: -4px;
	transition: all 0.1s ease-in-out;
}	
select:focus{
	outline:3px solid #fcf69f;
	outline-offset: -4px;
	transition: all 0.1s ease-in-out;
}	

	
	
.wpcf7 .screen-reader-response {
	position: absolute;
	overflow: hidden;
	clip: rect(1px, 1px, 1px, 1px);
	clip-path: inset(50%);
	height: 1px;
	width: 1px;
	margin: -1px;
	padding: 0;
	border: 0;
	word-wrap: normal !important;
}

.wpcf7 form .wpcf7-response-output {
	margin: 2em 0.5em 1em;
	padding: 0.2em 1em;
	border: 2px solid #9db3cd; /* Blue */
}

.wpcf7 form.init .wpcf7-response-output,
.wpcf7 form.resetting .wpcf7-response-output,
.wpcf7 form.submitting .wpcf7-response-output {
	display: none;
}

.wpcf7 form.sent .wpcf7-response-output {
	border: none;
	display: flex;
    justify-content: center;
    align-items: center;
    color: #667f9b ;
	font-weight: 600;
	background-color: rgba(252, 246, 159, 0.5);
	background-blend-mode: lighten;,0.8);
	animation-name:fadeUpAnime;
	animation-duration:1.5s;
	animation-fill-mode:forwards;
	opacity:0;
	}


.wpcf7 form.failed .wpcf7-response-output,
.wpcf7 form.aborted .wpcf7-response-output {
	border-color: #8C1C24; /* Red */
}

.wpcf7 form.spam .wpcf7-response-output {
	border: none;
	display: flex;
    justify-content: center;
    align-items: center;
    color: #667f9b ;
	font-weight: 600;
	background-color: rgba(252, 246, 159, 0.5);
	background-blend-mode: lighten;,0.8);
	animation-name:fadeUpAnime;
	animation-duration:1.5s;
	animation-fill-mode:forwards;
	opacity:0;
	}
	


.wpcf7 form.invalid .wpcf7-response-output,
.wpcf7 form.unaccepted .wpcf7-response-output,
.wpcf7 form.payment-required .wpcf7-response-output {
	border-color: #fcf69f; /* Yellow */
	border: none;
	display: flex;
    justify-content: center;
    align-items: center;
    color: #e35d5d;
	font-weight: 600;
	background-color: rgba(252,246,159,0.5);
	background-blend-mode: lighten;,0.8);
	animation-name:fadeUpAnime;
	animation-duration:1.5s;
	animation-fill-mode:forwards;
	opacity:0;
	}


.wpcf7-form-control-wrap {
	position: relative;
}

.wpcf7-not-valid-tip {
	color: #e35d5d; /* Red */
	font-size: 1em;
	font-weight: normal;
	display: block;
}

.use-floating-validation-tip .wpcf7-not-valid-tip {
	position: relative;
	top: -2ex;
	left: 1em;
	z-index: 100;
	border: 1px solid #e35d5d;
	background: #fff;
	padding: .2em .8em;
	width: 24em;
}

.wpcf7-list-item {
	display: inline-block;
	margin: 0 0 0 1em;
}

.wpcf7-list-item-label::before,
.wpcf7-list-item-label::after {
	content: " ";
}

.wpcf7-spinner {
	visibility: hidden;
	display: inline-block;
	background-image:url(../img/load_kuma5.gif)!important;
    background-color: transparent;
    background-repeat: no-repeat;
	background-color: transparent;
    background-size: 60px;
	opacity: 1;
    width: 60px;
    height: 55px;
	border: none;
	border-radius: 0;
	padding: 0;
	margin: 0 24px;
	position: absolute;
	top: 150px;
    left: 46%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
	animation-name:fadeUpAnime;
	animation-duration:1.5s;
	animation-fill-mode:forwards;
	opacity:0;
}

	
@keyframes fadeUpAnime{
	  from {
		opacity: 0;
	  transform: translateY(20px);
	  }

	  to {
		opacity: 1;
	  transform: translateY(0);
	  }
}


form.submitting .wpcf7-spinner {
	visibility: visible;
}

.wpcf7-spinner::before {
	content: '';
	position: absolute;
	top: 0px;
	left: 0px;
	width: 0px;
	height: 0px;
	border: none;
	border-radius: 100%;
	transform-origin: 8px 8px;
	animation-name: spin;
	animation-duration: 1000ms;
	animation-timing-function: linear;
	animation-iteration-count: infinite;
}

@media (prefers-reduced-motion: reduce) {
	.wpcf7-spinner::before {
		animation-name: blink;
		animation-duration: 2000ms;
	}
}

@keyframes spin {
	from {
		transform: rotate(0deg);
	}

	to {
		transform: rotate(360deg);
	}
}

@keyframes blink {
	from {
		opacity: 0;
	}

	50% {
		opacity: 1;
	}

	to {
		opacity: 0;
	}
}

.grecaptcha-badge { visibility: hidden; }


select, input[type="text"], input[type="submit"] {
       box-sizing: border-box;
}



.p-form-frame__head{
    font-family: YakuHanJP,Jost,Roboto,"Koburina Gothic W6 JIS2004","Koburina Gothic W3 JIS2004",FP-KoburinaGoStdN-W6,FP-KoburinaGoStdN-W3,YuGothic,"Yu Gothic Medium","Yu Gothic","Noto Sans Japanese","Source Sans Pro","Hiragino Kaku Gothic Pro","Meiryo","sans-serif";
    font-size: 16px!important;
    font-weight: 600!important;
    letter-spacing: 0.05em!important;
    line-height: 2.2!important;
    text-align: left!important;
    margin-top: 25px!important;
    position: relative;
    -moz-transform: translate(0, 10px);
    -ms-transform: translate(0, 10px);
    -webkit-transform: translate(0, 10px);
    transform: translate(0, 10px);
    -moz-transition: all 1s ease 1.5s;
    -o-transition: all 1s ease 1.5s;
    -webkit-transition: all 1s ease;
    -webkit-transition-delay: 1.5s;
    transition: all 1s ease 1.5s
}

.p-form-frame__head0{
    margin-bottom: 25px!important;
}

.p-form-frame__head2{
    margin-top: 0px !important;
}
.p-form-frame__head3{
	margin-top: 0px !important;
	margin-bottom: 25px !important;
}
.p-form-center {
    font-size: 0.95em;
}



.confirm_area,
.thanks_area {
display: none;
}
.wpcf7-response-output{
display: none;
}

.bl_formConfirm,
.wpcf7-response-output,
.bl_formConfirm .wpcf7-spinner {
display: none;
}


.kakunin {
  overflow: hidden;
}
.kakunin1 {
  float: left;
  width: 220px;
}
.kakunin2 {
	float: left;
	width: auto;
	font-family: YakuHanJP,Jost,Roboto,"Koburina Gothic W6 JIS2004","Koburina Gothic W3 JIS2004",FP-KoburinaGoStdN-W6,FP-KoburinaGoStdN-W3,YuGothic,"Yu Gothic Medium","Yu Gothic","Noto Sans Japanese","Source Sans Pro","Hiragino Kaku Gothic Pro","Meiryo","sans-serif";
	font-size: 16px!important;
	font-weight: 600!important;
	letter-spacing: 0.05em!important;
	line-height: 2.2!important;
	text-align: left!important;
	margin: 25px 0 15px 0!important;
	position: relative;
	-moz-transform: translate(0, 10px);
	-ms-transform: translate(0, 10px);
	-webkit-transform: translate(0, 10px);
	transform: translate(0, 10px);
	-moz-transition: all 1s ease 1.5s;
	-o-transition: all 1s ease 1.5s;
	-webkit-transition: all 1s ease;
	-webkit-transition-delay: 1.5s;
	transition: all 1s ease 1.5s
}






input[type="checkbox"] {
  opacity: 0;
  position: absolute;
}
input[type="radio"] {
  opacity: 0;
  position: absolute;
}

.wpcf7-list-item-label,
.wpcf7-list-item-label::before {
  transition: 0.25s all ease;
}

.wpcf7-list-item-label::before {
  /*チェックボックスのデザイン*/
  border: 1px solid #667f9b;
  content: "";
  display: inline-block;
  height: 30px;
  margin-right: 10px;
  position: relative;
  top: -1px;
  vertical-align: middle;
  width: 30px;
  -webkit-transition: all 250ms ease;
  transition: all 250ms ease;
}
.wpcf7-checkbox input[type="checkbox"]:checked + .wpcf7-list-item-label::after {
  /*チェックアイコン*/
    background: url(../img/coffee_little.png) no-repeat center;
    background-size: contain;
    content: "";
    display: block;
    height: 42px;
    left: 3.6px;
    position: absolute;
    top: -14px;
    width: 25px;
}
.wpcf7-checkbox input[type="checkbox"]:checked + .wpcf7-list-item-label::before {
  background-color:#fff;
  box-shadow: inset 0 0 0 2px #fff;
}
.wpcf7-radio input[type="radio"]:checked + .wpcf7-list-item-label::after {
  /*チェックアイコン*/
    background: url(../img/coffee_little.png) no-repeat center;
    background-size: contain;
    content: "";
    display: block;
    height: 42px;
    left: 3.6px;
    position: absolute;
    top: -14px;
    width: 25px;
}
.wpcf7-radio input[type="radio"]:checked + .wpcf7-list-item-label::before {
  background-color:#f2f2f2;
  box-shadow: inset 0 0 0 2px #f2f2f2;
}



span.wpcf7-form-control-wrap .wpcf7-form-control.wpcf7-checkbox input[type=checkbox]{
	position:absolute;
}

span.wpcf7-form-control-wrap .wpcf7-form-control.wpcf7-checkbox input[type=checkbox],span.wpcf7-form-control-wrap .wpcf7-form-control.wpcf7-radio input[type=radio] {
	width: 31px!important;
    height: 33px!important;
    z-index: 10!important;
}


.wpcf7-radio .wpcf7-list-item ,.wpcf7-checkbox .wpcf7-list-item{
	position: relative
}




.ui-state-active{background: #7b98ba}
.ui-datepicker{width: 700px; font-family: 'Monda', sans-serif; text-align: center; background: #667f9b; margin: 0 0 10px 0}
.ui-datepicker a{color: #fff;}
.ui-datepicker-calendar{width: 100%;}
.ui-datepicker-group{margin: 0 0 10px 0;background: #667f9b;}
.ui-datepicker-header {color: #535657;padding: 15px;text-transform: uppercase;letter-spacing: 3px;}
.ui-datepicker-calendar thead th{color: #fff; padding:10px;}
.ui-datepicker-calendar th,.ui-datepicker-calendar td{font-size: 14px; color: #378F8F; text-align: center;}
.ui-datepicker-calendar td span{display: block; padding:10px;}
.ui-datepicker-calendar td a{color: #fff; display: block; padding:10px;}
.ui-datepicker-title{clear: both;}
.ui-datepicker-prev{float: left;}
.ui-datepicker-next{float: right;}
.ui-state-active, .ui-widget-content .ui-state-active, .ui-widget-header .ui-state-active, a.ui-button:active, .ui-button:active, .ui-button.ui-state-active:hover {
    border: 1px solid #667f9b;
    background: #667f9b;
    font-weight: normal;
    color: #fff;
}






