/*------------------
form
-------------------*/
input,textarea,select,
form.post-password-form p label input {
    border:solid 1px #fff !important;
}
input:focus,textarea:focus,select:focus,
form.post-password-form p label input:focus {
    border:solid 1px #028cd7 !important;
}

form div.form.h-adr em {
    font-style: normal !important;
}
.formttl {
    padding: 0 !important;
}
.register_first_p {
    padding: 0 0 240px 0;
    margin: 0 auto!important;
    max-width: 500px;
    font-weight: bold;
}

hr.blue {
    margin: 15px 0 25px;
    border: 1px solid #00a2df;
}
.form_area div.tel_box {
    margin: 15px auto 0;
    color: #00a2df;
    font-size: 40px;
    font-size: 4rem;
    text-align: center;
    line-height: 1.0;
    letter-spacing: 0.1em;
    display: block;
}
.txtbox {
    padding: 10px 20px 20px;
}
.form_area form div.form dl dd span.error {
    display: block;
    padding-top: 70px;
    margin-top: -70px;
}

/*小学生以下テキストリンク*/
br.sp-only {
	display: none;
}

@media screen and (max-width: 767px){
	br.sp-only {
	display: block;
}
}
a.form__line-link-kids {
	text-decoration: underline;
    color: #00b7df;
}
a.form__line-link-kids:hover {
	text-decoration: none;
}



/*box*/
.form {
	text-align: center;
	width: 600px;
	margin: 0 auto;
	background-color: #f3f8fe;
	font-size: 1.15rem;
	border-radius : 30px;
}
.from-inner {
	text-align: left;
	padding: 50px 60px
}

@media screen and (max-width: 900px){
.form {
	text-align: center;
	width:100%;
}
.from-inner {
	text-align: left;
	padding: 20px;
}
}

.form dl {
 /*background:#e9ecf1;*/
 margin-bottom:1px;
 display:-webkit-box;
 display:-ms-flexbox;
 display:flex;
 -ms-flex-wrap:wrap;
 flex-wrap:wrap;
 -webkit-box-align:center;
 -ms-flex-align:center;
 align-items:center;
 padding:10px 0px
}
.form dl span.error {
 display:block;
 width:100%;
 margin-top:0px
}
.form dl span.error+.error {
 margin-top:0
}
.form dl:nth-child(odd) {
 /*background:#f0f3f7*/
}
.form dt {
 font-weight:700;
 width:100%;
 line-height:1.4;
 padding-bottom: 10px;
}
.form dd {
 -webkit-box-flex:1;
 -ms-flex:1 0 0%;
 flex:1 0 0%;
}
.form dd>div:not(:first-child) {
 margin-top:5px
}
.checkbox dt em {
    font-style: normal;
}
.form__address dd > div span {
    min-width: 120px;
}
@media screen and (max-width: 900px){
.form__address dd > div span {
    min-width: 90px;
}
}
/*ラベル*/
.form label {
 margin-right:16px
}
.form .checkbox label {
 display:inline-block;
}
.form label span {
 min-width:50px;
 display:inline-block
}
/*[input詳細]郵便番号 */
.form__address dd > div input:not([name="post-address1"]) {
    width: calc(94% - 120px);
}
input[name="zip1"] {
    max-width: 100px;
}
input[name="zip2"] {
    max-width: 100px;
}
@media screen and (max-width: 900px){
input[name="zip1"] {
    max-width: 80px !important;
}
input[name="zip2"] {
    max-width: 80px !important;
}
}


/*名前*/

.form input[type="text"][name="sei-kana"],.form input[type="text"][name="mei-kana"],.form input[type="text"][name="a-mei"],.form input[type="text"][name="a-sei"],.form input[type="text"][name="s-mei"],.form input[type="text"][name="s-sei"]   {
 width:25%;
}
/*郵便番号*/
.form__address dd>div input[type="text"][name="zip1"] {
 width:15%;
}
.form__address dd>div input[type="text"][name="zip2"] {
 width:15%;
}

