@charset "utf-8";

.wpcf7-list-item {
	display: block!important;
	line-height: 1.8em;
}
.custom-wpcf7c-confirmed th {
	background: #eee!important;
}
.custom-wpcf7c-confirmed td {
	background: #eee!important;
}
.custom-wpcf7c-confirmed td input {
	background-color: #fff!important;
}
.custom-wpcf7c-confirmed td .wpcf7-form-control.wpcf7-text.wpcf7-validates-as-required.middle.wpcf7c-conf {
	background-color: #fff!important;
}
.custom-wpcf7c-confirmed td textarea {
	background-color: #fff!important;
}
.wpcf7c-elm-step2.text {
	font-weight: bold;
	font-size: 20px!important;
}
#contactbtn {
    display: none!important;
}
input.wpcf7c-conf,
textarea.wpcf7c-conf {
  border: 0;
  padding: 0;
  background: #fff;
}
.wpcf7-text:-webkit-autofill {
  box-shadow: 0 0 0 1000px #fff inset;
}
.visitform .wpcf7-list-item.last {
   display:block;
   width: 100%!important;
}
.visitform .left {
   margin-left:-20px;
   display:block;
}
/*===============================================
●画面の横幅が769px以上
===============================================*/
@media print, screen and (min-width : 769px ){
#pc------------------------------------------- {
}
#catch {
	background-image: url("../images/pc/contact/m_bg.png");
}




#contact {
	margin-bottom: 100px;
}
#contact h2 {
	text-align: center;
	font-size: 25px;
	font-weight: bold;
	color: #003399;
	line-height: 1.4em;
}
#contact .inner {
	padding: 40px;
	background-color: #F4F4F7;
	margin-top: 40px;
	width: 800px;
	margin-left: auto;
	margin-right: auto;
}
#contact h3 {
	font-size: 20px;
	border-bottom: 1px solid #003399;
	padding-bottom: 5px;
	margin-bottom: 10px;
	text-align: center;
	font-weight: bold;
	color: #003399;
}
#contact h4 {
	margin-top: 40px;
	margin-bottom: 10px;
	text-align: left;
	font-weight: bold;
	color: #003399;
}
#contact .inner li a,
#contact .inner p a
{
	color: #003399;
}
#contact .inner+p {
	text-align: center;
	margin-top: 60px;
	font-size: 20px;
	margin-bottom: 10px;
}
#contact .inner+p+p span {
	color: #FF0000;
}
#contact {
	width: 1000px;
	margin-left: auto;
	margin-right: auto;
	text-align: left;
}
#contact table {
    border-top: 1px solid #232583;
	margin-top: 10px;
}
#contact table th {
    border-left: 1px solid #232583;
    border-bottom: 1px solid #232583;
    font-size: 19px;
    font-weight: normal;
    padding-top: 15px;
    padding-bottom: 15px;
    padding-left: 10px;
    width: 240px;
    background-color: rgba(234,235,244,1.00);
}
#contact table th span {
    color: #C63F3F;
}
#contact table td {
    border-right: 1px solid #232583;
    border-bottom: 1px solid #232583;
    font-size: 19px;
    padding-top: 15px;
    padding-bottom: 15px;
    padding-left: 10px;
}
#contact table td select {
    height: 40px;
    font-size: 18px;
    padding-left: 10px;
    width: 250px;
}
#contact table td input[type="text"],
#contact table td input[type="email"],
#contact table td input[type="tel"]
{
    border: 1px solid #cfcfcf;
    width: 440px;
    height: 36px;    
}
#contact table td input.middle {
    width: 220px!important;
}
#contact table td input.small {
    width: 148px;
}
#contact table td ul li:first-child {
    margin-bottom: 15px;
}
#contact table td textarea {
    width: 96%;
    border: 1px solid #cfcfcf;
    height: 320px;
}
#contact p input {
    width: 422px;
    height: 60px;
    margin-left: auto;
    margin-right: auto;
    display: block;
    margin-top: 30px;
    font-size: 23px;
    border: 1px solid #CFCFCF;
    background-color: #fff;
    line-height: 58px;
    cursor: pointer;
}





