@charset "utf-8";

/* ************************************************ 
*	お問い合わせ　トップ
* ************************************************ */	
form {
margin-bottom: 0;
}
.re-contact-wrapper {
position: relative;
width: 1040px;
margin: 0 auto;
}

/* ボタン */
.re-contact-btnbox {
padding: 0;
margin: 0 auto 100px auto;
}
.re-contact-btnbox-inner {
padding: 0;
margin: 0;
display: flex;
justify-content: space-between;
flex-wrap: wrap;
align-items: center;
}
.re-contact-btnbox-inner li{
width: 32%;
padding: 0;
margin: 0 0 20px 0;
}
.re-contact-btnbox-inner li.company a,
.re-contact-btnbox-inner li.researcher a,
.re-contact-btnbox-inner li.other a{
box-sizing: border-box;
display: block;
align-content: center;
width: 100%;
height: 124px;
font-size: 20px;
padding: 0 50px 0 20px;
border-radius: 10px;
background-size: 12px;
background-position: right 20px center;
background-repeat: no-repeat;
line-height:1.6;
}
.re-contact-btnbox-inner li.company a{
background-color: #30A6930D;
color: #30A693;
border: 2px solid #30A693;
background-image:url("../images/contact/link_arrow_company.svg");
}
.re-contact-btnbox-inner li.researcher a{
background-color: #FF667E0D;
color: #FF667E;
border: 2px solid #FF667E;
background-image:url("../images/contact/link_arrow_researcher.svg");
}

.re-contact-btnbox-inner li.other a{
background-color: #FF99380D;
color: #FF9938;
border: 2px solid #FF9938;
background-image:url("../images/contact/link_arrow_other.svg");
}

.re-contact-btnbox-inner li.company a:hover,
.re-contact-btnbox-inner li.researcher a:hover,
.re-contact-btnbox-inner li.other a:hover{
opacity: 0.7;
}
.re-contact-btnbox p{
padding: 0;
margin: 0;
font-size: 16px;
line-height: 1.8;
}
.re-contact-btnbox p span{
margin: 0 3px 0 0;
}


/* 一般の方はこちら */
.re-contact-attbox {
padding: 0;
margin: 0 auto 100px auto;
}
.re-contact-attbox__qalink {
padding: 0;
margin: 0 0 40px 0;
border-bottom: 1px solid #D9D9D9;
}
.re-contact-attbox__qalink a{
padding: 16px 0;
margin: 0;
color: #222;
font-size: 16px;
display: block;
}
.re-contact-attbox__qalink a::before {
position:relative;
top: 0px;
left: 0px;
content:"";
display:inline-block;
padding-right: 9px;
width:12px;
height:12px;
background:url("../images/contact/link_arrow.svg") no-repeat;
background-size:contain;
transition: all 0.5s;
}
.re-contact-attbox__qalink a:hover{
color: #0292DD;
}

.re-contact-attbox-add {
margin: 0 0 40px 0;
padding: 16px 24px 20px 24px;
background-color: #F8F8F8;
border-radius: 10px;
}
.re-contact-attbox-add__title {
margin: 0 0 8px 0;
padding: 0;
font-size: 18px;
font-weight: 400;
line-height: 1.8;
color: #0292DD;
}
.re-contact-attbox-add__title span{
font-size: 14px;
color: #222;
margin: 0 0 0 20px;
}
.re-contact-attbox-add p{
margin: 0 0 4px 0;
padding: 0;
font-size: 16px;
line-height: 1.8;
}

.re-contact-attbox-add ul{
}
.re-contact-attbox-add ul li{
padding: 0;
margin: 0 0 4px 0;
font-size: 16px;
line-height: 1.8;
}
.re-contact-attbox-add ul li::before {
position:relative;
top: -2px;
left: 1px;
content:"";
display: inline-block;
padding-right: 0;
margin-right: 8px;
width: 8px;
height: 8px;
border-radius: 50vh;
transition: all 0.5s;
background:none;
background-size: 100%;
background-color: #9E9E9E;
}


/* ************************************************ 
*	お問い合わせ　共通
* ************************************************ */	
.re-contact-company-currenttitle,
.re-contact-researcher-currenttitle,
.re-contact-other-currenttitle {
color: #222;
font-size: 20px;
margin: 0 0 12px 0;
}
.re-contact-company-currenttitle:before,
.re-contact-researcher-currenttitle:before,
.re-contact-other-currenttitle:before {
position:relative;
top: -2px;
left: 1px;
content:"";
display: inline-block;
margin-right: 8px;
width: 8px;
height: 8px;
border-radius: 50vh;
transition: all 0.5s;
background:none;
background-size: 100%;
}
.re-contact-company-currenttitle:before {
background-color: #30A693;
}
.re-contact-researcher-currenttitle:before {
background-color: #FF667E;
}
.re-contact-other-currenttitle:before {
background-color: #FF9938;
}