/*都道府県*/
.form__address dd>div input[type="text"][name="post-address2"] {
 width:15%;
}
.form__address dd>div input[type="text"][name="post-address3"] {
 width:65%;
}
.form__address dd>div input[type="text"][name="post-address4"] {
 width:65%;
}
.form__address dd>div input[type="text"][name="post-address5"] {
 width:65%;
}

@media screen and (max-width: 900px){
.form__address dd>div input:not([name=post-address1]) {
 width:calc(82% - 105px)
}
}
/*メールアドレス*/
.form input[type="email"][type=email] {
 width:70%
}
@media screen and (max-width: 900px){
.form input[type="email"][type=email] {
 width:88%
}
}
/*電話番号*/
.form input[type="text"][name="tel1"],
.form input[type="text"][name="tel2"],
.form input[type="text"][name="tel3"] {
 width:10%;
}
@media screen and (max-width: 900px){
.form input[type="text"][name="tel1"],
.form input[type="text"][name="tel2"],
.form input[type="text"][name="tel3"] {
 width:20%;
}
}

.form input[type=email],
.form input[type=tel],
.form input[type=text],
.form textarea {
 font-size:inherit;
 padding:12px 12px;
 width:10%;
 border:none;
border-radius: 8px;
-webkit-border-radius: 8px;
-moz-border-radius: 8px;    
}


/*出発日 帰宅日*/
.form select[name="birth_year"],
.form select[name="birth_month"],
.form select[name="birth_day"],
.form select[name="visit01-year"],
.form select[name="visit01-month"],
.form select[name="visit01-day"],
.form select[name="visit02-year"],
.form select[name="visit02-month"],
.form select[name="visit02-day"],
.form select[name="visit03-year"],
.form select[name="visit03-month"],
.form select[name="visit03-day"],
.form select[name="visit01-year"],
.form select[name="visit01-month"],
.form select[name="visit01-day"],
.form select[name="visit02-year"],
.form select[name="visit02-month"],
.form select[name="visit02-day"],
.form select[name="visit03-year"],
.form select[name="visit03-month"],
.form select[name="visit03--day"] {
 width:15%;
}

/*生年月日*/
@media screen and (max-width: 900px){
.form select[name="birth_year"],
.form select[name="birth_month"],
.form select[name="birth_day"],
.form select[name="visit01-year"],
.form select[name="visit01-month"],
.form select[name="visit01-day"],
.form select[name="visit02-year"],
.form select[name="visit02-month"],
.form select[name="visit02-day"],
.form select[name="visit03-year"],
.form select[name="visit03-month"],
.form select[name="visit03-day"],
.form select[name="visit01-year"],
.form select[name="visit01-month"],
.form select[name="visit01-day"],
.form select[name="visit02-year"],
.form select[name="visit02-month"],
.form select[name="visit02-day"],
.form select[name="visit03-year"],
.form select[name="visit03-month"],
.form select[name="visit03--day"] {
 width:27.5%; 
}
}
.form select[name="need-year"],
.form select[name="need-month"],
.form select[name="need-day"],
.form select[name="school-year"],
.form select[name="school-month"],
.form select[name="school-day"], 
.form select[name="arrival-year"],
.form select[name="arrival-month"],
.form select[name="arrival-day"],
.form select[name="departure-year"],
.form select[name="departure-month"],
.form select[name="departure-day"],   
.form select[name="leave-start-year"],
.form select[name="leave-start-month"],
.form select[name="leave-start-day"],
.form select[name="leave-end-year"],
.form select[name="leave-end-month"],
.form select[name="leave-end-day"]{
 width:27%;
}
/*幅広対応*/
.form select[name="reasons"],
.form select[name="campus"],
.form select[name="how"]{
    width: 94%;
}
.form input[type="text"][name="airline"],
.form input[type="text"][name="accommodation"],
.form input[type="text"][name="school-name-01"],
.form input[type="text"][name="school-major-01"],
.form input[type="text"][name="school-name-02"],
.form input[type="text"][name="school-major-02"],
.form input[type="text"][name="school-name-03"],
.form input[type="text"][name="school-major-03"],
.form input[type="text"][name="school-name-04"],
.form input[type="text"][name="school-major-04"],
.form input[type="text"][name="school-name-05"],
.form input[type="text"][name="school-major-05"],
.form input[type="text"][name="school-major-05"],
.form input[type="text"][name="others"],
.form input[type="text"][name="name01"],
.form input[type="text"][name="purpose01"],
.form input[type="text"][name="name02"],
.form input[type="text"][name="purpose02"],
.form input[type="text"][name="name03"],
.form input[type="text"][name="purpose03"],
.form input[type="text"][name="name04"],
.form input[type="text"][name="purpose04"],
.form input[type="text"][name="name05"],
.form input[type="text"][name="purpose05"],
.form input[type="text"][name="with01-01"],

