@charset "utf-8";
/* CSS Document */

input, select{
    padding: 0 1.69rem;/*25*/
}
textarea{
    width: 100%;
    height: 15.54rem;/*230*/
    border: 1px solid #949494;
    box-sizing: border-box;
    padding: 1.69rem;/*25*/
}

/*テキスト*/
input[type=text]{
    height: 3.38rem;/*50*/
    border: 1px solid #949494;
    box-sizing: border-box;
    background-color: #fff;
}
input.full{
    width: 100%;
}
input.half{
    width: 50%;
}

/*セレクトボックス*/
form .question .select{
    position: relative;
}
form .question .select::before{
    content: "";
    display: block;
    background-image: url("../image/contact/icon_circle.png");
    background-position: center;
    background-size: 1.49rem 1.08rem;
    pointer-events: none;
    width: 1.49rem;/*22*/
    height: 1.08rem;/*16*/
    position: absolute;
    top: 0;
    bottom: 0;
    margin: auto;
    right: 1.69rem;/*25*/
}
form .question .select select{
    width: 100%;
    height: 3.38rem;/*50*/
    border: 1px solid #000;
    box-sizing: border-box;
    -webkit-border-radius: 10px;
    -moz-border-radius: 10px;
    border-radius: 10px;
    background-color: #fff;
}

/*ラジオ（だけどチェックボックス）*/
form .question .checkbox{
    display: flex;
    align-items: center;
    width: 100%;
    height: 4.05rem;/*60*/
    background-color: #F2F2F2;
}
input[type=checkbox] {
    display: none; /* 標準スタイル */
}
.sample_label {
    position: relative; /* ボックスの位置を指定する */
    padding: 0 0 0 1.35rem;/*20*/ /* ボックス内側の余白を指定する */
}
.sample_label:after, .sample_label:before {
    position: absolute; /* ボックスの位置を指定する */
    content: ""; /* ボックスのコンテンツ */
    display: block; /* ブロックレベル要素化する */
    top: 0;
    bottom: 0;
    margin: auto;
}
.sample_label:after {
    /*margin-top: 0; /* チェック枠の位置 */
    width: 2.03rem;/*30*/
    height: 2.03rem;
    border: 1px solid #000; /* ボックスの境界線を実線で指定する */
    border-radius: 50%; /* ボックスの角丸を指定する */
    background-color: #fff;
}
.sample_label:before {
    /*margin-top: -9px; /* チェックマークの位置 */
    top: 0;
    bottom: 0;
    left: 1.67rem;
    margin: auto;
    width: 1.49rem;/*22*/
    height: 1.49rem;
    background: #0071B7;/* ボックスの背景色を指定する */
    border-radius: 50%; /* ボックスの角丸を指定する */
    z-index: 2;
    opacity: 0; /* 要素を透過指定する */
}
input[type=checkbox]:checked + .sample_label:before {
    opacity: 1; /* 要素を表示する */
}
.sample_label:hover:after {
    border-color: #0171bd; /* ボックスの境界線を実線で指定する */
}
form .question .checkbox a{
    margin-left: 3.04rem;/*45*/
    text-decoration: underline;
}

/*-----------------------------------------------------------*/

/*お問い合わせ先のご案内*/
section#a01{
    width: 100%;
    margin: 7.09rem auto 6.76rem;/*105,100*/
}
section#a01 .txt{
    text-align: center;
    color: #353535;
    letter-spacing: 0.05em;
}

section#a01 .info{
    max-width: 35.81rem;/*530*/
    margin: 3.72rem auto 0;/*55*/
}

section#a01 .info dl{
    width: 100%;
    height: 8.99rem;/*133*/
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 0.95rem 0;/*14*/
    border: 1px solid #155193;
    letter-spacing: 0.05em;
}
section#a01 .info dl dt{
    font-size: 1.22rem;/*18*/
}
section#a01 .info dl dd{
    font-size: 1.89rem;/*28*/
}
section#a01 .info dl dd a{
    font-size: 1.89rem;/*28*/
    color: #000;
}

/*-----------------------------------------------------------*/
/*お問い合わせ用メールフォーム*/

section#a02{
    width: 100%;
    margin: 0 auto;
    background-color: #F9F9F9;
}
section#a02 .inner{
    padding: 5.74rem 0 8.45rem;/*85,125*/
}

/*説明文*/
section#a02 .txt{
    width: 100%;
    margin: 0 auto;
    text-align: center;
    letter-spacing: 0.05em;
}

/*ステップ*/
section#a02 .steplists{
    width: 100%;
    margin: 5.07rem auto 0;/*75*/
    padding-bottom: 2.23rem;/*33*/
    text-align: center;
    letter-spacing: 0.05em;
    border-bottom: 1px solid #AEAEAE;
}
section#a02 .steplists ul{
    display: flex;
    justify-content: center;
}
section#a02 .steplists ul li{
    width: 13.04rem;/*193*/
    height: 2.97rem;/*44*/
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: #E6E6E6;
    font-size: 1.01rem;/*15*/
    text-align: center;
}
section#a02 .steplists ul li.now{
    background-color: #333333;
    color: #fff;
}
section#a02 .steplists ul li:not(:last-child){
    margin-right: 1.22rem;/*18*/
}
section#a02 .steplists ul li p:first-of-type{
    padding-right: 1.01rem;
}

/*フォーム*/
.formwrap{
    max-width: 63.85rem;/*945*/
    width: 100%;
    margin: 3.04rem auto 0;/*45*/
}

