@charset "utf-8";

img {
     display: block;
     width: 100%;
}

#wrapper {
     max-width: 100%;
}

#content {
     padding: 0 0 50px;
}

section {
     padding: 100px 15px 120px;
}

section>div {
     position: relative;
     margin: 0 auto;
     max-width: 1050px;
}

section .pg-title {
     margin-bottom: 40px;
     text-align: left;
}

section .pg-title span {
     display: inline;
}

.pg-con>div {
     padding: 50px 50px 80px;
}

.pg-con>div>div {
     max-width: 100%;
}

.sec-0 {
     padding-top: 20px;
     background-color: #fff;
}

.sec-0 .pg-con {
     margin-top: 25px;
}

.sec-0 .pg-con>div {
     padding: 35px;
     border: 2px solid #888;
}

.sec-0 .pg-con strong {
     font-size: 30px;
     font-family: "GmarketSansMedium";
     color: #7eb7f3;
     font-weight: 700;
}

.sec-0 .info-list {
     margin-top: 10px;
}

.sec-0 .info-list li {
     line-height: 1.5;
}

section>div::after {
     content: "";
     position: absolute;
     top: 0;
     left: 0;
     background-repeat: no-repeat;
     background-position: center;
     background-size: 100%;
     opacity: 0.15;
}

.sec-1>div::after {
     width: 107px;
     height: 157px;
     background-image: url(../img/bg-object-1.png);
     transform: translate(-125px, 12px);
}

.sec-2>div::after {
     left: auto;
     right: 0;
     width: 230px;
     height: 235px;
     background-image: url(../img/bg-object-2.png);
     transform: translate(0px, -180px);
}

.sec-3>div::after {
     width: 124px;
     height: 189px;
     background-image: url(../img/bg-object-3.png);
     transform: translate(300px, -30px);
}

.sec-4>div::after {
     width: 174px;
     height: 245px;
     background-image: url(../img/bg-object-4.png);
     transform: translate(-142px, 60px);
}

.sec-3 .show-guide-btn {
     margin: 40px auto 50px;
     max-width: 280px;
     height: 68px;
     font-size: 30px;
}

.sec-3 .reception-inquiry-btn {
     margin: 50px auto;
     max-width: 580px;
     font-size: 30px;
}

.sec-4 .cc-btns>.cc-btn {
     max-width: 280px;
}

.company-list {
     margin-top: 50px;
     display: flex;
     justify-content: space-between;
}

.company-list>div>strong {
     display: block;
     margin-bottom: 10px;
     font-family: "GmarketSansMedium";
     font-weight: 700;
     color: #000;
}

.company-list .sponsor {
     flex: 1;
}

.company-list .sponsor ul {
     display: flex;
     align-items: center;
     flex-wrap: wrap;
     gap: 30px 40px;
}

.company-list .sponsor li.hana-card {
     max-width: 143px;
}

.company-list .sponsor li.etevers {
     max-width: 164px;
}

.company-list .sponsor li.seoul-art-show {
     max-width: 269px;
}

.company-list .sponsor li.thecircle {
     max-width: 193px;
}

.company-list .sponsor li.chosun-media {
     max-width: 206px;
}

.company-list .sponsor li.chosun-edu {
     max-width: 117px;
}

.company-list .sponsor li img {
     width: 100%;
}

.company-list .host {
     flex: 0 0 300px;
     text-align: right;
}

.company-list .host>strong span~span {
     margin-left: 6px;
}

.company-list .host .ajet {
     display: inline-block;
     margin-bottom: 3px;
     width: 142px;
}

.company-list .host .txt {
     font-size: 14px;
}

.company-list .host .txt span {
     display: block;
}

.company-list .host .txt span:nth-child(1) {
     color: red;
}

