@charset "UTF-8";

.marginTop60 {
    margin-top: 60px !important;
}

.marginTop30 {
    margin-top: 30px !important;
}

.lineHeight2 {
    line-height: 2;
}

.fontSize28 {
    font-size: 28px !important;
}

@media screen and (max-width: 680px) {
    .marginBottom50 {
        margin-bottom: 50px !important;
    }

    .fontSize28 {
        font-size: 22px !important;
    }
}

/* ========================
contact
======================== */
.contact__form {
    margin-top: 100px;
}

.btn__moreinfo {
    margin: 30px auto 0 0;
}

.content__detail--contact {
    background-color: #EFEFEF;
}


@media screen and (max-width: 680px) {
    .section {
        margin-top: 0 !important;
    }
}

/* ========================
contact 各問い合わせページ
======================== */
.article__header__container--contact {
    display: block !important;
    margin: 0 auto 100px;
    max-width: 1250px;
}

.article__header a {
    /* color: var(--primary-blue); */
}

.contact__txt {
    margin-top: 24px;
    line-height: 2;
}

.section__form {
    padding: 100px var(--contentPadding) 200px;
}

.section__wrapper--contact {
    padding: 0 var(--contentPadding);
    display: grid;
    grid-template-columns: 1fr 2fr;
    column-gap: 40px;
    align-items: start;
    max-width: 1250px;
    margin: 68px auto 200px;
}

.tel__title {
    color: #039FA5;
    font-size: 18px;
    padding-bottom: 4px;
    border-bottom: 1px solid #C3C3C3;
}

.contact__number {
    color: #254CA4;
    font-size: 40px;
    margin-top: 32px;
}

.contact__time {
    margin-top: 16px;
}

.tel__title span {
    font-size: 12px;
    color: var(--primary-blue);
}

.btn__moreinfo--submit {
    padding: 0px 0 0 21px;
    margin: 30px 0 0 auto;
}

.contact__privacy {
    text-decoration: underline;
    color: var(--primary-blue);
    transition: color 0.3s ease;
}

.contact__privacy:hover {
    opacity: 0.5;
}


@media screen and (max-width: 680px) {
    .section__wrapper--contact {
        display: block;
    }

    .section__form {
        padding: 50px var(--contentPadding) 200px;
        margin: 0;
    }

    .contact__number {
        font-size: 20px;
    }

    .contact__input {
        margin-top: 20px;
    }
}

/* フォーム */
/*ーーーーーーーーーーーーーーーーーーーーーーーーーー
共通
ーーーーーーーーーーーーーーーーーーーーーーーーーー*/
.form .ttl_third-box .ttl_third {
    padding-bottom: 25px;
}

.form .ttl_third-box p {
    line-height: 1;
}

.form-step {
    display: block;
    width: 100%;
    max-width: 407px;
    margin: 0 auto 50px;
}

.form .section_sub {
    padding-top: 0;
    max-width: 720px;
}

@media screen and (max-width:768px) {
    .form .ttl_third-box .ttl_third {
        padding-bottom: 15px;
    }

    .form .ttl_third-box p {
        font-size: 14px;
    }

    .form-step {
        margin-bottom: 30px;
    }
}


/*ーーーーーーーーーーーーーーーーーーーーーーーーーー
記入フォーム
ーーーーーーーーーーーーーーーーーーーーーーーーーー*/
.contact_form {
    max-width: 720px;
    margin: 0 auto;
}

.form-box-info-table {
    width: 100%;
    margin: 50px auto 0;
}

.form-box-info-table tr td,
.form-box-info-table tr th {
    font-size: 16px;
    /* font-weight: bold; */
    padding-bottom: 30px;
}

.form-box-info-table tr th {
    width: 240px;
    font-weight: 400;
    text-align: left;
    vertical-align: top;
    padding-right: 3.5vw;
    padding-top: 16px;
    color: var(--primary-blue);
}

.form-box-info-table tr td {
    background-color: #ffffff;
    vertical-align: bottom;
    font-weight: normal;
    max-width: 630px;
}

