@charset "utf-8";
/*공통속성*/
.bg_gray{background:#fafafa;}
.input_box, .select_box{width:100%;}
.input_box, .file_box .input_box, .select_box .select_box{width:auto;}
.input_box input{width:100%; }
.reset_btn{padding:0 15px;  text-align: center; cursor: pointer;  background:#00928a; color:#fff; font-weight: 500; border-radius: 3px; 
	transition: opacity linear 0.1s; white-space:nowrap; line-height:40px;}

.input_box input, .select_box select{border-radius:3px; }
.input_box input{border: 1px solid #ddd; padding:0 5px; cursor: pointer; line-height:38px; font-size:16px;}
.input_box_single input{max-width:none;}
.input_box input:focus{outline: none;}
.select_box select{border: 1px solid #ddd; padding:0 5px; height:40px; line-height:40px; min-width:230px;}
.select_box select:focus{outline: none;}
.textarea_box textarea{width:100%; max-width:650px; border: 1px solid #ddd; padding:0 5px; height:200px; border-radius:3px; font-size:16px;}
.textarea_box{display:block; width:100%;}

/* radio_box */
.radio_box{display:flex; }
label { font-size: 18px; line-height: 2rem; padding: 0.2em 0.4em; }  
[type="radio"], span { vertical-align: middle; }  
[type="radio"] { appearance: none; border: max(2px, 0.1em) solid gray; border-radius: 50%; width: 1.25em; height: 1.25em; transition: border 0.5s ease-in-out; }  
[type="radio"]:checked { border: 0.4em solid #00928a; }  
[type="radio"]:focus-visible { outline-offset: max(2px, 0.1em); outline: max(2px, 0.1em) dotted #00928a; }  
[type="radio"]:hover { box-shadow: 0 0 0 max(4px, 0.2em) lightgray; cursor: pointer; }  
[type="radio"]:hover + span { cursor: pointer; }  
[type="radio"]:disabled { background-color: lightgray; box-shadow: none; opacity: 0.7; cursor: not-allowed; }  
[type="radio"]:disabled + span { opacity: 0.7; cursor: not-allowed; } 

.tit{font-size:18px; font-weight:600;}

.btn_box{width:100%; text-align:center;}
.btn_box button{display:inline-block;; width:50%; height:50px; line-height: 50px; background: #239474; color:#fff; font-size: 24px; font-weight: 700;
	border-radius:3px;}

.file_box{display:flex; gap:10px; width:100%;}
.file_box input{color:#777;}
.file_box input.file {display: none;}
.file_box label {all: unset;  padding:0 15px;  text-align: center; cursor: pointer;  background:#239474; color:#fff; font-weight: 500; border-radius: 3px; 
	transition: opacity linear 0.1s; white-space:nowrap; line-height:40px;}

/* CONTACT */
.basic_box_wrap{display:flex; flex-direction: column; gap:50px;}
.basic_box{display:flex; flex-direction: column; gap:30px;}
.info_box {display:grid; grid-template-columns:1fr 1fr; gap:25px; }
.info_tit_box{margin:0; background:#fafafa; padding:10px 15px; border-radius:3px; display:flex; gap:8px; align-items:center; }
.info_tit{font-size:24px; font-weight:600;}
.info_tit_box i{font-size:1.2em;}
.info_box .info_list{display:flex; gap:25px; border-bottom: 1px solid #ddd; padding-bottom: 20px; align-items:center;}
.info_box .info_list:last-child{border-bottom:none;}
.info_box .info_list .tit_box{white-space:nowrap; flex-basis:130px; }
.info_box2 {grid-template-columns:1fr;}



@media screen and (max-width: 1023px){
	/*공통속성*/
	.input_box input{font-size:15px;}
	.textarea_box textarea{font-size:15px;}
	.tit{font-size:16px;}
	
	/* radio_box */
	.radio_box{display:flex; }
	label { font-size: 16px;}

	.btn_box button{width:50%; font-size: 20px;}


	/* CONTACT */
	.info_tit{font-size:20px;}
	.info_box .info_list .tit_box{flex-basis:100px; }
 }

@media screen and (max-width: 767px){
	/*공통속성*/
	.input_box input{font-size:14px;}
	.textarea_box textarea{font-size:14px;}
	.tit{font-size:14px;}
	.btn_box button{width:100%; font-size: 18px;}

	/* CONTACT */
	.info_tit{font-size:16px;}
	.info_box{grid-template-columns:1fr; }
	.info_box .info_list .tit{font-size:16px;}

	/* radio_box */
	label { font-size: 14px;}
	[type="radio"] {border: 1px solid gray; width: 1em; height: 1em;}  
	[type="radio"]:checked { border: 0.3em solid #00928a; }  
	[type="radio"]:hover { box-shadow: 0 0 0 max(2px, 0.2em) lightgray; }  
 }

@media screen and (max-width: 500px){
	.info_box .info_list{flex-direction:column; align-items:flex-start;  gap:15px; }
	.info_box .info_list .tit_box{flex-basis:auto; }

 }