#telcontact {
	width: 600px;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 150px;
}
#telcontact h2 {
	font-size: 24px;
	margin-bottom: 20px;
	color: #003399;
	font-weight: bold;
}
#telcontact table {
	border-bottom: 1px solid #003399;
	border-right: 1px solid #003399;
}
#telcontact table+table {
	margin-top: 15px;
	margin-bottom: 40px;
}
#telcontact th {
	background-color: #EAEBF4;
	font-weight: 500;
	color: #003399;
	border-top: 1px solid #003399;
	border-left: 1px solid #003399;
	font-size: 16px;
	font-family: 'Noto Sans JP', sans-serif;
	width: 50%;
}
#telcontact td {
	border-top: 1px solid #003399;
	border-left: 1px solid #003399;
	font-size: 14px;
	width: 50%;
	font-family: 'Noto Sans JP', sans-serif;
}
#telcontact td a {
	color: #000;
	text-decoration: none;
}
#telcontact h3 {
	color: #003399;
	font-size: 16px;
	font-weight: bold;
	margin-top: 20px;
}
#telcontact h3+p {
	font-size: 14px;
	line-height: 1.6em;
}
#telcontact p+h2 {
	margin-top: 60px;
}
.wpcf7c-elm-step2.text {
    text-align: center;
    font-size: 18px;
    margin-bottom: 10px;
}
form.wpcf7-form{
	margin-top: -100px;
	padding-top: 100px;
}
/*
 * 入力時に付加するclass
 */
form.wpcf7-form-mode-edit .wpcf7c-elm-step2.text{
	display: none;
}

/*
 * 確認時に付加するclass
 */
form.wpcf7-form-mode-confirm{
	
}
.kibou select {
    width: 70px!important;
    margin-right: 3px;
}
.kibou input {
    width: 150px!important;
}





#contact.finish h2 {
	margin-bottom: 40px;
}
#contact.finish p {
	display: flex;
	justify-content: center;
}
}



/*===============================================
●画面の横幅が768pxまで
===============================================*/
@media screen and (max-width:768px){
	
/*===============================================
●sp-tablet
===============================================*/
#sptablet------------------------------------------- {
}
#catch {
	background-image: url("../images/pc/contact/m_bg.png");
}




#contact h2 {
	text-align: center;
	font-size: 5vw;
	font-weight: bold;
	color: #003399;
}
#contact .inner {
	padding: 5vw;
	background-color: #F4F4F7;
	margin-top: 5vw;
	width: 90%;
	margin-left: auto;
	margin-right: auto;
}
#contact h3 {
	font-size: 4.5vw;
	border-bottom: 1px solid #003399;
	padding-bottom: 5px;
	margin-bottom: 10px;
	text-align: center;
	font-weight: bold;
	color: #003399;
}
#contact h4 {
	margin-top: 5vw;
	margin-bottom: 10px;
	text-align: left;
	font-weight: bold;
	color: #003399;
}
#contact .inner li a,
#contact .inner p a
{
	color: #003399;
}
#contact .inner+p {
	text-align: center;
	margin-top: 10vw;
	font-size: 4vw;
	margin-bottom: 10px;
}
#contact .inner+p+p span {
	color: #FF0000;
}
#contact {
	width: 90%;
	margin-left: auto;
	margin-right: auto;
	text-align: left;
	margin-bottom: 15vw;
}
#contact table {
    border-top: 1px solid #232583;
}
#contact table th {
    border-left: 1px solid #232583;
    border-right: 1px solid #232583;
    font-weight: normal;
    padding-top: 10px;
    padding-bottom: 10px;
    padding-left: 10px;
    background-color: rgba(234,235,244,1.00);
    display: block;
}
#contact table th span {
    color: #C63F3F;
}
#contact table td {
    border-right: 1px solid #232583;
    border-left: 1px solid #232583;
    border-bottom: 1px solid #232583;
    padding-top: 15px;
    padding-bottom: 15px;
    padding-left: 10px;
    display: block;
}
#contact table td input[type="text"],
#contact table td input[type="email"],
#contact table td input[type="tel"]
{
    border: 1px solid #cfcfcf;
    height: 30px;
    width: 97%;
}
#contact table td input.middle {
    width: 20%;
}
#contact table td input.small {

}
#contact table td ul li:first-child {
    margin-bottom: 15px;
}
#contact table td textarea {
    width: 96%;
    border: 1px solid #cfcfcf;
    height: 320px;
}
#contact p input {
    height: 50px;
    margin-left: auto;
    margin-right: auto;
    display: block;
    margin-top: 30px;
    font-size: 16px;
    border: 1px solid #CFCFCF!important;
    background-color: #fff;
	color: #000!important;
    background-image: url(../images/arrow02.png);
    background-repeat: no-repeat;
    background-position: right 20px center;
    line-height: 50px;
    cursor: pointer;
    width: 100%;
}