td.radio-box {
    margin-bottom: 30px;
    display: block;
}

.form-box-info-table tr td label.contact_to {
    display: block;
    margin-bottom: 5px;
}

.form-box-info-table tr td textarea,
.form-box-info-table tr td input,
.select {
    border: 1px solid #ACACAC;
    border-radius: 5px;
    box-sizing: border-box;
}

.form-box-info-table tr td textarea:focus,
.form-box-info-table tr td input:focus {
    border: 1px solid #000A67;
    outline: none;
}

.form-box-info-table tr td textarea {
    width: 100%;
    height: 150px;
    padding: 15px;
    font-size: 16px;
    /* margin-bottom: 36px; */
    background-color: #efefef;
}

.form-box-info-table tr td input[type="text"],
.form-box-info-table tr td input[type="tel"],
.form-box-info-table tr td input[type="email"],
.select {
    /* width: 610px; */
    padding: 5px;
    height: 36px;
    font-size: 16px;
    width: 100%;
    background-color: #efefef;
}

.form-box-info-table tr td input[name="postal_code1"],
.form-box-info-table tr td input[name="postal_code2"] {
    width: 610px;
}

::placeholder {
    color: #CECECE;
}

.agreementbox {
    margin: 10px auto 0;
    text-align: center;
}

.agreementbox input {
    margin-top: -3px;
}

.must {
    color: red;
    font-size: 12px;
}

/* チェックボックスのリセットとスタイル設定 */
.check_lift {
    -webkit-appearance: checkbox;
    /* SafariやChrome */
    -moz-appearance: checkbox;
    /* Firefox */
    appearance: checkbox;
    /* その他のブラウザ */
    width: 16px;
    /* チェックボックスのサイズ */
    height: 16px;
    margin-right: 10px;
    /* ラベルとの間隔 */
    cursor: pointer;
    display: inline-block;
    vertical-align: middle;
}

/* チェックボックスの外見が選択されたときのスタイル */
.check_lift:checked {
    background-color: #4CAF50;
    /* チェックが入ったときの色 */
    border-color: #4CAF50;
    /* チェックの枠線の色 */
    color: white;
}

/* チェックボックスがフォーカスされたときのアウトライン */
.check_lift:focus {
    outline: 2px solid #4CAF50;
}

/* 必須フィールドのバリデーションが必要な場合のスタイル */
.check_lift.required:invalid {
    border-color: red;
}

@media screen and (max-width:768px) {
    .form-box-info-table {
        margin: 30px auto 20px;
    }

    .form-box-info-table tr td,
    .form-box-info-table tr th {
        font-size: 16px;
        padding-bottom: 20px;
    }

    .form-box-info-table tr th {
        width: 135px;
        padding-top: 12px;
    }

    /* td.radio-box {
    margin-bottom: 20px;
  } */
    .form-box-info-table tr td textarea {
        height: 100px;
        padding: 5px;
        font-size: 16px;
    }

    .form-box-info-table tr td input[type="text"],
    .form-box-info-table tr td input[type="tel"],
    .form-box-info-table tr td input[type="email"] {
        height: 36px;
        font-size: 16px;
        padding: 10px 5px;
    }

    .inqLead {
        text-align: center;
        padding-bottom: 30px;
    }
}



/*問い合わせ　エラー*/
td.error input,
td.error textarea,
td.error select,
td.error label {
    border: 1px solid #FF0000 !important;
}

p.error {
    margin: 0;
    color: #FF0000;
}

.bold {
    font-weight: bold;
}

/*確認画面*/
.form-box-info-table2 {
    width: 100%;
    max-width: 720px;
    margin: 50px auto 0;
}

.form-box-info-table2 tr td,
.form-box-info-table2 tr th {
    padding-bottom: 30px;
}

.form-box-info-table2 tr th {
    width: 260px;
    padding-right: 3.5vw;
    text-align: left;
    vertical-align: top;
    font-weight: 600;
    font-size: 1.8rem;
}

