@charset "utf-8";


#contact_jp input:-webkit-autofill,
#contact_jp input:-webkit-autofill:hover,
#contact_jp input:-webkit-autofill:focus,
#contact_jp textarea:-webkit-autofill,
#contact_jp textarea:-webkit-autofill:hover,
#contact_jp textarea:-webkit-autofill:focus{
    -webkit-text-fill-color:#333 !important;
    -webkit-box-shadow:0 0 0 1000px #fff inset !important;
    box-shadow:0 0 0 1000px #fff inset !important;
}



.effect_1 ~ .focus_border {
position: absolute;
z-index: 9;
bottom: -1px;
left: 0;

width: 0;
height: 1px;
background-color:#333;
transition: 0.4s;
}


.effect_1:focus ~ .focus_border {
  width: 100%;
  transition: 0.4s;
}


#contact_jp{
position: relative;
width: 100%;
margin: 0;
padding: 0;
}


.contact_layout{
width: 94%;
margin: 0 auto;
padding: 0;
}


/*日本語
------------------------------------------------------------------------------------------------------------------------------------*/
#contact_jp h1{
width: 100%;
text-align: left;
margin: 25px 0 20px 0;
padding: 0;

font-family: "swiss-721-bt", sans-serif;
font-weight: 700;
font-style: normal;

/*FONT 375px計算*/
font-size: 9px;
font-size: 2.4vw;
font-size: clamp(8px, 2.4vw, 10px);

line-height: 1.1;
color: #000;

letter-spacing: -0.02em;
font-feature-settings: "liga" 1, "pnum" 1;
}




/*解説 SP*/
#contact_jp .kaisetu{
width:100%;
margin: 0 0 10px 0;
padding: 0 0 0 0;

/* Noto Sans - Google */
font-family: YakuHanJPs, "swiss-721-bt","Noto Sans JP", sans-serif;
font-optical-sizing: auto;
font-weight: 800;
font-style: normal;

/*FONT 375px計算*/
font-size: 8px;
font-size: 2.1333333vw;
font-size: clamp(7px, 2.1333333vw, 9px);

color: #333;
line-height: 1.5;
}




/*確認画面 SP*/
#contact_jp .mw_wp_form_preview .kaisetu{
display: none;
}

/* ご入力内容を必ず確認ください。*/
#contact_jp .kakunin_message{
display: none;
width: 100%;
margin: 0 auto 25px auto;

/* Noto Sans - Google */
font-family: YakuHanJPs, "swiss-721-bt","Noto Sans JP", sans-serif;
font-optical-sizing: auto;
font-weight: 800;
font-style: normal;

/*FONT 375px計算*/
font-size: 10px;
font-size: 2.6666667vw;
font-size: clamp(9px, 2.6666667vw, 11px);

color: #333;
line-height:1.3;
}


#contact_jp .mw_wp_form_preview .kakunin_message{
display: block;
}



/*入力フォームエリア　テーブル*/
#contact_jp table{
width:100%;
border-collapse: collapse;
margin: 50px 0 10px 0;
padding: 0;
border-top: 1px solid #898989;

/*フォント句読点、約物は詰めない*/
-moz-font-feature-settings: "pkna" 1;
-webkit-font-feature-settings: "pkna" 1;
font-feature-settings: "pkna" 1;
letter-spacing: 0.0em;
}

#contact_jp table tr{
display:block;/*縦並び*/
width:100%;
margin: 0;
padding: 0;
}

#contact_jp table th span{
color:#333;
margin:0 0 0 3px;
}


#contact_jp table th{
display:block;/*縦並び*/
width:100%;
text-align:left;
padding: 15px 0 10px 0;
margin:0;

/* Noto Sans - Google */
font-family: YakuHanJPs, "swiss-721-bt","Noto Sans JP", sans-serif;
font-optical-sizing: auto;
font-weight: 800;
font-style: normal;

/*FONT 375px計算*/
font-size: 8px;
font-size: 2.1333333vw;
font-size: clamp(7px, 2.1333333vw, 9px);

color: #333;
line-height: 1.5;
letter-spacing: 0.0em;
}



#contact_jp table td{
position: relative;
display:block;/*縦並び*/
width:100%;
text-align:left;
margin: 0;
padding: 0;

/* Noto Sans - Google */
font-family: YakuHanJPs, "swiss-721-bt","Noto Sans JP", sans-serif;
font-optical-sizing: auto;
font-weight: 800;
font-style: normal;

font-size:13px;
letter-spacing: 0.0em;
color:#333;
line-height: 1.5;