#telcontact {
	width: 90%;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 20vw;
}
#telcontact h2 {
	font-size: 6vw;
	margin-bottom: 3vw;
	color: #003399;
	font-weight: bold;
}
#telcontact table {
	border-bottom: 1px solid #003399;
	border-right: 1px solid #003399;
}
#telcontact table+table {
	margin-top: 5vw;
}
#telcontact th {
	background-color: #EAEBF4;
	font-weight: 500;
	color: #003399;
	border-top: 1px solid #003399;
	border-left: 1px solid #003399;
	font-family: 'Noto Sans JP', sans-serif;
	width: 50%;
}
#telcontact td {
	border-top: 1px solid #003399;
	border-left: 1px solid #003399;
	font-family: 'Noto Sans JP', sans-serif;
	padding-top: 1vw;
	padding-bottom: 1vw;
	font-size: 3.5vw;
	width: 50%;
}
#telcontact td a {
	color: #000;
	text-decoration: none;
}
#telcontact h3 {
	color: #003399;
	font-size: 4vw;
	font-weight: bold;
	margin-top: 20px;
}
#telcontact h3+p {
	font-size: 3.5vw;
	line-height: 1.6em;
}
#telcontact p+h2 {
	margin-top: 10vw;
}
.wpcf7c-elm-step2.text {
    text-align: center;
    font-size: 18px;
    margin-bottom: 10px;
}
form.wpcf7-form{
	margin-top: -100px;
	padding-top: 100px;
}
.wpcf7-submit {
font-size: 17px;
padding: 3px 25px;
background: #e9e9e9;
color: #363B3F;
border-radius: 4px;
-webkit-border-radius: 4px;
-moz-border-radius: 4px;
border-top: none;
border-right: none;
border-left: none;
border-bottom: solid 4px #dcdcdc;
}

.wpcf7-submit:hover {
background-color: #dcdcdc;
color: #dc143c;
}
.kibou select {
    width: 45px!important;
    margin-right: 1px;
}
.kibou input {
    width: 43.2vw!important;
    text-align: center;
}



#contact.finish h2 {
	margin-bottom: 5vw;
}
}



/*===============================================
●画面の横幅が400pxまで
===============================================*/
@media screen and (max-width:400px){
/*===============================================
●sp400
===============================================*/
#sp400------------------------------------------- {
}
}



/*===============================================
●画面の横幅が320pxまで
===============================================*/
@media screen and (max-width:320px){
/*===============================================
●sp320
===============================================*/
#sp320------------------------------------------- {
}
}



/*===============================================
●画面の横幅が481pxから768pxまで
===============================================*/
@media screen and (min-width:481px) and (max-width:768px) {
/*===============================================
●tablet
===============================================*/
#tab------------------------------------------- {
}
}