@charset "utf-8";
body.active {
    touch-action: none;
    overflow: hidden !important;
    -webkit-user-select: none;
}

html.active {
    touch-action: none;
    overflow: hidden !important;
    overscroll-behavior: none;
    -webkit-user-select: none;
}
/* button */
.com_btn_box01 {
    display: flex;
    justify-content: center;
}
.com_btn_box01.flex-end {
    justify-content: flex-end;
}
.commonBtn01 {
    width: 140px;    
    height: 40px;
    text-align: center;    
    border-radius: 500px;
    font-size: 16px;
    font-weight: 600;
    color: #FF0707;
    transition: all 0.3s ease-in-out;
    border: 1px solid #FF0707;
    box-shadow: 0px 0px 20px 0px rgba(255, 7, 7, 0.00);
}

.commonBtn01.type02 {
    background: #FF0707;
    color: #fff;
}

.commonBtn01:hover {
    background: #FF0707;
    box-shadow: 0px 5px 10px 0px rgba(255, 7, 7, 0.50);
    color: #fff;
    transform: scale(1.04);
}

.commonBtn02 {
    width: 300px;
    height: 70px; 
    padding: 0 30px;
    font-size: 20px;
    font-weight: 400;
    color: #f7f7f7;
    transition: all 0.3s ease-in-out;
    display: flex;
    justify-content: space-between;
    align-items: center;
    border-radius: 99px;
    background: #383838;
    border: 1px solid transparent;
}

.commonBtn02.type02 {
    border-color: #ff0707;
    background-color: transparent;
}
.commonBtn02.type03 {
    background-color: transparent;
    border-color: #222;
    color: #222;
}

.commonBtn02.type03.red {
    border-color: #FF0707;
}

.commonBtn02.type01:hover {
    box-shadow: 0px 0px 20px 0px rgba(255, 255, 255, 0.25);
    font-weight: 600;
}
.commonBtn02.type02:hover {
    box-shadow: 0px 0px 20px 0px #FF0707;
    background-color: #FF0707;
    transform: scale(1.04);
}
.commonBtn02.type03:hover {
    box-shadow: 0px 0px 20px 0px rgba(0, 0, 0, 0.25);
    background-color: #222;
    color: #fff;
    transform: scale(1.04);
}
.commonBtn02.type03.red:hover {
    box-shadow: 0px 0px 20px 0px rgba(255, 7, 7, 0.50);
    background-color: #FF0707;    
}
.commonBtn02.type03:hover img {
    filter: brightness(0) invert(1);
}

@media all and (max-width:1760px) {
    .commonBtn01 {
        width: 130px;
        height: 35px;
        font-size: 14px;
    }   
}

@media all and (max-width:1400px) {
    .commonBtn01 {
        width: 110px;
        height: 30px;
        font-size: 13px;
    }   
}
/* END button */