border-bottom: 1px solid #898989;
}


#contact_jp input[type="text"] {
border: none;
-webkit-border-radius : 0;
-webkit-tap-highlight-color : rgba(0,0,0,0);

width:100%;
height: 40px;
margin:0;
padding: 5px;

-webkit-box-sizing: border-box;
box-sizing: border-box;
border-radius: 0;
-webkit-border-radius: 0;

border: none;

/* Noto Sans - Google */
font-family: YakuHanJPs, "swiss-721-bt","Noto Sans JP", sans-serif;
font-optical-sizing: auto;
font-weight: 800;
font-style: normal;

/*FONT 375px計算*/
font-size: 16px;
font-size: 4.2666667vw;
font-size: clamp(15px, 4.2666667vw, 17px);

letter-spacing: 0.0em;
color:#333;

transition: background-color 1s ease;
background: transparent;
}



#contact_jp input[type="text"]:focus {
outline: 0;
transition: border-color .6s ease, color .6s ease;
background: transparent;
border: none;
transition: background-color 1s ease;
background: #EFEEEB;
}



#contact_jp input[type="email"] {
border: none;
-webkit-border-radius : 0;
-webkit-tap-highlight-color : rgba(0,0,0,0);

width:100%;
height: 40px;
margin:0;
padding: 5px;

border-radius: 0;
-webkit-border-radius: 0;

-webkit-box-sizing: border-box;
box-sizing: border-box;

transition: border-color .6s ease, color .6s ease;
background: transparent;
border: none;


/* Noto Sans - Google */
font-family: YakuHanJPs, "swiss-721-bt","Noto Sans JP", sans-serif;
font-optical-sizing: auto;
font-weight: 800;
font-style: normal;

/*FONT 375px計算*/
font-size: 16px;
font-size: 4.2666667vw;
font-size: clamp(15px, 4.2666667vw, 17px);

letter-spacing: 0.0em;
color:#333;

transition: background-color 1s ease;
background: transparent;
}



#contact_jp input[type="email"]:focus {
outline: 0;
transition: border-color .6s ease, color .6s ease;
border: none;
transition: background-color 1s ease;
background: #EFEEEB;
}




#contact_jp textarea{
display:block;/*隙間防止*/

border: none;
outline: 0;
-webkit-border-radius : 0;
-webkit-tap-highlight-color : rgba(0,0,0,0);

width:100%;
height:260px;
margin:0;
padding: 5px;

-webkit-box-sizing: border-box;
box-sizing: border-box;

border-radius: 0;
-webkit-border-radius: 0;

transition: border-color .6s ease, color .6s ease;
background: transparent;
border: none;

/* Noto Sans - Google */
font-family: YakuHanJPs, "swiss-721-bt","Noto Sans JP", sans-serif;
font-optical-sizing: auto;
font-weight: 800;
font-style: normal;

/*FONT 375px計算*/
font-size: 16px;
font-size: 4.2666667vw;
font-size: clamp(15px, 4.2666667vw, 17px);

color:#333;
letter-spacing: 0.0em;

transition: background-color 1s ease;
background: transparent;
}


#contact_jp textarea:focus{
transition: border-color .6s ease, color .6s ease;
border: none;
transition: background-color 1s ease;
background: #EFEEEB;
}







/*送信ボタン*/
#contact_jp .submitbtn{
width: 100%;
margin: 0 0 0 0;
padding: 0;
}

#contact_jp .submitbtn input{
border: 0;
cursor: pointer;
display: block;
width: 100%;
background: #8FA6C1;
height: 48px;
line-height: 48px;

-webkit-appearance: none;
border-radius: 3px;
}


/*送信ボタン　基本*/
#contact_jp .submitbtn input{
margin: 0;
padding: 0;
border: 0;

cursor: pointer;
display: block;

width:100%;
background: #333;
color: #fff;

height: 60px;
line-height: 58px;

/* Noto Sans - Google */
font-family: YakuHanJPs, "swiss-721-bt","Noto Sans JP", sans-serif;
font-optical-sizing: auto;
font-weight: 800;
font-style: normal;

/*FONT 375px計算*/
font-size: 11px;
font-size: 2.9333333vw;
font-size: clamp(10px, 2.9333333vw, 12px);

-moz-font-feature-settings: "palt" 1;
-webkit-font-feature-settings: "palt" 1;
font-feature-settings: "palt" 1;
letter-spacing: 0.0em;
}


/*確認ボタン*/
#contact_jp .btn-confirm{
width:100%;
margin: 0;
background: #000;
}




