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

/* iOSでのデフォルトスタイルをリセット */
input[type="submit"],
input[type="button"] {
  border-radius: 0;
  -webkit-box-sizing: content-box;
  -webkit-appearance: button;
  appearance: button;
  border: none;
  box-sizing: border-box;
  cursor: pointer;
}
input[type="submit"]::-webkit-search-decoration,
input[type="button"]::-webkit-search-decoration {
  display: none;
}
input[type="submit"]::focus,
input[type="button"]::focus {
  outline-offset: -2px;
}

/*ラジオボタン*/
input[type="radio"] {
    display: none;
}


/*------------------------------------------
PC スタイル例
------------------------------------------*/
body *{
	box-sizing: border-box;
}
p{
    margin: 20px 0 0;
}
h1{
    font-size: 2.67em;
    font-weight: 600;
}
section.wrap_m.titleiner {
    position: relative;
    margin-top: 3.75em;
}
img.back-img {
    right: -100px;
    top: 70px;
}
p.keikoku {
    text-align: center;
    max-width: 538px;
    margin: 5% 0 0 10.5%;
}
.form{
	width: 920px;
    margin: 8em auto 60px;
    padding: 30px 70px 70px;
    background-color: #f8f4f7;
}
.form dl{
	margin: 0;
	padding: 1em 0 0;
}
.form dt{
	width: 13em;
	padding: 0;
	margin: 0;
	float: left;
	min-height: 3em;
	line-height: 2em;
	font-weight: inherit;
}
.form dd{
	width: 100%;
	padding: 0 0 1em 13.2em;
	margin: 0 0 1em;
	min-height: 3em;
	line-height: 2em;
}
/*フォーム要素*/
input[type="text"],input[type="tel"],textarea{
	width: 100%;
	font-size: 1em;
	line-height: 1.5em;
	padding: 0.8em;
	border: 1px solid #ccc;
}
textarea{
	height: 10em;
}
select{
	width: 100%;
	line-height: 1.5em;
	font-size: 1em;
}
.birth-flex {
    display: flex;
    align-items: center;
    gap: 15px;
}
/* 選択エリア（ラベル）全体のスタイル */
.radio-label {
    display: inline-flex;
    align-items: center;
    cursor: pointer;
    margin-right: 25px;
    font-size: 16px;
    user-select: none;
}
/* ラベル左に円*/
.radio-label::before {
    content: "";
    display: inline-block;
    width: 30px;
    height: 30px;
    margin-right: 8px;
    background-color: #fff;
    border: 1px solid #ccc;
    border-radius: 50%;
    box-sizing: border-box;
}
/* チェックが入った時*/
input[type="radio"]:checked + .radio-label::before {
    border-color: #d92f16;
}
/* 円の中に「丸（ポチ）」 */
input[type="radio"]:checked + .radio-label {
    position: relative;
}
input[type="radio"]:checked + .radio-label::after {
    content: "";
    position: absolute;
    left: 9px;
    top: 50%;
    transform: translateY(-50%);
    width: 12px;            /* 中のポチの幅 */
    height: 12px;           /* 中のポチの高さ */
    background-color: #d92f16;
    border-radius: 50%;
}
/* 送信ボタン */
.btn_area{
	text-align: center;
}
.btn-submit{
	width: 300px;
	height: 75px;
	margin: 0 auto 0.5em;
	
	font-size: 1.7em;
	color: #fff;
	
	border: 3px solid #d92f16;
    background-color: #d92f16;
	
	display: flex;
	justify-content: center;
	align-items: flex-start;
}
.btn-submit:hover{
	color: #d92f16;
    background-color: #FFF;
}
.btn-submit .submit_area{
	line-height: 0.95em;
    margin: -4px 0 0;
    text-align: center;
}
.btn-submit .submit_area span{
	font-size: 0.5em;
}
.error-message {
    color: red;
    font-size: 0.9em;
    margin: 0;
}
span.required {
    color: red;
}
input::placeholder {
    font-size: 0.96em;
    font-weight: 400;
}
.gray{
    color: #969696;
    margin: -4% 13px 4em 0%;
    font-size: 15px;
    text-align: right;
}
br.sp_on{
    display: none;
}
/*------------------------------------------
confirm.php　デザインコード
------------------------------------------*/
p.confirm-text{
    text-align: center;
}
p.confirm-text.only{
    max-width: 100%;
    font-size: 1.5em;
    margin-top: 3em;
}
/*------------------------------------------
thanks.php　デザインコード
------------------------------------------*/
.thanks-wrap {
    min-height: 100vh;
    display: flex;
    justify-content: center;
    align-items: center;
}
.thanks-box {
    text-align: center;
    width: 100%;
}
.thanks-box h1 {
    font-size: 60px;
    margin-bottom: 60px;
}
.thanks-box p {
    line-height: 1.8;
    margin-bottom: 110px;
    max-width: 100%;
    text-align: center;
}
.btn-back {
    display: inline-block;
    padding: 12px 30px;
    background: #d72f16;
    color: #fff;
    text-decoration: none;
}
.btn-back:hover {
    background: #fff;
    color: #d72f16;
    border: 1px solid #d72f16;
}
/*------------------------------------------
フッター　スタイル調整
------------------------------------------*/
.only_what {
	padding-top: 0;
}

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

/*------------------------------------------
800以下 タブレット・スマホ スタイル例
------------------------------------------*/
@media screen and (max-width : 768px){
    h1 {
        font-size: 31px;
        margin: 0;
        line-height: 1.4;
    }
    img.back-img {
        top: -21px;
        right: -50px;
        height: 230px;
    }
    p.keikoku {
        text-align: left;
        margin: 5% 0 0 0;
    }
    .gray {
        text-align: left;
        font-size: 14px;
    }
    .catchcopy {
        margin-bottom: 0px;
        font-size: 14px;
    }
	.form{
		width: 100%;
        padding: 50px;
        margin: 30px auto 60px;
	}
	.form dt{
		width: 100%;
		float: none;
		padding: 0 0 .3em;
		min-height: 0;
		line-height: 1.5em;
        font-size: 16px;
	}
	.form dd{
		padding: 0 0 1em;
		margin: 0 0 1em;
		min-height: 2em;
		line-height: 1.5em;
	}
    .radio-label {
        font-size: 14px;
    }
    .btn-submit{
        width: 100%;
    }
    .btn-submit.index{
        margin-left: 0;
    }
    .btn-submit .submit_area {
        margin: 0.15em 0 0;
    }
    br.sp_on{
        display: block;
    }

/*------------------------------------------
confirm.php　デザインコード
------------------------------------------*/
    p.confirm-text.only {
        font-size: 1.2em;
    }
/*------------------------------------------
thanks.php　デザインコード
------------------------------------------*/
    .thanks-box h1 {
        font-size: 3em;
    }
    .thanks-box p {
        font-size: 1.1em;
    }
    .btn-back {
        width: 70%;
        padding: 20px 30px;
        font-size: 1.4em;
    }
    .account-wrap {
        margin: -20px auto 40px;
    }
}



