@charset "utf-8";

.t_color{
	color:#82c7cd;
}
#ctt .page_btns {
	display:grid;
	grid-template-columns:1fr 1fr;
	width:610px;
	padding:6px;
	gap:6px;
	border:1px solid #ddd;
	border-radius:5rem;
	margin:0 auto 8rem;
}
#ctt .page_btns a {
	display:block;
	text-align:center;
	font-size:2rem;
	font-weight:bold;
	padding:2.5rem;
	border-radius:5rem;
}
#ctt .page_btns a.on {
	color:#fff;
	background-color:#8408ef;
}

#ctt h4{
	display:flex;
	justify-content:space-between;
	align-items:center;
	font-size:4rem;
	border-bottom:3px solid #333;
	padding-bottom:3rem;
}
#ctt h4 strong .sm{
	font-weight:500;
	font-size:2.5rem;
}
#ctt h4 p {
	font-size:1.8rem;
	font-weight:400;
	color:#333;
}
#ctt h4 p span{
	position:relative;	
}
#ctt .text {
	line-height:2;
	margin-bottom:3rem;
}

.agreebox {
	height:400px;
	border:1px solid #ddd;
	padding:3.5rem;
	border-top:2px solid #333;
	margin-bottom:2rem;
	overflow:auto;
}
.agreebox::-webkit-scrollbar {
	background:#f0f0f0;
}
.agreebox::-webkit-scrollbar-thumb { 
	border-radius:20px;
    background-color: #333;
}

.agreebox h5 {
	font-size: 2.4rem;
    margin-bottom: 2rem;
}
.agreebox .conbox_wrap {
	margin-bottom:3rem;
	line-height: 1.75em;
}
.agreebox .conbox_wrap .toptxt {
	margin-bottom:1rem;
}
.agreebox .list_type01 li {
	position:relative;
	padding-left: 14px;
}
.agreebox .table {
	overflow:auto;
}
.agreebox table {
	width:100%;
	min-width :1080px;
	text-align: center;
	border-collapse: collapse;
}
.agreebox table th,
.agreebox table td {
	padding: 1.5rem 0;
	border-right:1px solid #ddd;
}
.agreebox table th:last-child,
.agreebox table td:last-child {
	border-right:0;
}
.agreebox table thead {
	border-top: 2px solid #333;
	border-bottom: 1px solid #333;
}
.agreebox table th.spanbd {
	border-top: 1px solid #ddd;
}
.agreebox table td {
	color: #555;
	border-bottom: 1px solid #ddd;
}

.tb_wrap {
	border-top:2px solid #333;
	margin-bottom:2rem;
	overflow:auto;
}
.tb_wrap table {
	width:100%;
	min-width:1080px;	
	text-align:left;
}
.tb_wrap tr{
	border-bottom:1px solid #ddd;
}
.tb_wrap th,
.tb_wrap td{
	padding:2rem;
	color:#333;
}
.tb_wrap th{
	font-weight:500;
	border-right:1px solid #ddd;
}
.tb_wrap td{
	font-weight:400;
	line-height:1.625em;
	background-color:#fff;
}
.tb_wrap td .con {
	margin-bottom:1rem;
}
.tb_wrap td .dottxt {
	font-size:1.6rem;
	margin:0;
}
.tb_wrap td strong{
	color:#82c7cd;
}

.agreewrap {
	position:relative;
	display:flex;
	justify-content:space-between;
	margin:2.5rem 0 8rem;
}
.agreewrap p {
	font-size:1.8rem;
	font-weight:500;
}
.agreewrap p span {
	vertical-align:middle;
}
input + .radiobox {
	display:inline-block;
	width:15px;
	height:15px;
	padding:3px;
	border:1px solid #ddd;
	border-radius:50%;
	margin-right:5px;
	background-color:#fff;
	background-clip:content-box;
}