/*矢印*/
#contact_jp .submitbtn_first{
position: relative;
width:100%;
height: 55px;
margin: 0 0 20px 0;
}


#contact_jp .submitbtn_first::after{
content: '';
position: absolute;
top: 3px;
bottom: 0;
right: 10px;
margin: auto 0;
background: url(/common/img/arrow.svg) no-repeat center center;
background-size: contain;
width: 5px;
height: 9px;
}











/*確認画面-----------------------------------------------------------------------------------------------------------------------------------------------------*/
/*確認画面に遷移した場合　SP*/
#contact_jp .mw_wp_form_preview{

}

#contact_jp .mw_wp_form_preview table{
margin: 0 0 30px 0;
padding: 0 0 20px 0;
}

#contact_jp .mw_wp_form_preview table th{
margin: 0 0 5px 0;
padding: 9px 0 4px 0;
font-size: 11px;
}


#contact_jp .mw_wp_form_preview table td{
margin: 0 0 0 0;
padding: 5px 0 9px 0;

vertical-align: middle;
height: auto;

border-bottom: 1px solid #898989;
font-size: 14px;
color:#000;
}






#contact_jp .mw_wp_form_confirm .submitbtn_second{
position: relative;
width:100%;
height: 55px;
margin:0 0 30px 0;
}

#contact_jp .mw_wp_form_confirm .submitbtn_second::after{
content: '';
position: absolute;
top:0;
bottom: 0;
left: 10px;
margin: auto 0;
background: url(/common/img/arrow_prev.svg) no-repeat center center;
background-size: contain;
width: 5px;
height: 9px;
}

/*修正するの上書き*/
#contact_jp .btn-back{
width:100%;
margin: 0;
background: #989898 !important;
color:#fff !important;
}

#contact_jp .mw_wp_form_preview .btn-confirm.prevent{
margin:0 0 25px 0 !important;
}


/*送信完了後
--------------------------------------------------------------------------------------*/
#contact_jp #thankyou{
width:86%;
margin: 0 auto;
padding: 160px 0 100px 0;
min-height: 100vh;
min-height: 100svh;

/* Noto Sans - Google */
font-family: YakuHanJPs, "swiss-721-bt","Noto Sans JP", sans-serif;
font-optical-sizing: auto;
font-weight: 800;
font-style: normal;
}


#contact_jp #thankyou h2{
width: 100%;
text-align: center;
margin:0 auto 40px auto;
padding:0;

font-family: "swiss-721-bt", sans-serif;
font-weight: 700;
font-style: normal;

font-size:15px;
line-height: 1.3;
letter-spacing: -0.02em;
color: #000;

font-feature-settings: "liga" 1, "pnum" 1;
}

#contact_jp #thankyou p{
width: 100%;
text-align: center;


font-size:11px;
line-height: 1.3;
letter-spacing: 0.0em;
color: #000;
}



/*エラー*/
#contact_jp .mw_wp_form .error{
opacity: 1 !important;
padding: 5px 0 5px 0 !important;

font-size: 10px !important;
letter-spacing: 0.0em;
}


#contact_jp td:has(.error) {
    display: flex;
    flex-direction: column;
}
#contact_jp td .error {
    order: -1;
}
/*エラー*/




/*スマホ終了　PC開始（横幅880px以上）
----------------------------------------------------------------------------------------------------------------------------------*/
@media (min-width: 880px) {


.contact_layout{
position: relative;
width: 800px;
margin: 100px 0 60px 30px;
padding: 0;
}




#contact_jp h1{
display: none;
visibility: hidden;
margin: 0 0 30px;
padding: 0;

/*FONT 1440px計算*/
font-size: 38px;
font-size: 2.6388889vw;
font-size: clamp(36px, 2.6388889vw, 40px);

font-size: 11px;

font-family: "swiss-721-bt", sans-serif;
font-weight: 700;
font-style: normal;

line-height: 1.3;
letter-spacing: -0.02em;
color: #000;

font-feature-settings: "liga" 1, "pnum" 1;
text-transform: uppercase;
}



#contact_jp .kaisetu{
width: 100%;
margin: 10px 0 30px 0;
padding: 0;

/* Noto Sans - Google */
font-family: YakuHanJPs, 'Noto Sans JP',　sans-serif;
font-weight: 800;
font-optical-sizing: auto;
font-style: normal;

/*FONT 1440px計算*/
font-size: 11px;
font-size: 0.7638889vw;
font-size: clamp(10px, 0.7638889vw, 12px);

color: #333;
line-height: 1.5;

letter-spacing: 0.0em;
}



