@charset "utf-8";

/***************************************************************************************************************************

 お問い合わせ

***************************************************************************************************************************/

.contact-form  .tbl.ptn-b>tbody>tr>th {
    white-space: nowrap;
    width: 20%;
    padding-right: 1em;
}


.contact-form  .mark{
	color:#eb6100;
}

.contact-form .red{
	color:#ff0000;
}
.contact-form .uline{
	color:#1f22cc;
	text-decoration: underline;
}
.contact-form .uline:hover{
	text-decoration: none;
}

.contact-form{
	padding-top: 30px;
}


.contact-form .exp{
	text-align: center;
}

/*フォームラベル*/

.contact-form .block-label{
	display: block;
	margin-bottom: 10px ;
}

.contact-form .before-line{ display: inline-block; padding-right: 1.5em;}
.contact-form .bottom-line{display: block; padding-right: 1em;}
.contact-form .address .before-line{
	width: 120px;
}


/*インプット*/

.contact-form input[type="text"],
.contact-form input[type="date"]{
	display: inline-block;
	height: 20px;
	width: 100%;
	font-size: 1.3rem;
	border:1px solid #a0a0a0;
	background :#ffffff;
	line-height: 1em;
	padding: 0;
	vertical-align: middle;
}

.contact-form input[type="file"]{
	display: inline-block;
	width: 100%;
	border:none;
	background :#ffffff;
	line-height: 1.5em;
}



.contact-form *::-webkit-input-placeholder,
.contact-form *:placeholder-shown {
    color: #888888;
}


.contact-form input:focus{outline: none;}
.contact-form textarea:focus{outline: none;}

.contact-form textarea{
	display: block;
	width: 100%;
	height: 150px;
	border:1px solid #a0a0a0;
	padding:0px;
}


.contact-form input.text45{max-width:45px;}
.contact-form input.text70{max-width:70px;}
.contact-form input.text95{max-width:95px;}
.contact-form input.text280{max-width:280px;}
.contact-form input.text400{max-width:400px;}
.contact-form input.text415{max-width:415px;}
.contact-form input.text498{max-width:498px;}
.contact-form textarea.height100{height:150px;}


/*オプションリセット*/
.contact-form select {

/*  -moz-appearance: none;
  -webkit-appearance: none;
  appearance: none;*/
  border-radius: 0;
/*  width: 100%;*/
  /*border:1px solid #a0a0a0;*/
  margin: 0;
  padding: 0;
  background: none transparent;
  vertical-align: middle;
  font-size: inherit;
  color: inherit;
  box-sizing: content-box;
  -moz-appearance: none;
  text-indent: 0.01px;
  text-overflow: '';
  /*height: 100%;*/
  height: 20px;
 -webkit-box-sizing: border-box;
 -moz-box-sizing: border-box;
 box-sizing: border-box;
 padding-left:1em;
}

.contact-form select.std{
	max-width: 200px;
}


	/*IEリセット*/
/*	.contact-form select::-ms-expand {
	    display: none;
	}

.contact-form select {
	padding:20px 35px;
}
	.contact-form select.mgn {
		padding:20px;
	}


.contact-form .select-label{
	position: relative;
	display: inline-block;
	width: 100%;
	color: #888888;
	border:1px solid #e6e6e6;
	background :#ffffff;
	height: 60px;
}
.contact-form .select-label.bk{
	color: #000000;
}

.contact-form .select-label::after{
	content:"";
	position: absolute;
	display: block;
	width: 100%;
	height: 100%;
	top:50%;
	-webkit-transform: translate(0, -50%);
	transform: translate(0, -50%);
	right:20px;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 10px 6px 0 6px;
	border-color: #000 transparent transparent transparent;
	pointer-events: none;
}
*/


.contact-form select:focus{outline: none;}

.contact-form #sub_bo{
	margin-bottom: 40px;
	text-align: center;
}

/*チェックボックスカスタム*/
.check-group{
	text-align: center;
}


.check-group label{
	display: inline-block;
	margin-right: 25px;
	padding:8px 0;
	line-height: 1em;
}

.check-group .check-input{
  display: none;
}


.check-group .name-tag{
  padding-left: 1.8em;
  position:relative;
  line-height: 1em;
}

/*チェック枠*/
.check-group .name-tag::before{
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 14px;
  height: 14px;
  position: absolute;
  top: 50%;
  -webkit-transform: translate(0, -50%);
  transform: translate(0, -50%);
  background: #dedede;
}

/*チェック*/
.check-group .check-input:checked + .name-tag::after{
	content: "";
	display: block;
	position: absolute;
	top: 50%;
	margin-top: -2px;
	left:3px;
	-moz-transform: translate(0, -50%) rotate(-45deg);
	-ms-transform: translate(0, -50%) rotate(-45deg);
	-webkit-transform: translate(0, -50%) rotate(-45deg);
	transform: translate(0, -50% ) rotate(-45deg);
	width: 8px;
	height: 4px;
	border-left:2px solid #000;
	border-bottom:2px solid #000;
	animation: formfade 0.5s ease;
}

