.tel_num{
text-align: center;
padding: 10px 0;
font-size: 110%;
}
/*ポップアップ*/
.imagephoto{
width: 100%;
margin: 0 auto;
}
.imagephoto img{
width: 50%;
}
.close_btn{
font-size: 150%;
font-weight: bold;
width: 90%;
border: 2px solid #ffde29;
background: #EF5400;
padding: 10px 0;
text-align: center;
margin: 20px auto;
box-shadow: rgba(50, 50, 93, 0.25) 0px 2px 5px -1px, rgba(0, 0, 0, 0.3) 0px 1px 3px -1px;
border-radius: 10px;
cursor: pointer;
color: #ffffff;
letter-spacing: 0.2em;
text-decoration: none;
}
.close_btn:hover {
background: #094197;
text-decoration: none;
}
.black-background {
position: absolute;
left: 0;
top: 0;
width: 100%;
height: 20%;
background-color: #ffde29;
z-index: 1;
}
.calbox{
width: 60%;
margin: 0 auto;
}
.calbox_top{
width: 100%;
margin: 0 auto;
}



.target01{
margin: 0 auto;
}
.target01 label{
border: 4px solid #5A3E90;
padding: 13px;
border-radius: 10px;
font-weight: bold;
color: #522C9B;
box-shadow: rgba(50, 50, 93, 0.25) 0px 2px 5px -1px, rgba(0, 0, 0, 0.3) 0px 1px 3px -1px;
}
.target01 label:hover{
background: #F2DBF9;
} 
.target_btn:checked + label {
background-color:#FFF3F3;
font-weight: bold;
border: 2px solid #E4070E;
padding: 5px;
font-size: 90%;
margin-right: 10px;
}

.submenu {
display: none;
background: #ffffff;
}
.open label{
color: #FFFFFF;
background: #750BA4;
border: 5px solid #D1032F;
margin: 0 auto;
}
label i{
color: #ffffff;
margin-right: 10px;
}
 /*了承しました*/
.check_box{
text-align: center;
font-size: 150%;
margin: 60px auto 20px;
}
.check-btns i{
color: #90B5B6;
padding-left: 10px;
}
.check-btns i:hover{
color: #EF001D;
}
.check-btns{
font-size: 120%;
}
.check-btns input[type=checkbox] {
display: none;
}
.check-btns label {
position: relative;
padding-left: 25px;
}
.check-btns label img{
width: 50%;
}
.check-btns input[type=checkbox]  + label::before {
position: absolute;
content: '';
display: block;
width: 50px;
height: 50px;
border: 2px solid #000000;
left: -3px;
bottom: 0;
border-radius: 3px;
}
.check-btns input[type=checkbox]  + label::before:checked {
background: rgba(239,228,83,1.00);
}
.check-btns input[type=checkbox]  + label::after {
position: absolute;
content: '';
display: block;
width: 15px;
height: 40px;
transform: rotate(45deg) scale(0, 0);
border-right: 8px solid #EF001D;
border-bottom: 8px solid #EF001D;
left: 15px;
bottom: 10px;
transition: .3s;
}
.check-btns input[type=checkbox]:checked + label::after {
transform: rotate(45deg) scale(1, 1);
}
/*radiobtn*/
.target_btn {
display: none;
}
/*ラジオボタンアレンジ*/
ul.check-btns{
width: 95%;
margin: 5px auto;
}
ul.check_flex{
display: flex;
flex-direction: column;
}
ul.check_flex li{
display: block;
position: relative;
width: 90%;
margin: 0 auto;
font-size: 130%;
line-height: 1.3;
}
ul.check_flex02 li{
width: 48%;
}
ul.check_flex li input[type=radio]{
position: absolute;
visibility: hidden;
}
ul.check_flex li label{
display: block;
position: relative;
font-weight: bold;
font-size: 130%;
margin: 10px auto;
cursor: pointer;
-webkit-transition: all 0.25s linear;
padding: 20px 5px 15px 85px;
border:3px solid #00B8D9;
border-radius: 10px;
}
ul.check_flex li label span{
font-size: 85%;
color: #255E9A;
}
ul.check_flex02 li label{
padding: 20px 15px 15px 15px;
}
ul.check_flex li label:hover{
color: #ffffff;
background: #00B8D9;
border:3px solid #FFE920;
}
input[type=radio]:checked ~ label{
color: #ffffff;
background: #00B8D9;
border: 5px solid #FFE920;
}
.check-btns input[type=radio] {
display: none;
}
.check-btns input[type=radio]  + label::before {
position: absolute;
content: '';
display: block;
width: 50px;
height: 50px;
border: 3px solid #000000;
background: #ffffff;
left: 2%;
transform: translate(0%,0%);
top: 10px;
border-radius: 3px;
}
.check-btns input[type=radio]  + label::after {
position: absolute;
content: '';
display: block;
width: 20px;
height: 40px;
transform: rotate(45deg) scale(0, 0)translate(-50%,-50%);
border-right: 10px solid #EF001D;
border-bottom: 10px solid #EF001D;
transition: .3s;
left: 4%; 
top: 6px;
}
.check-btns input[type=radio]:checked + label::after {
transform: rotate(45deg) scale(1, 1);
}
input[type="radio"] , input[type="checkbox"]{
-webkit-transform: scale(1.3);
transform: scale(1.3);
 margin-right: 0.3em;
}