/*1問*/
form .question{
    display: flex;
    align-items: center;
    margin-bottom: 0.81rem;/*12*/
}
form .question.nomodel{
    margin-bottom: 2.23rem;/*33*/
}
form .question.flexbaceline{
    align-items: flex-start;
}

/*ラベル*/
form .question .label{
    width: 18.24rem;/*270*/
}
form .question .label dl{
    display: flex;
    align-items: center;
}
form .question.flexbaceline .label{
    padding-top: 1.42rem;
}
/*必須・任意*/
form .question .label dl dt{
    width: 3.18rem;/*47*/
    height: 1.69rem;/*25*/
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: #EC2028;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
    color: #fff;
    margin-right: 1.22rem;/*18*/
}
form .question .label dl dt.gray{
    background-color: #AEAEAE;
}

/*入力フィールド*/
form .question .field{
    width: calc( 100% - 18.24rem );
}
form .question .field dl{
    width: 100%;
    padding-top: 1.42rem;/*21*/
}
form .question.nomodel .field dl{
    padding-top: 0;
}
form .question .field dl dd{
    font-size: 0.95rem;/*14*/
    color: #575757;
    margin-top: 0.34rem;/*5*/
}

/*※郵便番号*/
form .question .field .postcode{
    position: relative;
}
form .question .field .postcode .subtxt{
    position: absolute;
    top: 1.01rem;/*15*/
    right: 4.73rem;/*70*/
}

/*送信ボタン*/
.sendbtns{
    width: 100%;
    margin: 5.95rem auto 0;/*88*/
    display: flex;
    justify-content: center;
}

.sendbtns div:not(:first-child){
    margin-left: 5.74rem;/*85*/
}

.sendbtns .next, .sendbtns .back{
    position: relative;
	transition: 0.3s;
}
.sendbtns .next::before{
    content: '';
    display: block;
    background-image: url("../image/common/arrow_white.png");
    background-repeat: no-repeat;
    background-size: 1.69rem 0.74rem;/*25,11*/
    width: 1.69rem;
    height: 0.74rem;
    position: absolute;
    top: 0;
    bottom: 0;
    margin: auto;
    right: 1.69rem;/*25*/
    transition: all .3s;
}
.sendbtns .back::before{
    content: '';
    display: block;
    background-image: url("../image/common/arrow_black.png");
    background-repeat: no-repeat;
    background-size: 1.69rem 0.74rem;/*25,11*/
    width: 1.69rem;
    height: 0.74rem;
    position: absolute;
    top: 0;
    bottom: 0;
    margin: auto;
    left: 1.69rem;/*25*/
    transition: all .3s;
}

.sendbtns input{
    width: 22.50rem;/*333*/
    height: 4.73rem;/*70*/
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 1.35rem;/*20*/
    letter-spacing: 0.05em;
}
.sendbtns .next input{
    background-color: #155193;
    border: 1px solid #155193;
    box-sizing: border-box;
    color: #fff;
}
.sendbtns .back input{
    background-color: #fff;
    border: 1px solid #000;
    box-sizing: border-box;
    color: #000;
}

/*hoverした際の移動*/
.sendbtns .next:hover, .sendbtns .back:hover{
	transition: 0.3s;
	opacity: 0.6;
    -webkit-tap-highlight-color:rgba(0,0,0,0);
    cursor:pointer;
}
/*hoverした際の移動*/
.sendbtns .next:hover::before{
    right: 1.35rem;/*20*/
}
.sendbtns .back:hover::before{
    left: 1.35rem;/*20*/
}

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

.steplists.margin{
    margin: 0 auto 0;    
}

#form-tbl{
    width: 67.57rem;/*1000*/
    margin: 0 auto;
}

#form-tbl table{
    width: 100%;
}
#form-tbl table tr{
    display: block;
    padding: 2.23rem 0;
}
#form-tbl table tr:first-of-type{
    padding: 0 0 2.23rem 0;
}
#form-tbl table tr th{
    width: 18.24rem;/*270*/
    text-align: right;
}
#form-tbl table tr td{
    width: calc( 100% - 20.81rem );
    padding-left: 2.57rem;/*38*/
}

/*-----------------------------------------------------------*/
/*プライバシーポリシー*/

section#a03{
    width: 100%;
    margin: 0 auto;
}
section#a03 .inner{
    padding: 7.43rem 0 11.49rem;/*110,170*/
}
section#a03 h3{
    margin: 0 auto 1.01rem;/*15*/
    font-size: 1.35rem;/*20*/
    color: #333333;
    text-align: center;
    padding-bottom: 1.01rem;/*15*/
    border-bottom: 1px solid #AEAEAE;
}

section#a03 .txtlists ul li:not(:last-child){
    margin-bottom: 2.03rem;/*30*/
}

section#a03 .abouttoul{
    margin: 7.43rem auto 0;/*110*/
    line-height: 180%;
}

/*-----------------------------------------------------------*/
/*-----------------------------------------------------------*/
/*ipad*/
@media screen and (max-width: 1200px) {
}

/*ipad横向き時*/
@media screen and (max-width: 1200px) and (orientation: landscape) {
    
}

/*ipad縦向き時*/
@media screen and (max-width: 1200px) and (orientation: portrait) {
}


/*-----------------------------------------------------------*/
/*-----------------------------------------------------------*/
/*-----------------------------------------------------------*/
/*-----------------------------------------------------------*/
/*-----------------------------------------------------------*/
/*-----------------------------------------------------------*/
/*-----------------------------------------------------------*/
/*-----------------------------------------------------------*/
/*-----------------------------------------------------------*/
/*-----------------------------------------------------------*/
/*-----------------------------------------------------------*/