.form input[type="text"][name="hotel"],
.form input[type="text"][name="contact"],
.form input[type="text"][name="people"],
.form input[type="text"][name="reason"] {
width:96%;   
}
.form select[name="seminar"]{
 width:95%; 
}
.form input[type=checkbox],
.form input[type=radio] {
 position:relative;
 top:-5px;
 margin-right:6px
}
.form input[type=checkbox] ,.form input[type=radio] {
    top:-1px;
    vertical-align: middle !important;
    width: 20px;
    height: 20px;
    display: inline-block;
    border-radius : 6px 6px 6px 6px;
}

.form select {
 font-size:inherit;
 min-height:45px;
 margin-right:10px;
 min-width:24%
}
select {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    line-height: 1.15;
    font-size: 16px;
    border: none;
    padding: 8px 16px 8px 8px;
    background-image: url('../../common/images/icn_select1.png');
    background-size: 12px auto;
    background-repeat: no-repeat;
    background-position: right 10px center;
    background-color: #ffffff;
    width: 30%;
    box-sizing: border-box;
    border-radius: 8px;
    -webkit-border-radius: 8px;
    -moz-border-radius: 8px;    
}
.form textarea {
 width:90%;
 max-width:700px
}

@media screen and (max-width: 900px){
.form textarea {
 width:90%;
 max-width:700px
}
}

.form .mwform-checkbox-field {
 display:inline-block;

}
/*btn*/
.btn_box br {
    display: none !important;
}
.btn-submit-wrap {
 text-align:center;
 padding:30px 4% 35px;
 display:-webkit-box!important;
 display:-ms-flexbox!important;
 display:flex!important;
 -webkit-box-pack:center;
 -ms-flex-pack:center;
 justify-content:center;
 -webkit-box-align:center;
 -ms-flex-align:center;
 align-items:center
}
.form.h-adr div.btn-submit-wrap input.btn-submit,
div.btn_box input.btn-submit,
div.btn_box input.btn-submit.btn {
    width: 280px !important;
    display: inline-block;
    font-size: 1.5rem !important;
    letter-spacing: 2px;
}


.btn-submit-back {
background: #999 !important;
}