/*確認画面*/
#contact_jp .mw_wp_form_preview .kaisetu{
display: none;
}


/*確認メッセージ　注意事項*/
#contact_jp .kakunin_message{
display: none;
width: 100%;
margin: 0 auto 20px auto;

/*FONT 1440px計算*/
font-size: 15px;
font-size: 1.0416667vw;
font-size: clamp(14px, 1.0416667vw, 16px);

color: #333;
line-height:1.5;


}


#contact_jp .mw_wp_form_preview .kakunin_message{
display: block;
}







/*入力エリア　Table
-----------------------------------------------------------------------------*/
#contact_jp table{
width: 100%;
margin: 0 0 0 0;
padding: 0;
border-collapse: collapse;
border-top: none;

/*フォント句読点、約物は詰めない*/
-moz-font-feature-settings: "pkna" 1;
-webkit-font-feature-settings: "pkna" 1;
font-feature-settings: "pkna" 1;
letter-spacing: 0.0em;
}

#contact_jp table tr{
display: block;/*縦並び*/
width: 100%;
margin: 0;
padding: 0;
}

#contact_jp table th{
position:relative;
width: 100%;
padding:10px 0 0 0;
margin:0;

-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
-o-box-sizing: border-box;
-ms-box-sizing: border-box;
box-sizing: border-box;

/* Noto Sans - Google */
font-family: YakuHanJPs, 'Noto Sans JP',　sans-serif;
font-weight: 800;
font-optical-sizing: auto;
font-style: normal;

/*FONT 1440px計算*/
font-size: 11px;
font-size: 0.7638889vw;
font-size: clamp(10px, 0.7638889vw, 12px);

color: #333;
line-height: 1.0;
}

#contact_jp table td{
position: relative;
width: 100%;
margin: 0;
padding: 10px 0 0 0px;

-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
-o-box-sizing: border-box;
-ms-box-sizing: border-box;
box-sizing: border-box;
}








#contact_jp input[type="text"] {
margin:0;
padding: 10px;
width: 100%;
height:60px;

-webkit-tap-highlight-color: rgba(0,0,0,0);
border-radius: 0;
-webkit-border-radius: 0;
border: none;

/* Noto Sans - Google */
font-family: YakuHanJPs, 'Noto Sans JP',　sans-serif;
font-weight: 800;
font-optical-sizing: auto;
font-style: normal;

/*FONT 1440px計算*/
font-size: 18px;
font-size: 1.25vw;
font-size: clamp(17px, 1.25vw, 19px);

color:#333;
letter-spacing: 0.0em;

transition: background-color 1s ease;
background: transparent;
}


#contact_jp input[type="email"] {
margin:0;
padding: 10px;

width: 100%;
height:60px;
border: none;

-webkit-tap-highlight-color : rgba(0,0,0,0);
border-radius: 0;
-webkit-border-radius: 0;
border: none;

/* Noto Sans - Google */
font-family: YakuHanJPs, 'Noto Sans JP',　sans-serif;
font-weight: 800;
font-optical-sizing: auto;
font-style: normal;

/*FONT 1440px計算*/
font-size: 18px;
font-size: 1.25vw;
font-size: clamp(17px, 1.25vw, 19px);

color:#333;
letter-spacing: 0.0em;

transition: background-color 1s ease;
background: transparent;
}




#contact_jp textarea{
border: none;
-webkit-tap-highlight-color : rgba(0,0,0,0);
outline: 0;

margin:0;
padding: 10px;
width: 100%;
height: 330px;

-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
-o-box-sizing: border-box;
-ms-box-sizing: border-box;
box-sizing: border-box;

border-radius: 0;
-webkit-border-radius: 0;
border: none;

/* Noto Sans - Google */
font-family: YakuHanJPs, 'Noto Sans JP',　sans-serif;
font-weight: 800;
font-optical-sizing: auto;
font-style: normal;

/*FONT 1440px計算*/
font-size: 18px;
font-size: 1.25vw;
font-size: clamp(17px, 1.25vw, 19px);
}








/*確認画面 PC
-----------------------------------------------------------------------------------------------------------------------------------------------------*/







#contact_jp .mw_wp_form_preview table{
width: 100%;
margin: 0 0 20px 0;
}


#contact_jp .mw_wp_form_preview table th{
margin: 0;
padding: 10px 0 0 0;

/*FONT 1440px計算*/
font-size: 13px;
font-size: 0.9027778vw;
font-size: clamp(12px, 0.9027778vw, 14px);

color: #333;


}