.btn_wrap {
	display:flex;
	justify-content:center;
	gap:1rem;
}
.btn_wrap a, .btn_wrap input {
	display: block;
    color: #333;
    max-width: 32rem;
	width:100%;
    font-weight: 500;
    font-size: 2rem;
    text-align: center;
    padding: 2rem 1rem;
    border: 2px solid #333;
    border-radius: 4rem;
	background-color:#fff;
}
.btn_wrap a:hover, .btn_wrap input:hover {
	color:#fff;
	border:2px solid transparent;
}
/* =================================== */
/* 폼 입력 */
/* =================================== */

.inputbox {
	display:grid;
	grid-template-columns: 23rem 1fr;
	padding:3rem 0;
	border-bottom:1px solid #ddd;
}
.inputbox .subtxt {
	color:#777;
	font-size:1.6rem;
	line-height:1.4;
	margin-top:1rem;
	margin-bottom:0;
}
.inputbox .subtxt strong {
	font-weight:500;
}
.inputbox > .hdlabel{
	display:flex;
	height:100%;
	align-items:center;
	font-size:1.8rem;
	font-weight:bold;
}
.inputbox > .hdlabel.short{
	max-height:20px;
}
.inputbox > .hdlabel span {
	margin-left:1rem;
	translate:0 3px;
}
.inputbox input, .inputbox select, .inputfile {	
	border:1px solid #ddd;
	background-color:#fff;
}
.inputbox input,
.inputbox select, 
.inputfile,
.btn{
	height:50px;
	line-height:50px;
	padding:0 1.5rem;
}
input + .radiobox {
	display:inline-block;
	width:15px;
	height:15px;
	padding:3px;
	border:1px solid #ddd;
	border-radius:50%;
	margin-right:5px;
	cursor:pointer;
	background-color:#fff;
	background-clip:content-box;
}

input + .checkbox {
	display:inline-block;
	width:16px;
	height:16px;
	border:1px solid #ddd;
	border-radius:3px;
	margin-right:5px;
	background-color:#fff;
	background-image:url("/theme/basic/img/check_w.png");
	background-repeat:no-repeat;
	background-position:center center;
}
input:checked + .checkbox {
	border:1px solid transparent;
	background-color:#82c7cd;
}

.btn {
	display:inline-flex;
	align-items:center;
	justify-content:center;
	width:18rem; 
	border:2px solid #000;
	cursor:pointer;
}

.input_wrap{
	margin-bottom:7rem;
}

.inputbox .mb {
	margin-bottom:1.5rem;
}
.inputbox .boxtype01 label{
	margin-right:1rem;
}
.inputbox .boxtype01 input {
	width:40%;
	margin-right:2.5rem;
}

.inputbox .boxtype02 input {
	width:16%;
	margin-right:1rem;
}
.inputbox .boxtype02 span{
	margin-right:1rem;
}

.inputbox .boxtype03 input,
.inputbox .boxtype03 select {	
	margin-right:1rem;
}
.inputbox .boxtype03 input{
	width:16%;
}
.inputbox .boxtype03 select {
	width:10%;
	padding-left:1rem;
}
.inputbox .boxtype03 span{
	margin-right:1rem;
}

.inputbox .boxtype04{
	position:relative;
}
.inputbox .boxtype04 .inputfile{
	display:inline-block;
	width:50%;
	margin-right:1rem;
}

.inputbox .boxtype05{
	position:relative;
}
.inputbox .boxtype05 .inputfile{
	display:inline-block;
	width:50%;
	margin-right:1rem;
}

.inputbox .boxtype06 input{
	width:40%;
}
.inputbox .boxtype06 p {
	margin:1.5rem 0;
}
.inputbox .boxtype06 a{
	display:inline-block;
	color:#fff;
	padding:1.5rem 5.5rem 1.5rem 1.5rem;
	border:2px solid #000;
	background-image:url('/theme/basic/img/link_white.png');
	background-repeat:no-repeat;
	background-position:right 2rem center;
	background-color:#333;
}
.inputbox .boxtype06 a:hover {
	border:2px solid transparent;
}

.inputbox .boxtype07 select{
	width:20%;
}