/* フォーム　共通 */	
.re-contact-company-form,
.re-contact-researcher-form,
.re-contact-other-form {
margin: 0 auto 100px auto;
padding: 60px 120px 40px 120px;
border-radius: 10px;
}
.re-contact-company-form {
background-color: #F1F9F7;
}
.re-contact-researcher-form {
background-color: #FFF4F6;
}
.re-contact-other-form {
background-color: #FFF8F1;
}
.re-contact-form-inner {
margin: 0 auto;
padding: 0;
}
.re-contact-form-inner-step-company,
.re-contact-form-inner-step-researcher,
.re-contact-form-inner-step-other {
margin: 0 0 60px 0;
padding: 30px 88px;
display: flex;
justify-content: space-between;
flex-wrap: wrap;
align-items: center;
}
.re-contact-form-inner-step-jp {
margin: 0;
padding: 0;
font-size: 20px;
line-height: 1;
color: #717171;
text-align: center;
}
.re-contact-form-inner-step-en{
margin: 0 0 10px 0;
padding: 0;
font-size: 10px;
line-height: 1;
color: #717171;
text-align: center;
}

.re-contact-form-inner-step-company {
border-top: 1px solid #30A693;
border-bottom: 1px solid #30A693;
}
.re-contact-form-inner-step-researcher {
border-top: 1px solid #FF667E;
border-bottom: 1px solid #FF667E;
}
.re-contact-form-inner-step-other {
border-top: 1px solid #FF9938;
border-bottom: 1px solid #FF9938;
}
.re-contact-form-inner-step-jp .current-company,
.re-contact-form-inner-step-en .current-company{
color: #30A693;
}
.re-contact-form-inner-step-jp .current-researcher,
.re-contact-form-inner-step-en .current-researcher{
color: #FF667E;
}
.re-contact-form-inner-step-jp .current-other,
.re-contact-form-inner-step-en .current-other{
color: #FF9938;
}


.re-contact-form-inner-step-line{
transform: rotate(135deg);
width: 55px;
border: 0;
border-top: 1px solid #D9D9D9;
margin: 0;
padding: 0;
transform-origin: 50% 50%;
}


/* 注意文　共通 */	
.re-contact-attention-box {
width: 100%;
margin: 0 auto 20px auto;
}
.re-contact-attention-box100 {
width: 100%;
margin: 0 auto 100px auto;
}
.re-contact-attention-box p,
.re-contact-attention-box100 p{
font-size: 16px;
line-height: 1.8;
padding: 0;
margin: 0;
}
.re-contact-attention {
margin: 0 auto;
}
.re-contact-attention p{
padding: 0;
margin: 0;
font-size: 16px;
line-height: 1.8;
}
.re-contact-attention p span{
margin: 0 3px 0 0;
}


/* フォーム幅　共通 */	
.form-w90 { width: 90%!important; }
.form-w50 { width: 48.5%!important; }
.form-w10 {
width: 10%!important;
display: flex;
justify-content: flex-end;
align-items: center;
}


.ecocontactbox{
  padding: 20px 24px 24px 24px; 
  background-color: #ffffff;
  border-top-left-radius: 10px;
  border-top-right-radius: 10px;
  border-bottom-right-radius: 10px;
  border-bottom-left-radius: 10px;
  border: 1px #D9D9D9 solid;
}


.ecocontactattnbox{
  padding: 0px 40px 0px 40px;
  line-height: 12px; 
}



/* 入力内容を確認ボタン */
.re-company-contact-btn {
  display: flex;
  justify-content: center;
  align-items: center;
  align-content: center;
  flex-wrap: wrap;
}
.re-company-contact-btn a{
box-sizing: border-box;
display: inline-block;
align-content: center;
width: 288px;
height: 62px;
font-size: 16px;
margin: 0;
padding: 0 50px 0 18px;
border-radius: 10px;
background-size: 12px;
background-color: #30A693;
color: #fff;
border: 1px solid #D9D9D9;
background-image:url("../images/contact/submit_arrow.svg");
background-position: right 25px center;
background-repeat: no-repeat;
line-height:1;
}
.re-company-contact-btn a:hover{
color: #fff;
opacity: 0.7;
}


