
.red {color:#ee0000; }

body { display: flex; flex-direction: column; align-items: center; }

:is(.solo_s_04, .grid_s_07, .solo_adds_02, .grid_s_03) img { width: 100%; }
#add_section02 { background-size: cover; } 

/* PC 
------------------------------------------------------------------------------------------------------------*/

.scroll_banner { position:absolute; top:200px; right:100px; z-index:1000; text-align:center; }
.scroll_banner .close { position:absolute; top:8px; right:8px; color:#fff; line-height:30px; font-weight:400; font-size:1.4em; cursor: pointer; display: inline-block; }
.scroll_banner a { display:block; background-color:#6a0906; border-radius:30px; width:150px; height:150px; padding-top:22px; color:#fff; font-size:20px; letter-spacing:-2px; }
.scroll_banner i { color:#fff; padding-right:10px;}

@media screen and (max-width:1400px)  {
.scroll_banner {display:none;}
}


/*form */

.form1 { width:100%; margin:0 auto; text-align:center; background-color:#f3f3f3; }
.form1 .inner { margin:0 auto; padding:50px 10px; }
.form1 .inner h1 { font-weight:600; font-size:46px; line-height:120%; display:block; width:100%; margin-bottom:20px; color:#000; letter-spacing:-2px; }
.form1 .inner h1 span {color:#96561e}

.form1 .formArea { width: 80%; min-width:340px; max-width:720px; margin:0 auto; overflow: hidden; }
.form1 .formGroup { text-align:center; }

.form1 .form_table { width:100%; border-collapse:collapse; font-size:1em; border-top:1px solid #d7d7d7; }
.form1 .form_table tbody tr { border-bottom:1px solid #d7d7d7; }
.form1 .form_table tbody th { padding:12px 12px 12px 12px; vertical-align:middle; text-align:right; line-height:100%; font-size:18px; font-weight:600;  letter-spacing:-2px; }
.form1 .form_table tbody td { padding:12px 12px 12px 12px; vertical-align:middle; text-align:left; line-height:100%; font-size:18px; }

.form1 .input_style:focus, .wrap .sel_style:focus, .wrap .textarea_style:focus { border-color:#303f99; -webkit-box-shadow:inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #fff; box-shadow:inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #fff; }

.form1 label { float:left; padding:10px 0; width:40%; }
.form1 .input_style { width:100%; padding-left:10px; height:42px; border:1px solid #ccc; font-size:18px; }
.form1 .sel_style { width:100%; padding-left:10px; height:42px; border:1px solid #ccc; font-size:18px; vertical-align:middle;}
.form1 .textarea_style { width:100%; padding:10px; height:90px; border:1px solid #ccc; font-size:18px; resize:none; }

.form1 .submit_box { width:100%; padding-top:10px; margin-bottom:10px;  }
.form1 .submit_box .btn01 { width:76%; text-align:center; font-weight:600; font-size:32px;letter-spacing:-2px; margin-top:10px; cursor:pointer; background-color:#6a0906; color:#fff; padding:15px 0; border-radius:10px; }
.form1 .submit_box .btn01 img { width:100%; }



label input { vertical-align:middle; }


/* MOBILE
------------------------------------------------------------------------------------------------------------*/

.top_fix { position:fixed; width: 100%; min-width:320px; background:#fff; z-index:1000; letter-spacing:-1px; cursor: pointer; text-align: center; }
.top_fix .left { position:absolute; top:16px; left:10px; }
.top_fix img { width:100%; }
.top_fix .left a { color:#000; font-size:1.2em; font-weight:500; }

.top_fix .right { position:absolute; top:9px; right:10px; }
.top_fix .right a { padding:8px 12px; background:#6a0906; font-size:1.1em; color:#fff; font-weight:500; text-align:center; display:inline-block; cursor:pointer; }


/*form */


.formGroup:before, .formGroup:after { content: " "; display:table; }
.formGroup:after { clear:both; }
.m_form1 { background-color:#f3f3f3; }
.m_form1 .inner { max-width:720px; margin:0 auto; padding:40px 0; }
.m_form1 .inner h1 { font-size:28px; font-weight:600; line-height:120%; letter-spacing:-2px; color:#000; }
.m_form1 .inner h1 span { color:#96561e; }
.m_form1 .formArea {  margin:0 auto; overflow: hidden; padding:10px; }
.m_form1 .formGroup { margin-bottom:12px; text-align:center; }

.m_form1 .form_table { width:100%; padding:0; border-collapse:collapse; border-top:1px solid #d7d7d7;}
.m_form1 .form_table tbody th { padding:6px 5px; vertical-align:middle; text-align:right; line-height:24px; font-size:16px; font-weight:500; letter-spacing:-2px; }
.m_form1 .form_table tbody td { padding:6px 5px; vertical-align:middle; text-align:left; line-height:24px; font-size:14px; }
.m_form1 .form_table tbody tr {border-bottom:1px solid #d7d7d7;}

.m_form1 label { float:left; padding:6px 0; width:40%; }
.m_form1 .input_style:focus, .m_wrap .sel_style:focus, .m_wrap .textarea_style:focus { border-color:#303f99; -webkit-box-shadow:inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #fff; box-shadow:inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #fff;}

.m_form1 .input_style { padding-left:5px; height:36px; border:1px solid #ccc; font-size:14px; }
.m_form1 .sel_style { width:100%; height:36px; border:1px solid #ccc; font-size:14px; vertical-align:middle; background-color:#fff;}
.m_form1 .textarea_style { width:100%; padding:6px; height:60px; border:1px solid #ccc; font-size:14px; resize:none;}

.m_form1 .submit_box { width:100%; text-align:center; }
.m_form1 .submit_box button { width:90%; font-weight:600; font-size:22px; letter-spacing:-2px; cursor:pointer; color:#fff; max-width:500px; margin-top:10px; background-color:#6a0906; color:#fff; padding:12px 0; border-radius:10px; }
.m_form1 .submit_box .btn01 img { width:100%; }

/* popup CSS */
.complete_wrap { position: fixed;top: 0;left: 0;width: 100%;height: 100vh;z-index:10000; display:none;} 
.complete_wrap .bg { position: fixed;top: 0;left: 0;width: 100%;height: 100vh;background: rgba(0,0,0,0.8);z-index: 10001; }
.complete_wrap .inner { position: absolute;top: 50%;left: 50%;transform: translate(-50%,-50%); height: 365px; max-height: 90vh;background: #fff;z-index: 10002; }
.complete_wrap .inner { width:90%; overflow:hidden; border-bottom:0px solid #000; background-color:none;color:#fff; font-size:14px; line-height:0; max-width:500px; margin:0 auto;}
.complete_wrap .inner .close { position: absolute;top: 20px;right: 20px; width:20px; font-weight:600; }
.complete_wrap .inner .close img { width: 100%;height: 100%; }
.complete_wrap .inner .iframe { height:100%;width:100%;border:0; overflow:hidden;}


@media screen and (min-width: 768px) {
  #visual, .top_fix img { width: 800px; }
}

.footerBottom { white-space: nowrap; }