.check-group.ptn01 .name-tag::before{
	background: #fff; border:1px solid #959595;
}

/*ラジオボックスカスタム*/
.radio-group.ptn01{
	margin-top: 20px;
}


.radio-group label{
	line-height: 17px;
	display: inline-block;
}

.radio-group .radio-input{
	display: none;
}
.radio-group .name-tag{
	position:relative;
	display: inline-block;
	padding-left: 2em;
	line-height: 18px;
}
.radio-group.ptn01 .name-tag{
	margin-right: 40px;
}


/*check枠*/
.radio-group .name-tag::before{
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 16px;
  height: 16px;
  background: #fff;
  border:1px solid #959595;
  -webkit-border-radius: 50%;
  border-radius: 50%;
}


.radio-group .radio-input:checked + .name-tag::before{
	background: #0099ff;
}

/*check ドット*/
.radio-group .radio-input:checked + .name-tag::after{
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  margin-top: -4px;
  left:5px;
  border:1px solid #fff;
  width: 6px;
  height: 6px;
  background: #ffffff;
  -webkit-border-radius: 50%;
  border-radius: 50%;
  animation: formfade 0.5s ease;
  opacity: 1;
}


@keyframes formfade{
	 0% { opacity: 0; }
	 100% {opacity: 1; }
}

.contact-form .submit-box {
	padding: 30px 0;
	text-align: center;
}

.contact-form .submit-box label {
	display: block;
	margin-bottom: 30px;
}


.contact-form .submit-box .btn{
	width:150px;
	padding: 1.4rem 0;
	margin:0 2vw; 
	color: #FFF;
	border: none;
	font-weight: bold;
}

.contact-form .close-box{
	width: 100%;
	padding: 0 2rem 1rem;
	text-align: right;
}