/* 入力内容を確認ボタン */
.re-other-contact-btn {
  display: flex;
  justify-content: center;
  align-items: center;
  align-content: center;
  flex-wrap: wrap;
}
.re-other-contact-btn a{
box-sizing: border-box;
display: inline-block;
align-content: center;
width: 288px;
height: 62px;
font-size: 16px;
margin: 0;
padding: 0 50px 0 18px;
border-radius: 10px;
background-size: 12px;
background-color: #FF9938;
color: #fff;
border: 1px solid #D9D9D9;
background-image:url("../images/contact/submit_arrow.svg");
background-position: right 25px center;
background-repeat: no-repeat;
line-height:1;
}
.re-other-contact-btn a:hover{
color: #fff;
opacity: 0.7;
}





/* ************************************************ 
*   レスポンシブ
* ************************************************ */
/* PC 画面の横幅が960px以上 */
@media only screen and (min-width: 960px){

}

/* Tablet (Portrait) 画面の横幅が768px〜959pxまで */
@media only screen and (min-width: 768px) and (max-width: 959px) {
.re-contact-wrapper { width: 90%; }
.re-contact-company-form,
.re-contact-researcher-form,
.re-contact-other-form {
margin: 0 auto 100px auto;
padding: 60px 40px 40px 40px;
}
.form-w90 { width: 85%!important; }
.form-w10 {
width: 15%!important;
}

}

/* Mobile (Portrait) 画面の横幅が767pxまで */
@media only screen and (max-width: 767px) {
.re-contact-wrapper { width: 100%; }
.re-contact-btnbox {
margin: 0 auto 48px auto;
width: 90%;
}


.re-contact-btnbox-inner li{
width: 100%;
margin: 0 auto 20px auto;
}
.re-contact-btnbox-inner li.company a,
.re-contact-btnbox-inner li.researcher a,
.re-contact-btnbox-inner li.other a {
height: 90px;
font-size: 5vw;
}

.re-contact-btnbox p{
margin: 0 0 0 1em;
font-size: 4.25vw;
}
.re-contact-btnbox p span{
margin: 0 0 0 -1em;
}

.re-contact-attbox {
width: 90%;
margin: 0 auto 60px auto;
}
.re-midashi-subtitle__ttl {
font-size: 5.5vw;
line-height: 1;
margin: 0 0 40px 0;
padding: 0 0 0 20px;
}

.re-contact-attbox__qalink {
margin: 0 0 32px 0;
}
.re-contact-attbox__qalink a{
padding: 0 0 12px 0;
font-size: 4.25vw;
}

.re-contact-attbox-add {
margin: 0 0 32px 0;
padding: 16px 20px 20px 20px;
}
.re-contact-attbox-add__title {
font-size: 4.75vw;
}
.re-contact-attbox-add p{
font-size: 4.25vw;
}
.re-contact-attbox-add ul li{
font-size: 4.25vw;
}
.re-contact-attbox-add ul li span{
margin-left: 18px;
}

.re-contact-attention-box {
width: 90%;
}
.re-contact-attention-box100 {
margin: 0 auto 20px auto;
width: 90%;
}
.re-contact-attention-box p,
.re-contact-attention-box100 p{
font-size: 4.25vw;
}
.re-contact-attention p{
margin: 0 0 0 1em;
font-size: 4.25vw;
}
.re-contact-attention p span{
margin: 0 0 0 -1em;
}

.re-contact-company-form,
.re-contact-researcher-form,
.re-contact-other-form {
width: calc(90% - 32px);
margin: 0 auto 60px auto;
padding: 32px 16px 32px 16px;
}
.re-contact-form-inner-step-company,
.re-contact-form-inner-step-researcher,
.re-contact-form-inner-step-other {
margin: 0 0 32px 0;
padding: 13.5px 0;
}
.re-contact-form-inner-step-jp {
font-size: 3.75vw;
}
.re-contact-form-inner-step-en{
margin: 0 0 8px 0;
font-size: 3vw;
}
.re-contact-form-inner-step-line{
width: 40px;
}

.form-w90 { width: 75%!important; }
.form-w50 { width: 100%!important; }
.form-w10 {
width: 25%!important;
}

.re-company-contact-btn a{
width: 288px;
height: 52px;
font-size: 4.25vw;
}
.re-other-contact-btn a{
width: 288px;
height: 52px;
font-size: 4.25vw;
}


}