.inputbox .boxtype08 input {
	margin-bottom:1.5rem;	
}
.inputbox .boxtype08 input:first-child{
	width:20%;
}
.inputbox .boxtype08 input:not(:first-child){
	width:100%;
}
.inputbox .boxtype08 input:last-child{
	margin-bottom:0
}
.inputbox .boxtype08 .btn {
	margin-left:1rem;
	margin-bottom:1.5rem;
}

.inputbox .boxtype09 input:first-child{
	width:30%;
}
.inputbox .boxtype09 span{
	margin: 0 1rem;
}
.inputbox .boxtype09 input:nth-of-type(2){
	width:20%;
}
.inputbox .boxtype09 select{
	width:20%;
}
.inputbox .boxtype10 input{
	width:100%;
}

.inputbox .boxtype11{
	position: relative;
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 2rem;
}
.inputbox .boxtype12{
	position:relative;
	display:grid;
	grid-template-columns:repeat(4, 1fr);
	gap:2rem;
}
.inputbox .boxtype12 .ibox {
	grid-column: 1 / span 3;
}
.inputbox .boxtype12 .ibox {
	grid-column: 1 / span 3;
}
.inputbox .boxtype12 .ibox .writebox {
	width:40%;
	margin-left:2.5rem;
}

.inputbox .boxtype13 > strong {
	font-weight:500;
}
.inputbox .boxtype13 .box_wrap > div {
	margin-bottom: 2rem;
}
.inputbox .boxtype13 .box_wrap {
	position:relative;
	display:grid;
	grid-template-columns:repeat(4, 1fr);
	margin-top:1.5rem;
}

.inputbox .boxtype14 > strong {
	display:block;
	font-weight:500;
	margin-bottom:1.5rem;
}
.inputbox .boxtype14 textarea {
	width:100%;
	height:190px;
	border:1px solid #ddd;
}

.inputbox .boxtype15 {
	position:relative;
	display:grid;
	grid-template-columns:repeat(4, 1fr);	
}

.inputbox .boxtype16 {	
	display:grid;
	grid-template-columns:repeat(2, 1fr);	
}
.inputbox .boxtype16 > div {
	display:flex;
	align-items:center;
}
.inputbox .boxtype16 > div strong {
	color:#333;
	margin:0 1rem;
}
.inputbox .boxtype16 > div p {
	font-weight:500;
}
.inputbox .boxtype16 > div input {
	width:12rem;
	margin-right:1rem;
}

.inputbox .boxtype17 > div {
	display:flex;
	align-items:center;
	margin-bottom:2rem;
}
.inputbox .boxtype17 > div strong {
	color:#333;
	margin:0 1rem;
}
.inputbox .boxtype17 > div > p {
	font-weight:500;
	margin-right:2rem;
}
.inputbox .boxtype17 > div > div {
	margin-right:2rem;
}
.inputbox .boxtype17 > div input {
	width:12rem;
	margin:0 1rem;
}

.inputbox .boxtype18 > strong {
	font-weight:500;
}
.inputbox .boxtype18 .box_wrap > div {
	margin-bottom: 2rem;
}
.inputbox .boxtype18 .box_wrap {
	position:relative;
	display:grid;
	grid-template-columns:repeat(3, 1fr);
	margin-top:1.5rem;
}
.inputbox .boxtype18 .box_wrap:last-child > div {
	margin-bottom:0;
}
.inputbox .boxtype18 .box_wrap strong{
	margin-left:1rem;
	vertical-align:middle;
}

.inputbox .boxtype19 {
	position:relative;
}
.inputbox .boxtype19 > div{
	margin-bottom:1.5rem;
}
.inputbox .boxtype19 > div strong{
	margin-left: 1rem;
}
/* =================================== */
/* 폼 입력 끝 */
/* =================================== */
.f_footer {
	font-size:1.8rem;
	font-weight:500;
	text-align:center;
	padding:4rem;
	border:3px solid #8408ef;
	border-radius:3rem;
	margin-bottom:6rem;
}

.btn_wrap {
	display:flex;
	justify-content:center;
	gap:1rem;
}
.btn_wrap a, .btn_wrap button, .btn_wrap input {
	display:inline-block;	
	width:25rem;
	font-size:1.8rem;
	font-weight:500;
	text-align:center;
	padding:2.5rem;
	border-radius:5rem;
}
.btn_wrap a, .btn_wrap button {
	border:1px solid #ddd;
}
.btn_wrap input {
	color:#fff;
	border:2px solid #333;
	background-color:#333;
}
.btn_wrap input:hover{	
	color:#fff;
}