@media screen and (max-width:768px) {

    .form-box-info-table2 tr td,
    .form-box-info-table2 tr th {
        padding-bottom: 15px;
    }

    .form-box-info-table2 tr th {
        width: 145px;
        padding-right: 3.5vw;
        font-size: 16px;
    }
}

/*確認画面*/
/* .content{
	margin: 0 auto;
	max-width: 800px;
	padding: 20px 5vw 50px;
  } */
.form-box-info-table2 {
    width: 100%;
    /* max-width: 800px;
	  margin: 60px auto 0; */
}

.form-box-info-table2 tr.入社希望者,
.form-box-info-table2 tr.その他 {
    display: none;
}

.form-box-info-table2 tr td,
.form-box-info-table2 tr th {
    padding-bottom: 40px;
}

.form-box-info-table2 tr th {
    width: 280px;
    padding-right: 70px;
    text-align: left;
    vertical-align: top;
    font-weight: 600;
}

.form-box-info.submits button {
    transition: 0.3s;
    cursor: pointer;
}

.form-box-info.submits button:hover {
    /* opacity: 0.6; */
}

.form-box-info.submits.clearfix {
    display: flex;
    justify-content: space-between;
    margin: 30px auto 0;
    /* padding: 0 40px; */
    max-width: 800px;
}

/* .form-box-info.submits.clearfix button{
	  display: block;
	  width: 48%;
	  max-width: 370px;
	  padding: 20px 10px;
	  border-radius: 4px;
	  font-size: 20px;
	  font-weight: 600;
	  text-align: center;
	} */
/* .btnSubmit{
		border: 2px solid #A80E0F;
		background-color: #A80E0F;
		color: #fff;
	}
	.btnSubmit:hover{
		background-color: #fff;
		color: #A80E0F;
		transition: 0.3s;
	}
	.btnSubmit2{
		border: 2px solid #919191;
	  background-color: #919191;
	  color: #fff;
	}
	.btnSubmit2:hover{
	  background-color: #fff;
	  color: #919191;
	  transition: 0.3s;
	}
   */

.confirm__txt {
    display: block;
    margin: 60px auto 0;
    max-width: 1250px;
}

.ttl1 {
    font-size: 32px;
    font-weight: 600;
    margin-bottom: 30px;
    line-height: 1.3;
}

.confirmArea {
    width: 240px;
    font-weight: 400;
    text-align: left;
    vertical-align: top;
    padding-right: 3.5vw;
    /* padding-top: 16px; */
    color: var(--primary-blue);
    font-size: 16px !important;
}

.section-wrapper--confirm {
    margin-bottom: 200px;
}

.btn__moreinfo--revise {
    padding: 0 0 0 20px !important;
    margin: 50px auto 0 0 !important;
    border: solid 1px var(--primary-blue);
    border-radius: 20px;
}

.btn__moreinfo--submit {
    padding: 0 0 0 20px !important;
}

@media screen and (max-width:768px) {

    /* .content{
		margin: 0 auto;
		padding: 10px 16px 40px;
	  } */
    .form-box-info-table2 {
        /* margin: 40px auto 0; */
    }

    .form-box-info-table2 tr td,
    .form-box-info-table2 tr th {
        padding-bottom: 30px;
    }

    .form-box-info-table2 tr th {
        width: 155px;
        padding-right: 30px;
    }

    .form-box-info.submits.clearfix {
        margin: 30px auto 0;
        padding: 0;
        display: block;
    }

    .form-box-info.submits.clearfix button {
        display: block;
        width: 100%;
        max-width: 370px;
        padding: 15px 5px;
        border-radius: 4px;
        font-size: 18px;
    }

    .btnSubmit {
        margin: 0 auto;
    }

    .btnSubmit2 {
        margin: 0 auto 20px;
    }
}

/*送信完了*/
.thankText-home-button {
    color: #BF1443;
    font-weight: 600;
    display: block;
    margin-top: 40px;
    text-decoration: underline;
}

.article__topic--complete {
    font-weight: 500 !important;
}