.license_limit {
font-size: 25px;
padding-left: 8px;
font-weight: bold;
width: 95%;
}
.license_limit {
font-size: 18px;
}

.rimit_box{
padding: 15px 20px;
animation: wakuten 1s linear infinite alternate;
}
.rimit_cent{
padding: 0 10px;
}
@keyframes wakuten {
0% {
border: 5px solid #fc4a1a;padding: 16px
}
100% {
border: 5px solid #ffffff;padding: 16px
}
}
#selector option {
display: none;
}
/*テキスト記入欄*/
textarea[type='text']{
padding: 8px 0 8px 5px;
transition: 0.3s;
font-weight: bold;
color: #004B82;
font-family: "ヒラギノ角ゴ ProN W3", HiraKakuProN-W3, 游ゴシック, "Yu Gothic", メイリオ, Meiryo, Verdana, Helvetica, Arial, sans-serif;
}
textarea:focus{
color: #E04B11;
font-weight: bold;
font-size: 160%;
background: #DEF9EA;
}
/* 入力欄（整理番号） */
#serial {
width: 45%;
padding: 10px;
font-size: 140%;
border: 2px solid #d9534f; /* 赤系で必須感を出す */
border-radius: 6px;
outline: none;
transition: 0.2s;
}

/* フォーカス時の強調 */
#serial:focus {
color: #c9302c;
border-color: #c9302c;
box-shadow: 0 0 5px rgba(201, 48, 44, 0.4);
background: #EBC7C6;
}

/* コメント欄 */
#message {
width: 90%;
padding: 10px;
font-size: 140%;
border: 2px solid #5bc0de; /* 青系で柔らかい印象 */
border-radius: 6px;
outline: none;
transition: 0.2s;
resize: vertical; /* 高さだけ変更可能 */
}

/* コメント欄フォーカス時 */
#message:focus {
border-color: #31b0d5;
box-shadow: 0 0 5px rgba(49, 176, 213, 0.4);
}

/* プレースホルダーの色 */
.te_box::placeholder {
    color: #999;
}

@media screen and (max-width: 1200px){ 
ul.check_flex02{
display: flex;
justify-content: center;
align-items: center;
flex-direction: column;
}
ul.check_flex02 li{
width: 85%;
font-size: 120%;
}

}
@media screen and (max-width: 890px){ 
.license_limit {
font-size: 20px;
}
.rimit_cent{
padding: 10px;
}
ul.check_flex{
display: flex;
justify-content: center;
align-items: center;
flex-direction: column;
}
ul.check_flex li{
display: block;
position: relative;
width: 90%;
margin: 0 auto;
font-size: 130%;
line-height: 1.2;
}

ul.check_flex02 li{
width: 98%;
font-size: 115%;
}
.check-btns input[type=radio]  + label::before {
border: 3px solid #000000;
left: 1%;
transform: translate(0%,0%);
top: 10px;
border-radius: 3px;
}
.check-btns input[type=radio]  + label::after {
transform: rotate(45deg) scale(0, 0)translate(0%,0%);
left: 4%; 
top: 10px;
}
input[type="radio"] , input[type="checkbox"]{
-webkit-transform: scale(1.1);
transform: scale(1.1);
 margin-right: 0.1em;
}
textarea[type='text']{
width: 90%;
font-size: 140%;
}
}
@media screen and (max-width:580px) {
.check-btns{
font-size: 100%;
}
.target_btn:checked + label {
padding: 5px;
font-size: 95%;
margin-right: 10px;
}
ul.check_flex li{
width: 98%;
font-size: 125%;
}
.select-css02 {
font-size:150%;
}
.rimit_box{
padding: 10px;
animation: wakuten 1s linear infinite alternate;
width: 95%;
}
ul.check_flex li label{
padding: 10px 3px 10px 40px;
}
.check-btns input[type=radio]  + label::before {
width: 30px;
height: 30px;
border: 2px solid #000000;
}
.check-btns input[type=radio]  + label::after {
width: 15px;
height: 25px;
border-right: 5px solid #EF001D;
border-bottom: 5px solid #EF001D;
left: 4%; 
top: 5px;
}
.check-btns label img{
width: 70%;
}
#serial {
width: 70%;
font-size: 130%;
}
}
@media screen and (max-width:489px) {
ul.check_flex li{
font-size: 120%;
line-height: 1.2;
}
ul.check_flex02 li{
font-size: 100%;
}
.check-btns input[type=radio]  + label::before {
left: 1%;
transform: translate(0%,0%);
top: 10px;
border-radius: 3px;
width: 25px;
height: 25px;
border: 2px solid #000000;
}
.check-btns input[type=radio]  + label::after {
width: 13px;
height: 20px;
border-right: 5px solid #EF001D;
border-bottom: 5px solid #EF001D;
left: 3%; 
top: 7px;
}
ul.check_flex li label{
padding: 10px 3px 10px 35px;
}
.check-btns label img{
width: 80%;
}
textarea:focus{
font-size: 120%;
}
textarea[type='text']{
width: 95%;
font-size: 115%;
}
#message {
width: 95%;
padding: 10px;
font-size: 120%;
}
}