/* ##############################
 * Created on : 2025/08/15
 * @version 1.00
 * @copyright Heaven-studio.com
 * @author Myazou3(Toshiyasu.Tkamoto)
##############################  */


.selectbox-1 { position: relative; }
.selectbox-1::before,
.selectbox-1::after { position: absolute; content: ''; pointer-events: none; }
.selectbox-1::before { display: inline-block; right: 0; width: 2.8em; height: 48px; border-radius: 0 8px 8px 0; background-color: #ee741d; }
.selectbox-1::after { position: absolute; top: 50%; right: 1.4em; transform: translate(50%, -50%) rotate(45deg); width: 6px; height: 6px; border-bottom: 3px solid #fff; border-right: 3px solid #fff; }
.selectbox-1 select { appearance: none; min-width: 230px; height: 48px; padding: .4em 3.6em .4em .8em; border: none; border-radius: 8px; background-color: #eaedf2; color: #333; font-size: 1em; cursor: pointer; margin-left: 40px; }
.selectbox-1 select:focus { outline: 2px solid #eaedf2; }


/*### Form ###*/
.Form { margin-top: 80px; margin-left: auto; margin-right: auto; max-width: 720px; }
.Form-Item { border-top: 1px solid #ddd; padding-top: 24px; padding-bottom: 24px; width: 100%; display: flex; align-items: center; margin: 0 auto; box-sizing: border-box; }
.Form-Item:nth-child(5) { border-bottom: 1px solid #ddd; }
.Form-Item-Label { width: 100%; max-width: 248px; letter-spacing: 0.05em; font-weight: bold; font-size: 18px; }
.Form-Item-Label.isMsg { margin-top: 8px; margin-bottom: auto; }
.Form-Item-Label-Required { border-radius: 6px; margin-right: 8px; padding-top: 8px; padding-bottom: 8px; width: 48px; display: inline-block; text-align: center; background: #ee741d; color: #FFF; font-size: 14px; }
.Form-Item-Input { border: 1px solid #ddd; border-radius: 6px; margin-left: 40px; padding-left: 1em; padding-right: 1em; height: 48px; flex: 1; width: 100%; max-width: 420px; min-width: 300px; background: #eaedf2; font-size: 18px; }
.Form-Item-Textarea { border: 1px solid #ddd; border-radius: 6px; margin-left: 40px; padding: 1em; height: 216px; flex: 1; width: 100%; max-width: 420px; min-width: 300px; background: #eaedf2; font-size: 18px; line-height: 24px; }
.Form-Btn { border-radius: 8px; margin-top: 32px; margin-left: auto; margin-right: auto; padding-top: 15px; padding-bottom: 15px; width: 200px; display: block; letter-spacing: 0.05em; background: #ee741d; color: #fff; font-weight: bold; font-size: 20px; }
/* ### フレキシブル ###  */
@media screen and (max-width: 480px) {
    .selectbox-1 select { margin-left: 0; }
    .Form { margin-top: 40px; } 
    .Form-Item { padding-left: 14px; padding-right: 14px; padding-top: 16px; padding-bottom: 16px; flex-wrap: wrap; } 
    .Form-Item-Label { max-width: inherit; display: flex; align-items: center; font-size: 15px; } 
    .Form-Item-Label.isMsg { margin-top: 0; } 
    .Form-Item-Label-Required { border-radius: 4px; padding-top: 4px; padding-bottom: 4px; width: 32px; font-size: 10px; } 
    .Form-Item-Input { margin-left: 0; margin-top: 18px; height: 40px; flex: inherit; font-size: 15px; } 
    .Form-Item-Textarea { margin-top: 18px; margin-left: 0; height: 200px; flex: inherit; font-size: 15px; } 
    .Form-Btn { margin-top: 24px; padding-top: 8px; padding-bottom: 8px; width: 160px; font-size: 16px; }
}

@media screen and (max-width: 768px) {
    .selectbox-1 select { margin-left: 0; }
    .Form { margin-top: 40px; }
    .Form-Item { padding-left: 14px; padding-right: 14px; padding-top: 16px; padding-bottom: 16px; flex-wrap: wrap; }
    .Form-Item-Label { max-width: inherit; display: flex; align-items: center; font-size: 15px; }
    .Form-Item-Label.isMsg { margin-top: 0; }
    .Form-Item-Label-Required { border-radius: 4px; padding-top: 4px; padding-bottom: 4px; width: 32px; font-size: 10px; }
    .Form-Item-Input { margin-left: 0; margin-top: 18px; height: 40px; flex: inherit; font-size: 15px; width: 100%; max-width: 100%; }
    .Form-Item-Textarea { margin-top: 18px; margin-left: 0; height: 200px; flex: inherit; font-size: 15px; width: 100%; max-width: 100%; }
    .Form-Btn { margin-top: 24px; padding-top: 8px; padding-bottom: 8px; width: 160px; font-size: 16px; }
}
