#about{background:rgba(0,0,0,.7); line-height:1.8rem; letter-spacing:.5px; padding:10px;}

/*見出し*/
#about h4{
display:block;
background:#ff3900;
font-family:'M PLUS 1', sans-serif;
font-size:clamp(1.25rem, 1.159rem + 0.45vw, 1.5rem);/*24-20*/
font-weight:800;
text-align:center;
padding:10px 0;
margin:50px auto 10px;}
#about > b{
display:block;
font-family:'M PLUS 1', sans-serif;
font-size:clamp(1rem, 0.909rem + 0.45vw, 1.25rem);/*20-16*/
border-bottom:1px solid #ff3900;
text-align:center;
padding:0 0 10px;
margin:30px auto 10px;}
#about h4 + b{margin-top:10px;}
@media screen and (max-width:640px){
#about h4{padding:5px 0; margin:30px auto 10px;}
#about > b{padding:0 0 5px; margin:20px auto 10px;}}

/*テキストリンク*/
#about ul li > a{color:#ff9000; text-decoration:underline; transition:color .2s ease;}
#about ul li > a:hover{color:#ffcc00; text-decoration:none;}

/*リスト*/
ul.num.brackets > li {padding-left:35px;}
ul.num.brackets li:first-child::before{content:"(1)";}
ul.num.brackets li:nth-child(2)::before{content:"(2)";}
ul.num.brackets li:nth-child(3)::before{content:"(3)";}
ul.num.brackets li:nth-child(4)::before{content:"(4)";}
ul.num.brackets li:nth-child(5)::before{content:"(5)";}
ul.num.brackets li:nth-child(6)::before{content:"(6)";}
ul.num.brackets li:nth-child(7)::before{content:"(7)";}
ul.num.brackets li:nth-child(8)::before{content:"(8)";}
ul.num.brackets li:nth-child(9)::before{content:"(9)";}
ul.num.brackets li:nth-child(10)::before{content:"(10)";}
ul.num.brackets li:nth-child(11)::before{content:"(11)";}
ul.num.brackets li:nth-child(12)::before{content:"(12)";}
ul.num.brackets li:nth-child(13)::before{content:"(13)";}
ul.num.brackets li:nth-child(14)::before{content:"(14)";}
ul.num.brackets li:nth-child(15)::before{content:"(15)";}

/*ボタン*/
.btn-back{color:#ff3900;}
.btn-back:hover{background:#ff3900; border:2px solid #ff3900;}
.btn-back.apply{font-size:clamp(1.375rem, 1.284rem + 0.45vw, 1.625rem); text-align:center;}

.message{font-family:'M PLUS 1', sans-serif; font-size:clamp(1rem, 0.909rem + 0.45vw, 1.25rem);/*20-16*/ text-align:center; line-height:1.8rem; margin:40px auto;}

/*
================================================================================================================
応募フォーム
================================================================================================================
*/
.apply h3{background:#ff3900 !important; font-size:26px !important; padding:15px 0 !important;}
.apply .text{text-align:center; margin:20px auto;}

.apply dl > *{position:relative; padding:10px;}

.apply dl dt{background:#0070ff; border-radius:5px 5px 0 0; border:1px solid #0070ff; border-bottom:none;}
.apply dl dd{color:#000; background:#fff; border-radius:0 0 5px 5px; border:1px solid #0070ff; border-top:none;}
.apply dl dd + dt{margin-top:20px;}
.apply dl dt p{font-weight:bold; padding-right:60px;}

.apply dl dt::before{
display:block;
content:"任意";
position:absolute;
top:5px;
right:5px;
color:#fff;
background:#333;
font-weight:normal;
font-size:13px;
border-radius:3px;
line-height:100%;
padding:5px 10px;}
.apply dl dt.must::before{content:"必須"; background:#f00;}
@media screen and (max-width:640px){.apply dl dt::before{font-size:11px;}}

.apply dl dt .ast{line-height:150%;}

/*
=========================
フォーム関連
=========================
*/
.apply dl input[type=text],
.apply dl textarea,
.apply dl select{width:100%; max-width:400px; padding:5px; margin:0 auto 0 0; border:1px solid #999;}

.apply dl input[type=text]:focus,
.apply dl textarea:focus,
.apply dl select:focus{border:1px solid #000; outline:none;}

.apply dl textarea{height:60px; margin:5px auto 0 0;}
.apply dl label{padding-left:10px; font-size:13px; font-weight:bold; cursor:pointer;}

.apply dl dd > ul{display:flex; flex-wrap:wrap; align-items:center;}
.apply dl dd > ul li:nth-child(odd){width:140px; font-size:13px; font-weight:bold;}
.apply dl dd > ul li:nth-child(even){width:calc(100% - 140px);}
.apply dl dd > ul li:nth-child(even) input[type=text]{max-width:250px;}
.apply dl dd > ul li:nth-child(3),
.apply dl dd > ul li:nth-child(4){margin-top:10px;}

/*
================================================================================================================
同意確認チェックボックス
================================================================================================================
*/
input[type="checkbox"]{display:none !important; border:0 !important; margin:0 !important;}

.input-checkbox{
position:relative;
width:340px;
font-size:18px;
font-weight:700;
font-family:'Noto Sans JP', sans-serif;
text-align:left;
line-height:30px;
letter-spacing:2px;
padding:0 0 0 40px;
margin:20px auto;
z-index:5;}

.input-checkbox label{display:inline-block; cursor:pointer;}

.input-checkbox label:before,
.input-checkbox label:after{content:""; position:absolute; display:inline-block; transition:transform .2s ease;}

.input-checkbox label:before{
top:0;
left:0;
width:30px;
height:30px;
background:#fff;
border:2px solid #000;}

.input-checkbox label:after{
top:-4px;
left:10px;
width:10px;
height:30px;
border-right:4px solid transparent;
border-bottom:4px solid transparent;
transform:rotate(45deg);
transition:border-bottom-color,border-right-color .2s ease;}

.input-checkbox input[type="checkbox"]:checked + label:before{opacity:1;}
.input-checkbox input[type="checkbox"]:checked + label:after{border-color:#de0011;}

.input-checkbox a{text-decoration:underline;}
.input-checkbox a:hover{text-decoration:none;}

@media screen and (max-width:480px){
.input-checkbox{width:270px; font-size:14px; line-height:24px; padding:0 0 0 30px;}
.input-checkbox label:before{width:24px; height:24px;}
.input-checkbox label:after{top:-8px;}}