/* video */
video,
.video-container {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/* END video */

/* contactWapper */
.contactWapper {
    z-index: 4;
}
.com_input_box {
    border-radius: 15px;
    overflow: hidden;
    border: 1px solid #dedede;
    background-color: #fff;
    height: 70px;
    padding: 0 20px;
}
.com_input_box input {
    width: 100%;
    height: 100%;
    border: unset;
    outline: unset;
    font-size: 18px;
    font-weight: 400;
    background-color: transparent;
}
.com_input_box input::placeholder {
    color: #666;
}
.com_input_flex_box {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    gap: 15px;
}
.com_input_flex_box + .com_input_flex_box {
    margin-top: 15px;
}
.com_input_flex_box .com_input_box {
    width: calc(50% - 7.5px);
}
.com_input_flex_box02 {
    display: flex;
    gap: 30px;
}
.com_input_flex_box02 .com_input_sub_box {
    width: calc(50% - 15px);
    display: flex;
    gap: 35px;
}
.com_input_sub_flex_box {
    display: flex;
    gap: 20px;
}
.com_input_sub_flex_box > div {
    width: calc(50% - 10px);
}
.com_input_sub_flex_box > div + div {
    margin-top: unset !important;
}
.com_input_box.flex {
    display: flex;
    gap: 5px;
    font-size: 18px;
    font-weight: 400;
    align-items: center;
    width: 100%;
}
.com_label_flex_box {
    display: flex;
    gap: 40px;
}
.com_label01 {
    display: flex;
    align-items: center;
    gap: 10px;
    font-size: 18px;
    font-weight: 400;
    color: #222;
}
.com_label01 input {
    appearance: none;
    width: 36px;
    height: 36px;
    border-radius: 50%;
    background: url('/img/input_chk01.png') no-repeat center / cover;
    cursor: pointer;
}

.com_label01 input:checked {    
    background: url('/img/input_chk01_active.png') no-repeat center / cover;
}
.com_input_box + .com_input_box {
    margin-top: 15px;
}
.com_input_flex_box .com_input_box + .com_input_box {
    margin-top: unset;
}
.com_input_flex_box + .com_input_box {
    margin-top: 15px;
}

.com_textarea {
    width: 100%;
    height: 300px;
    resize: unset;
    padding: 12px 20px;
    border-radius: 15px;
    border: 1px solid #dedede;
    background-color: transparent;
    margin: 30px 0;
    font-size: 18px;
    font-weight: 400;    
    line-height: 2.3em;
}
.com_textarea::placeholder {
    color: #666;
}
.com_input_file_flex_box {
    display: flex;
    gap: 20px;
    height: 70px;
}
.com_input_file_flex_box .com_input_file_name {
    display: flex;
    align-items: center;
    width: calc(100% - 320px);
    height: 100%;
    border: 1px solid #dedede;
    background-color: transparent;
    border-radius: 15px;
    padding: 12px 20px;
    font-size: 18px;
    font-weight: 400;
}
.com_input_file_flex_box .com_file_input input {
    display: none;
}
.com_input_file_flex_box .com_file_input {
    width: 300px;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    border-radius: 135px;
    border: 1px solid #222;
    background-color: transparent;
    font-size: 18px;
    font-weight: 400;
}
.com_input_file_flex_box + .com_input_file_flex_box {
    margin-top: 30px;
}
.com_chk02 {
    font-size: 18px;
    color: #222;
    font-weight: 400;
    display: flex;
    align-items: center;
    gap: 10px;
}
.com_chk02 input {
    appearance: none;
    width: 36px;
    height: 36px;
    background: url('/img/input_chk02.png') no-repeat center / cover;
}
.com_chk02 input:checked {
    background: url('/img/input_chk02_active.png') no-repeat center / cover;
}
.txt_underline {
    text-decoration: underline;
}
select.com_select {
	cursor: pointer;
	width: 100%;
	height: 100%;
	border: unset;
	outline: unset;
	padding-right: 10px;
	font-size: 18px;
    font-weight: 400;
	background: transparent url('/img/select_arw.png') no-repeat center right / 22px;
}

select.com_select option:disabled {
	color: #666;
}
@media all and (max-width:1024px) {
    .com_input_box {
        height: 60px;
    }
    .com_input_flex_box02 {
        flex-wrap: wrap;
        gap: 15px;
    }
    .com_input_flex_box .com_input_box,
    .com_input_flex_box02 .com_input_sub_box {
        width: 100%;
    }
    .com_input_box input {
        font-size: 16px;
    }
    .com_input_sub_flex_box {
        margin-left: auto;
    }
    .com_textarea {
        margin: 15px 0;
        font-size: 16px;
    }
    select.com_select,
    .com_input_box.flex,
    .com_label01,
    .com_chk02 {
        font-size: 16px;
    }
    .com_textarea {
        height: 200px;
    }
    .com_input_file_flex_box {
        height: 60px;
    }
    .com_input_file_flex_box .com_input_file_name {
        width: calc(100% - 220px);
        font-size: 16px;        
    }
    .com_input_file_flex_box .com_file_input {
        width: 200px;
        font-size: 16px;        
    }
}

@media all and (max-width:700px) {
    .com_input_flex_box02 .com_input_sub_box{
        flex-direction: column;
    }
    .com_input_sub_flex_box  {
        width: 100%;
    }
    .com_input_flex_box02 .com_input_sub_box {
        gap: 15px;
    }
    select.com_select {
        background: transparent url(/img/select_arw.png) no-repeat center right / 16px;
    }
    .com_input_box,
    .com_input_file_flex_box {
        height: 50px;
    }
    .com_input_box input {
        font-size: 14px;
    }
    .com_input_file_flex_box .com_input_file_name {
        width: calc(100% - 150px);        
    }
    .com_input_file_flex_box .com_file_input {
        width: 150px;        
    }
}
/* END contactWapper */

/* devPortCon */
.con.devPortCon {
    padding: 150px 0 100px;
    z-index: 3;
}
/* END devPortCon */