@media all and (max-width:1080px){
	.inputbox {
		grid-template-columns: 1fr;
		gap:1.5rem;
		padding:3rem 0;
	}
	.agreewrap {
		display:block;
	}
	.agreewrap p {
		margin-bottom:1rem;
	}
}
@media all and (max-width:860px){
	.btn {
		width:13rem;
	}
	.inputbox .boxtype01 input, .inputbox .boxtype01 label{		
		margin-bottom:1rem;
	}
	.inputbox .boxtype01 input{
		display:block;
		width:100%;
		margin-right:0;
		margin-top:1rem;
	}

	.inputbox .boxtype02 input,
	.inputbox .boxtype02 span {
		margin-right:5px;
	}
	.inputbox .boxtype02 input {
		width:calc(33.333% - 2rem);		
	}

	.inputbox .boxtype03 input,
	.inputbox .boxtype03 span {
		margin-right:5px;
	}
	.inputbox .boxtype03 select , .inputbox .boxtype03 input {
		width:calc(33.333% - 2rem);
	}

	.inputbox .boxtype04 .inputfile,
	.inputbox .boxtype05 .inputfile{
		width:calc(100% - 15rem);
	}

	.inputbox .boxtype06 input {
		width:100%;
	}

	.inputbox .boxtype07 select {
		width:100%;
	}
	.inputbox .boxtype08 input:first-child {
		width:calc(100% - 14rem);
	}
	.inputbox .boxtype09 select, .inputbox .boxtype09 input:nth-of-type(2),  .inputbox .boxtype09 select{
		width:calc(33.333% - 2.8rem);
	}
	.inputbox .boxtype18 .box_wrap {
		    grid-template-columns: 1fr;
	}
}
@media all and (max-width:720px){
	.ctt_cont0203 h4 {
		display:block;
	}
	.inputbox .boxtype11 {
		grid-template-columns: repeat(2, 1fr);
	}
	.inputbox .boxtype12 {
		grid-template-columns: repeat(2, 1fr);
	}
	.inputbox .boxtype16 {
		grid-template-columns: 1fr;
	}
	.inputbox .boxtype16 > div {
		margin-bottom:1rem;
	}
	.inputbox .boxtype17 > div {
		display:block;
	}
	.inputbox .boxtype17 > div > p {
		margin-bottom:1rem;
	}
	.inputbox .boxtype17 > div > div {
		margin-bottom:1rem;
		margin-right:0;
	}
	.inputbox .boxtype17 > div > div > span{
		display:block;
		margin-left:1rem;
		margin-bottom:1rem;
	}
	.inputbox .boxtype17 > div input {
		width:calc(100% - 8rem);
	}	

	#agree_pop .pop_wrap{
		width:90%;
	}
	#agree_pop .con p br {
		display:none;
	}
}
@media all and (max-width:520px){
	.inputbox .boxtype13 .box_wrap {
		grid-template-columns: repeat(2, 1fr);
	}
	.inputbox .boxtype15 {
		grid-template-columns: repeat(2, 1fr);
	}
	.inputbox .boxtype15 > div {
		margin-bottom:1rem;
	}
}
@media all and (max-width:480px){
	.inputbox .boxtype02 input, .inputbox .boxtype02 span {		
		margin:0;
	}
	.inputbox .boxtype03 input, .inputbox .boxtype03 span {		
		margin:0;
	}
}


/* 추가 */
/* 할인(부스비할인) - 조기신청 항목 중 비활성화된 라디오 */
.early-discount input[type="radio"]:disabled + label {
  color: #999;               /* 텍스트 회색 */
  cursor: not-allowed;       /* 금지 커서 */
}

/* 형제 strong 태그도 회색 처리하려면 아래도 추가 */
.early-discount input[type="radio"]:disabled + label + label + strong {
  color: #999;
}