.contact-form .submit-box .submit-btn{ background: #eb6100;}
.contact-form .submit-box .reset-btn{ background: #aaaaaa;}

/***************************************************************************************************************************

 エントリー

***************************************************************************************************************************/
.contact-form .free{
	color:#000098;
}

.contact-form .contact-heading{
	font-size: 	1.6rem;
	margin-bottom: 0.6em;
}

.contact-form .top-caption{
	font-size: 1.4rem;
	line-height: 1.5em;
	text-align: center;
}

.contact-form .tel-box{
	display: flex;
	font-size: 	1.6rem;
	padding: 0.8em 2em 0.8em 2em;
	margin: 30px auto;
	border: 5px solid #453275;
	font-weight: 	bold;
}


.contact-form .tel-label{
	font-size: 	2.2rem;
	padding-right: 0px;
}
.contact-form .tel-num{
	padding-left:10px;
	letter-spacing: 0.2em;
	font-weight: 	bold;
	font-family: Arial, "Helvetica Neue", Helvetica, sans-serif;
	font-size: 	2.4rem;
}


.contact-form .top-radio-box .radio-group .block{
	padding: 0 2vw;
}

.contact-form .top-radio-box{
	display: block;
	font-size: 	1.6rem;
	padding: 0.8em 0 0.6em 0;
	margin-bottom: 30px;
}

.contact-form .top-radio-box.bdr-red{
	border: 5px solid #eb436b;
}
.contact-form .top-radio-box.bdr-navy{
	border: 5px solid #453275;
}

.contact-form .top-radio-box p{
	text-align: center;
	display: block;
	font-weight: bold;
	margin-bottom: 10px;
}

.contact-form .top-radio-box .radio-group{
	text-align: center;
}

.contact-form .submit-box .submit-btn.ptn-red{
	background: #eb436b;
}

.contact-form .submit-box .submit-btn.ptn-blue{
	background: #00a0e9;
}


.contact-form .schl-career>li{
	padding: 5px 0;
}

.contact-form .schl-career>li>.name-tag{
	padding-right:1em;
}

/**************************************************************
* 確認
***************************************************************/

.contact-form  .confirm .submit-area{
	text-align: center;
	display: block;
}
.contact-form  .confirm .submit-area>div{
	display: inline-block;
	margin:0 3vw;
}
.contact-form  .confirm .submit-area .submit-a{
	width: 220px;
}





/**************************************************************
* 完了
***************************************************************/

.complete {
	min-height: 30vh;
}

.complete .para-lg{
	text-align: center;
	color:#0068b7;
	line-height: 1.5em;
	font-size: 1.8rem;
	margin-bottom: 25px;
}

.complete p{
	max-width: 600px;
	margin:0 auto;
}

/***********************************************************************************************************************
* リサイズ  980px以下から
**********************************************************************************************************************/
@media screen and (max-width:980px){

.contact-form input.text227 {
    max-width: 200px;
}

.contact-form .tbl-form>tbody>tr>th {
    padding: 24px 0;
    width: 181px;
}



}/*980px完了*/


/***********************************************************************************************************************
* リサイズ  825px以下から
**********************************************************************************************************************/
@media screen and (max-width:825px){

.contact-form .contact-heading {
    font-size: 1.3rem;
    margin-bottom: 0.6em;
}

.contact-form .exp {
    margin-bottom: 0;
}

.contact-form  .tbl.ptn-b>tbody>tr>th {
    width: 100%;
    padding-right: 0em;
}

.contact .main-head {
    position: relative;
    padding-top: 20%;
}


.contact .main-contents .main-section {
    /* padding: 30px 0; */
    margin-bottom: 25px;
}
.contact-form .tel-box{
	justify-content: center;
}

.contact-form .tel-num {
    font-size: 1.5rem;
}
.contact-form .tel-label {
    font-size: 1.5rem !important;
    padding-right: 0px;
}

.contact-form .tel-box {
    font-size: 1.6rem;
    padding: 0.5em 2em 0.5em 2em;
    margin: 10px auto;
}

.contact-form  .tbl.ptn-b>tbody>tr>th {
    padding: 0.5em 1em;
}


	.contact-form {
	    padding-top: 0px;
	}
	.contact-form .tbl-form>tbody,
	.contact-form .tbl-form>tbody>tr,
	.contact-form .tbl-form>tbody>tr>th,
	.contact-form .tbl-form>tbody>tr>td{
		width: 100%;
		display: block;
		border-bottom: none;
	}

	.contact-form .tbl-form>tbody>tr>th {
	    padding: 20px 0 0;
	}

	.contact-form .tbl-form>tbody>tr>td{
		width: 100%;
		display: block;
		padding-top: 0;
		padding-bottom: 20px;
		padding-left: 0;
		border-bottom: 1px dashed #cbcbcb;
	}

	.contact-form .inline-wrap .input-label{
		display: block;
		margin-bottom: 10px;
	}

.contact-form input.text227 {
    max-width: inherit;
    width: 100%;
}

.contact-form .before-line,
.contact-form .inter-line {
	display: block;
    padding-left: 0;
    padding-right: 0;
    margin-bottom: 10px;
}
.contact-form .after-line {
	margin-top:10px;
}

.contact-form .radio-group.ptn01{
	text-align: center;
}

.contact-form  .bottom-exp{
	text-align: left;
}

.radio-group.ptn01 .name-tag {
    margin-right: 20px;
}

.contact-form .submit-area {
    padding: 20px 0 0;
    text-align: center;
}

.contact-form .submit-area .submit-a {
    font-size: 1.4rem;
}


.contact-form .submit-box .btn {
    width: 80%;
    margin: 0 0 15px 0;
}

.contact-form .submit-box .submit-btn {
    display: block;
    margin: 0 auto;
    margin-bottom: 20px;
}

.contact-form .tbl.ptn-b>tbody>tr>td {
    padding: 0.3em 1em 0.5em;
    border-bottom: none;
}

.contact-form .address .block-label {
    display: flex;
    align-items: center;
    margin-bottom: 10px;
}
.contact-form .address .block-label {
    display: flex;
    margin-bottom: 0;
}

.contact-form .address .before-line {
    display: block;
    padding-left: 0;
    padding-right: 0;
    margin-bottom: 0;
    width: 100px;
}

.contact-form textarea {
    height: 100px;
}


/***************************************************************************************************************************

 エントリー

***************************************************************************************************************************/




.contact-form  .top-radio-box .mg-r20 {
    margin-right: 0px !important;
}


.contact-form .top-caption{
	max-width: 800px;
	text-align: left;
	margin:0 auto;
	font-size: 1.3rem;
	padding:0 1%;
}


.contact-form .radio-group.flex{
	display: block;
	text-align: left;
	padding-left: 7%;
}

.contact-form .schl-career>li .name-tag{
	display: block;
}

.contact-form input.text498 {
    max-width: 400px;
}

.contact-form .bottom-line {
    display: block;
    padding-right: 1em;
    font-size: 1.2rem;
}

.contact-form .bottom-line {
    display: block;
    padding-right: 1em;
    font-size: 1rem;
}

.contact-form .submit-box {
    padding: 10px 0;
    text-align: center;
}

.contact-form .submit-box label {
    display: block;
    margin-bottom: 20px;
}



/**************************************************************
* 確認
***************************************************************/

.contact-form  .confirm .submit-area>div{
	display: block;
	margin:0 0 20px 0;
}
.contact-form  .confirm .submit-area .submit-a{
	width: 100%;
}


/**************************************************************
* 完了
***************************************************************/

.complete .para-lg,
.complete p{
	font-size: 1.4rem;

}
.complete {
    min-height:inherit;
}




}/*768px完了*/


/***********************************************************************************************************************
* リサイズ  425px以下から
**********************************************************************************************************************/
@media screen and (max-width:425px){

	.contact-form .caption {
	    font-size: 1.4rem;
	    padding: 20px 10px;
	    text-align: left;
	}

	.contact-form .radio-group.flex {
	    padding-left: 5%;
	}

}