/*
.company-list { margin-top: 50px; }
.company-list > div { display: flex; }
.company-list > div ~ div { margin-top: 30px; }
.company-list > div > strong { padding-top: 8px; font-family: 'GmarketSansMedium'; font-size: 30px; flex: 0 0 80px; max-width: 80px; }
.company-list .host > strong { display: flex; justify-content: space-between; }
.company-list .host li strong span:not(:last-child)::after { content: "/"; margin: 0 5px; }
.company-list ul { display: flex; align-items: center; flex-wrap: wrap; gap: 20px; margin-left: 20px; }
.company-list .host ul { gap: 10px 30px; }
.company-list li { font-size: 16px; }
.company-list li.hana-card { max-width: 115px; }
.company-list li.chosun-media { max-width: 179px; }
.company-list li.chosun-edu { max-width: 101px; }
.company-list li.thecircle { max-width: 158px; }
.company-list li.seoul-art-show { max-width: 185px; }
.company-list li.ajet { max-width: 250px; }
.company-list li img { width: 100%; }
.company-list li .txt { font-weight: 500; letter-spacing: -1.2px; }
*/

.sec-guide .txts {
     line-height: 1.8;
}

.sec-guide .txts~.txts {
     margin-top: 30px;
}

.sec-guide .txts>div:first-child {
     padding-top: 2px;
}

.sec-guide .info-list {
     padding-top: 22px;
     border-top: 1px solid #a3a3a3;
}

.sec-guide li~li {
     margin-top: 10px;
}

.award-details {
     display: flex;
     justify-content: center;
     flex-wrap: wrap;
     gap: 15px 30px;
     margin-top: 60px;
}

.award-details li {
     flex: 1;
     display: flex;
     align-items: center;
     flex-direction: column;
     padding: 35px 10px 15px;
     font-family: "GmarketSansMedium";
     font-size: 32px;
     color: #fff;
     text-align: center;
     background-color: #0d83ff;
     border-radius: 20px;
}

.award-details li strong:nth-child(1) {
     color: #ffd647;
}

.award-details li strong~strong {
     margin: 10px 0;
     line-height: 1;
}

.award-details li small {
     font-size: 15px;
     color: #ffc9b0;
     line-height: 1.4;
}

.application-contest {
     display: flex;
     justify-content: center;
     gap: 20px;
}

.application-contest a {
     flex: 0 0 50%;
     padding: 40px 10px;
     max-width: 280px;
     font-family: "GmarketSansMedium";
     font-size: 40px;
     color: #fff;
     text-align: center;
     border-radius: 20px;
     background: #0d83ff url(../img/btn-next.png) no-repeat 88% 90% / 35px;
     transition: 0.2s ease-out;
}

.application-contest strong {
     display: block;
}

.application-contest img {
     margin: 25px auto;
     width: 57px;
}

.application-contest a:nth-child(2) img {
     width: 117px;
}

.application-contest a:focus-visible,
.is-online .application-contest a:hover {
     box-shadow: 0 0 0 3px #fff, 0 0 0 6px #0d83ff;
}

.is-online .application-contest a:hover {
     background-position: 92% 90%;
}

.shooting-guide-modal .modal-dialog {
     padding-left: 30px;
     padding-right: 30px;
     max-width: 900px;
     overflow: hidden;
}

.shooting-guide-modal .modal-header .pg-title {
     white-space: nowrap;
}

.shooting-guide-modal .guide-con .txts>div:last-child {
     padding-top: 0;
}

.guide-con~.guide-con {
     margin-top: 50px;
}

.guide-con .txts {
     display: flex;
}

.guide-con .txts>div:first-child {
     min-width: 140px;
     font-family: "GmarketSansMedium";
     font-size: 28px;
     font-weight: 700;
     color: #48a1ff;
}

.guide-con .txts>div:last-child {
     padding-top: 8px;
     padding-left: 30px;
     letter-spacing: -0.5px;
     line-height: 1.5;
}

.guide-con li {
     display: flex;
     margin-top: 0;
     line-height: 1.5;
}

.guide-con li~li {
     margin-top: 8px;
}

.guide-con ul.count {
     counter-reset: count;
}

.guide-con ul.count li:before {
     counter-increment: count;
     content: counter(count) ".";
     margin-right: 5px;
}

.guide-con .examples {
     margin-top: 40px;
     padding: 40px 15px 50px;
     text-align: center;
     border-radius: 20px;
     border: 1px solid #989898;
}

.guide-con .examples>div~div {
     margin-top: 40px;
}

.guide-con .examples h2 {
     margin-bottom: 10px;
     font-family: "GmarketSansMedium";
     font-size: 30px;
     color: #48a1ff;
     text-align: center;
}