#contact_jp .mw_wp_form_preview table td{
width: 100%;
margin: 0 0 18px 0;
padding: 5px 0 5px 0;
border-bottom: 1px solid #898989;

height: auto;
vertical-align: middle;

/*FONT 1440px計算*/
font-size: 18px;
font-size: 1.25vw;
font-size: clamp(17px, 1.25vw, 19px);

/*フォント句読点、約物は詰めない*/
-moz-font-feature-settings: "pkna" 1;
-webkit-font-feature-settings: "pkna" 1;
font-feature-settings: "pkna" 1;

color:#333;
letter-spacing: 0.0em;
}







/*送信ボタン
----------------------------------------------------------------------------------------------------*/
/*送信ボタン*/
#contact_jp .submitbtn{
width: 100%;
margin: 0;
padding: 0;
}


/*確認画面：送信する　戻る*/
#contact_jp .mw_wp_form_preview .submitbtn{
display: -webkit-flex;
display: flex;
flex-wrap: wrap;

/*横並び・右から左*/
flex-direction: row-reverse;
width: 800px;
margin: 0;
padding: 0;
text-align:center;
}


/*送信ボタン　基本*/
#contact_jp .submitbtn input, #contact_jp .submitbtn button{
position: relative;
display: block;
margin: 0;
padding: 0;
border: 0;
cursor: pointer;

width: 390px;
height: 60px;
line-height: 54px;

/* Noto Sans - Google */
font-family: YakuHanJPs, 'Noto Sans JP',　sans-serif;
font-weight: 800;
font-optical-sizing: auto;
font-style: normal;


font-size: 12px;
color: #fff;
background: #333;

outline: 0;/*クリックした時の青い境界線を消す*/
}


/*送信する*/
#contact_jp .submitbtn_first{
position: relative;
width: 390px;
height: 55px;
margin: 0;
padding: 0;
}




#contact_jp .submitbtn_first::after{
content: '';
position: absolute;
top:3px;
bottom: 0;
right: 10px;
margin: auto 0;
background: url(/common/img/arrow.svg) no-repeat center center;/*矢印*/
background-size: contain;
width: 5px;
height: 9px;
}

/*戻る*/
#contact_jp .mw_wp_form_confirm .submitbtn_second{
position: relative;
width: 390px;
height: 55px;
margin:0 20px 0 0;
}

#contact_jp .mw_wp_form_confirm .submitbtn_second::after{
content: '';
position: absolute;
top:3px;
bottom: 0;
left: 10px;
margin: auto 0;
background: url(/common/img/arrow_prev.svg) no-repeat center center;
background-size: contain;
width: 5px;
height: 9px;
}


#contact_jp .submitbtn input .btn-confirm:hover {
background: #666;
color: #fff;
transition: all 0.8s;
}

#contact_jp .submitbtn input .btn-back:hover {
background: #666;
color: #000;
transition: all 0.8s;
}

/*送信するボタン*/
#contact_jp .btn-confirm{
margin:0 0 0 0;
}

/*確認画面*/
#contact_jp .mw_wp_form_preview .btn-confirm.prevent{
margin:0 0 0 0 !important;
}

/*確認画面*/
#contact_jp .mw_wp_form_preview .btn-confirm.btn-back{
margin:0 0px 0 0 !important;
padding: 0;
}

#contact_jp .btn-confirm:hover {
opacity: 0.6;
transition: all 0.5s;
}




/*送信完了後
--------------------------------------------------------------------------------------*/
#contact_jp #thankyou{
width:700px;
margin:0 auto;
padding: 160px 0 100px 0;
}

#contact_jp #thankyou h2{
width: 100%;
text-align: center;
margin: 0 auto 40px auto;
font-size:24px;
}




#contact_jp #thankyou p{
width: 100%;
text-align: center;
font-size:14px;
line-height:1.5;
}


/*エラー*/
#contact_jp .mw_wp_form .error{
opacity: 1 !important;
padding: 5px 0 5px 0 !important;

font-size: 12px !important;
letter-spacing: 0.0em;
}

#contact_jp td:has(.error) {
    display: flex;
    flex-direction: column;
}
#contact_jp td .error {
    order: -1;
}
/*エラー*/

}/*880px以上終了！*/






/* iOS Safari のみ：入力欄の角丸・内側影を消す（オートフィルの青を避けるため通常時は appearance を外している）*/
@supports (-webkit-touch-callout: none) {
#contact_jp input[type="text"],
#contact_jp input[type="email"],
#contact_jp textarea {
-webkit-appearance: none;
appearance: none;
border-radius: 0;
}
}