.form.h-adr div.bottom_block div.btn_box input.btn-submit.btn,
div.form_area section.page-section div.bottom_block.ct div.btn_box a {
background: linear-gradient(45deg, #279ede 0%, #31b9f1 100%);
background-color: rgba(0, 0, 0, 0);
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#279ede', endColorstr='#31b9f1', GradientType=1 );
border-radius: 40px;
position: relative;
z-index: 0;
background-color: #fff;
border: 1px solid #028bd6;
letter-spacing: 0.26em;
color: #fff;
font-size: 18px;
font-size: 2.2rem;
text-align: center;
line-height: 50px !important;
overflow: hidden;
font-weight: bold;
width: 300px !important;  
}


form div.form.h-adr div.bottom_block {
    text-align: center;
    margin: 20px 0 0 !important;
}
.btn-submit {
 font-weight:700;
 text-align:center;
 border:0;
 cursor:pointer
}
.btn-submit--gray {
 background:#ccc;
 background:var(--color-gray);
 box-shadow:0 4px 0 0 #8d8d8d
}
.btn-submit+.btn-submit {
 margin-left:4%
}
.btn-submit.btn-gjj {
 background-color:#a80000;
 color:#fff;
 -webkit-box-shadow:0 4px 0 0 #6b0000;
 box-shadow:0 4px 0 0 #6b0000;
 margin:0 auto;
 font-size:2.2rem;
 text-decoration:none;
 line-height:1.4;
 padding:16px
}
.complete-msg {
 font-size:3rem;
 text-align:center;
 padding:50px 0;
 margin-bottom:50px
}
.form-pp {
 padding:0 25px 20px;
 font-size:1.5rem;
 line-height:1.6;
 color:#717171
}
.mw_wp_form .form .horizontal-item+.horizontal-item {
 margin-left:0
}
.form-comeplete-banner {
 max-width:600px;
 margin:40px auto 60px;
 background:var(--color-ligh-gray);
 padding:40px
}

.form-agreement {
 text-align:center;
 margin-top:30px
}
.form-agreement__title {
 font-weight:700;
 margin-bottom: 10px;
}
.post-cta-btn {
 display:-webkit-box;
 display:-ms-flexbox;
 display:flex;
 -webkit-box-pack:center;
 -ms-flex-pack:center;
 justify-content:center;
 -webkit-box-align:center;
 -ms-flex-align:center;
 align-items:center;
 width:100%;
 margin:48px 0 82px
}
.post-cta-btn__link {
 font-size:2rem;
 line-height:32px;
 font-weight:700;
 border:1px solid #0370c1;
 border:1px solid var(--color-brand);
 background:#0370c1;
 background:var(--color-brand);
 color:#fff;
 width:340px;
 height:52px;
 display:-webkit-box;
 display:-ms-flexbox;
 display:flex;
 -webkit-box-pack:center;
 -ms-flex-pack:center;
 justify-content:center;
 -webkit-box-align:center;
 -ms-flex-align:center;
 align-items:center;
 position:relative;
 border-radius:3px;
 line-height:1
}
.post-cta-btn__link:before {
 content:"";
 position:absolute;
 right:22px;
 top:calc(50% - 2px);
 height:10px;
 width:10px;
 border-top:3px solid #fff;
 border-right:3px solid #fff;
 -webkit-transform:rotate(45deg) translateY(-50%);
 transform:rotate(45deg) translateY(-50%)
}
.post-cta-btn__link:hover {
 background:#fff;
 color:#0370c1;
 color:var(--color-brand)
}
.post-cta-btn__link:hover:before {
 border-top-color:#0370c1;
 border-top-color:var(--color-brand);
 border-right-color:#0370c1;
 border-right-color:var(--color-brand)
}
@media screen and (max-width:900px) {


.form dl {
  padding:10px 5px 20px;
  display:block
 }
 .form dt {
  width:100%;
  padding:10px;
  margin-bottom:8px;
 }
 .form dd {
  width:100%;
  margin-left:10px!important
 }
.register_first_p {
    padding: 0 0 135px 0;
    margin: 0 auto !important;
    max-width: 400px;
    font-weight: bold;
    font-size: 1.5rem;
}
.form label {
    margin-right: 4px;
}
/*名前*/
.form input[type="text"][name="sei-kana"],.form input[type="text"][name="mei-kana"]  {
 width:38%;
    display: inline-block;
}
/*生年月日*/
 select {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    line-height: 1.15;
    font-size: 16px;
    border: none;
    padding: 8px 16px 8px 8px;
    background-image: url('../../common/images/icn_select1.png');
    background-size: 12px auto;
    background-repeat: no-repeat;
    background-position: right 10px center;
    background-color: #ffffff;
    width: 29%;
    box-sizing: border-box;
    border-radius: 8px;
    -webkit-border-radius: 8px;
    -moz-border-radius: 8px;    
}


.form select[name="seminar"]{
 width:96%; 
}

/*出発日 帰宅日*/
.form select[name="visit01-year"],
.form select[name="visit01-month"],
.form select[name="visit01-day"],
.form select[name="visit02-year"],
.form select[name="visit02-month"],
.form select[name="visit02-day"],
.form select[name="visit03-year"],
.form select[name="visit03-month"],
.form select[name="visit03-day"],
.form select[name="visit01-year"],
.form select[name="visit01-month"],
.form select[name="visit01-day"],
.form select[name="visit02-year"],
.form select[name="visit02-month"],
.form select[name="visit02-day"],
.form select[name="visit03-year"],
.form select[name="visit03-month"],
.form select[name="visit03--day"]{
 width:20%;      
}
.form select[name="need-year"],
.form select[name="need-month"],
.form select[name="need-day"],
.form select[name="school-year"],
.form select[name="school-month"],
.form select[name="school-day"], 
.form select[name="arrival-year"],
.form select[name="arrival-month"],
.form select[name="arrival-day"],
.form select[name="departure-year"],
.form select[name="departure-month"],
.form select[name="departure-day"],    
.form select[name="leave-start-year"],
.form select[name="leave-start-month"],
.form select[name="leave-start-day"],
.form select[name="leave-end-year"],
.form select[name="leave-end-month"],
.form select[name="leave-end-day"]{
 width:22%;
}
/*幅広対応*/
.form select[name="reasons"],
.form select[name="campus"],
.form select[name="how"]{
    width: 90%;
}
.form input[type="text"][name="airline"],
.form input[type="text"][name="accommodation"],
.form input[type="text"][name="school-name-01"],
.form input[type="text"][name="school-major-01"],
.form input[type="text"][name="school-name-02"],
.form input[type="text"][name="school-major-02"],
.form input[type="text"][name="school-name-03"],
.form input[type="text"][name="school-major-03"],
.form input[type="text"][name="school-name-04"],
.form input[type="text"][name="school-major-04"],
.form input[type="text"][name="school-name-05"],
.form input[type="text"][name="school-major-05"],
.form input[type="text"][name="others"],
.form input[type="text"][name="name01"],
.form input[type="text"][name="purpose01"],
.form input[type="text"][name="name02"],
.form input[type="text"][name="purpose02"],
.form input[type="text"][name="name03"],
.form input[type="text"][name="purpose03"],
.form input[type="text"][name="name04"],
.form input[type="text"][name="purpose04"],
.form input[type="text"][name="name05"],
.form input[type="text"][name="purpose05"],
.form input[type="text"][name="with01-01"],
.form input[type="text"][name="hotel"],
.form input[type="text"][name="contact"],
.form input[type="text"][name="people"],
.form input[type="text"][name="reason"] {
width:96%;   
}  
.form.h-adr div.bottom_block div.btn_box input.btn-submit,
.form.h-adr div.bottom_block div.btn_box input.btn-submit.btn,.contact_area div.form_area section.page-section div.bottom_block.ct div.btn_box a,.blog_col_under.form.nopadding div.contact_area div.form_area div.btn_box a {
    width: 300px !important;
 height: 50px !important;
line-height: 50px !important;
    display: inline-block;
    font-size: 1.5rem !important;
    letter-spacing: 2px;
    height: 50px !important;
}
.form.h-adr div.bottom_block div.btn_box input.btn-submit.btn,
.contact_area div.form_area section.page-section div.bottom_block.ct div.btn_box a {
background: linear-gradient(45deg, #279ede 0%, #31b9f1 100%);
background-color: rgba(0, 0, 0, 0);
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#279ede', endColorstr='#31b9f1', GradientType=1 );
border-radius: 40px;
position: relative;
z-index: 0;
background-color: #fff;
border: 1px solid #028bd6;
letter-spacing: 0.26em;
color: #fff;
font-size: 18px;
font-size: 2.2rem;
text-align: center;
line-height: 50px !important;
overflow: hidden;
font-weight: bold;
    
}
}