.guide-con figure img {
     display: block;
     margin: 0 auto;
     width: 100%;
}

.guide-con figcaption {
     margin-top: 5px;
     font-size: 16px;
}

.guide-con .exam-1 img {
     max-width: 387px;
}

.guide-con .exam-2 h2 {
     color: #ff0000;
}

.guide-con .exam-2>div {
     display: flex;
     justify-content: center;
     flex-wrap: wrap;
     gap: 25px;
}

.guide-con .exam-2 figure {
     flex: 0 0 22%;
     min-width: 180px;
}

.inquiry-con .enter {
     padding: 0 30px;
     border: 1px solid #999;
     border-radius: 10px;
}

.inquiry-con .enter>div {
     padding: 30px 0;
}

.inquiry-con .enter>div~div {
     border-top: 1px solid #999;
}

.inquiry-con .enter textarea {
     padding: 0;
     border: none;
     height: 25vh;
     min-height: 150px;
     max-height: 250px;
     font-size: 20px;
     line-height: 1.5;
}

.inquiry-con .enter input {
     padding: 0 10px;
     height: 45px;
     font-size: 20px;
     border: none;
     border-bottom: 1px solid #e2e2e2;
}

.inquiry-con .info-list li {
     margin: 15px 0;
     align-items: center;
}

.inquiry-con .info-list li>span:first-child {
     flex-basis: 165px;
}

.inquiry-con .info-list .bullet.asterisk::before {
     padding-top: 10px;
}

.inquiry-con .file {
     margin-top: 20px;
     display: flex;
     flex-wrap: wrap;
}

.inquiry-con .file>div:first-child {
     margin-right: 20px;
}

.inquiry-con .file .cc-btn {
     margin-top: 0;
     padding-top: 8px;
     width: 148px;
     font-size: 18px;
     height: 40px;
     border-radius: 5px;
}

.inquiry-con .attach-file ul {
     margin-top: 8px;
     min-height: 50px;
}

.inquiry-con .attach-file li {
     font-size: 16px;
     font-weight: 500;
}

.inquiry-con .attach-file li:first-child {
     margin-top: 0;
}

.inquiry-con .attach-file button {
     top: -2px;
     font-size: 16px;
}

@media all and (min-width: 1200px) {
     .sec-1 .pg-con>div {
          padding-right: 150px;
     }
}

@media all and (max-width: 900px) {
     .award-details {
          gap: 15px;
     }

     .company-list {
          flex-direction: column;
     }

     .company-list .host {
          flex: none;
          text-align: left;
     }

     .company-list>div~div {
          margin-top: 50px;
     }
}

@media all and (max-width: 720px) {
     section {
          padding-bottom: 80px;
     }

     section .pg-title {
          margin-bottom: 20px;
     }

     .pg-con>div {
          padding: 40px 20px;
     }

     .sec-guide .txts {
          display: block;
     }

     .sec-guide .txts~.txts {
          margin-top: 30px;
     }

     .sec-guide .txts>div:last-child {
          padding-left: 0;
     }

     .award-details {
          margin-top: 20px;
     }

     .guide-con .txts {
          flex-direction: column;
     }

     .guide-con .txts>div:first-child {
          flex: none;
     }

     .guide-con .txts>div:last-child {
          padding-top: 0;
          padding-left: 0;
     }
}

@media all and (max-width: 640px) {
     .award-details li {
          flex-basis: calc(50% - 15px);
     }
}

@media all and (max-width: 580px) {
     .guide-con .exam-2 figure {
          flex-basis: 100%;
     }

     .guide-con .exam-2 img {
          max-width: 365px;
     }

     .inquiry-con .info-list li {
          flex-wrap: wrap;
     }
}

@media all and (max-width: 440px) {
     .application-contest a {
          padding: 30px 10px;
          font-size: 32px;
     }

     .application-contest img {
          margin-top: 15px;
          margin-bottom: 15px;
     }

     .sec-3 .show-guide-btn {
          max-width: 100%;
     }
}

@media all and (max-width: 360px) {
     .application-contest {
          flex-direction: column;
     }

     .application-contest a {
          flex: none;
          max-width: 100%;
     }

     .award-details li {
          flex-basis: 100%;
     }
}