/* Google-Font */
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+KR:wght@100;300;400;500&display=swap');
@import url('../refer/fontello/css/fontello.css');

/* CSS-RESET */
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code,del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var,b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video {padding: 0; margin: 0; border: 0; font-size: 100%; font: inherit;}
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {display: block;}
img,fieldset {border: 0;}
input, button {outline: none;}
address,cite,code,em{font-style:normal;font-weight:normal;}
label,img,input,select,textarea,button{vertical-align:middle;}
ol, ul {list-style: none; padding: 0; margin: 0;}
blockquote, q {quotes: none;}
blockquote:before, blockquote:after, q:before, q:after {content: ''; content: none;}
table {border-collapse: collapse; border-spacing: 0;}
input, button {outline: none;}

/* LINK-RESET */
a:link{text-decoration:none; color: inherit; }
a:visited{text-decoration:none; color: inherit;}
a:hover{text-decoration:none; color: inherit;}
a:active{text-decoration:none; color: inherit;}	

/* CLEAR */
.clear {zoom:1;}
.clear::after{content:''; display:block; clear:both;}

/* Hide */
.hide {
    display: inline-block !important;
    position: absolute;
    top: 0;
    left: 0;
    margin: 0 !important;
    padding: 0 !important;
    font-size: 0;
    line-height: 0;
    border: 0 !important;
    overflow: hidden !important;
}
.hides {position: absolute; left: -3000%;}

/* Scroll-Smooth */
html {scroll-behavior: smooth;} 

/* END CSS-RESET */

/* BASIC */
body {
    font-family:'Noto Sans KR', 'Malgun Gothic','맑은 고딕','Apple SD Gothic Neo','Open Sans',sans-serif;
    font-size: 1.125rem;
    letter-spacing: -0.05em;
    font-weight: 400;
    white-space: normal;
    word-break: break-all;
    color: #000;
    -webkit-text-size-adjust: none;
    -webkit-font-smoothing: antialiased;
}
.txb-bb {font-weight: bold;}
.txb-500 {font-weight: 550;}
.txb-600 {font-weight: 600;}
.txa-c {text-align: center;}
.txa-l {text-align: left !important;}

.width_fx {
    width: 100%;
    max-width: 855px;
    margin: auto;
    box-sizing: border-box;
}
.width_fx9 {
    width: 100%;
    max-width: 950px;
    margin: auto;
    box-sizing: border-box;
}
.title_sx {
    font-size: 2.6667em;
    font-weight: 550;
    text-align: center;
}
.txs14 {font-size: 14px;}
.txs16 {font-size: 0.889em;}
.txs21 {font-size: 1.16666em;}
.txs28 {font-size: 1.555em;}
.txs52 {font-size: 2.889em;}
.txs70 {font-size: 3.889em;}
.txs100 {font-size: 5.556em;}

.txc-g {color: #b1b1b1;}
.txc-b2 {color: #0BC8BA;}
.txc-b3 {color: #1ac7f5;}
.bg-sb {background-color: #f9fcfe;}

.gap-sect {
    text-align: center;
    padding: 70px 10px 100px;
    box-sizing: border-box;
    position: relative;
}
.gaps50 {height: 50px;}
.anchx, .anchx2 {
    position: absolute;
    opacity: 0;
    font-size: 0;
}
.anchx {top: -100px}
.anchx2 {top: -100px}

@media screen and (max-width:768px) {
    body {font-size: 1rem;}
    .title_sx {
        font-size: 2.3em;
        font-weight: 550;
        text-align: center;
    }
    .txs21 {font-size: 1.125em;}
    .txs100 {font-size: 18vw;} 
    .gap-sect {
        padding: 60px 15px 90px;
/*        position: relative;*/
    }
    .anchx {top: -65px}
    .anchx2 {top: -80px}
}
/* END-BASIC */

/* HEADER */
header {
    position: sticky;
    top: 0; left: 0;
    z-index: 50;
}
.headz {
    height: 135px;
    text-align: center;
    background-color: #000;
    position: relative;
}
.top_mxt {
    position: relative;
    height: 100%;
}
.headz h1 {
    position: absolute;
    top: 50%; transform: translateY(-50%);
    left: 5px;
    text-align: left;
}
.headz img {max-width: 100%; width: 80%;}

.headz .pcnav {
    color: #fff;
    position: absolute;
    top: 50%; transform: translate(-50%);
    right: 15px;
} 
.headz #mn-navchx {display: none;}
.headz .mn-ocbtn {
    position: absolute;
    right: 30px;
    top: 50%; transform: translateY(-50%);
    z-index: 30;
}
.headz .mn-ocbtn .total {
    position: relative;
    display: block;
    width: 35px;
    height: 35px;
    z-index: 50;
    cursor: pointer;
}
.headz .mn-ocbtn .total span, .headz .mn-ocbtn .total span:before, .headz .mn-ocbtn .total span:after {
    position: absolute;
    width: 100%;
    height: 5px;
    background: #fff;
    -ms-transition: all 0.3s;
    -webkit-transition: all 0.3s;
    transition: all 0.3s;    
    border-radius: 15px;
}
.headz .mn-ocbtn .total span {display: block; top: 50%; transform: translate(0,-50%);}
.headz .mn-ocbtn .total span:before, .total span:after {content: ''; left: 0; top: 0;}
.headz .mn-ocbtn .total span:after {top: 10px;}
.headz .mn-ocbtn .total span:before {top: -10px;}
.headz .mnnav {
    display: block;
    width: 100%; 
    height: 100%; 
    position : fixed; 
    top: 0; 
    right: -100%; 
    z-index: 25; 
    background-color: rgba(0,0,0,0.93);
    transition: all 0.4s linear;
    text-align: center;
    color: #fff;
}
.headz .mnnav ul {
    width: 50%;
    max-width: 500px;
    margin: 190px auto 0;
    display: flex;
    flex-direction: column;
    justify-content: center;
}
.headz .mnnav li {
    font-size: 1.167em;
    padding: 13px 0;
    font-weight: 500;
    position: relative;
}
.headz .mnnav li:hover {color:#0BC8BA;}
.headz .mnnav li:not(:first-of-type):after {
    content: '';
    display: block;
    position: absolute;
    height: 1px;
    width: 70%;
    background-color: rgba(255,255,255,0.16);
    top: 0;
    left: 50%; 
    transform: translateX(-50%);    
}
.headz .mnnav li > a {display: block;}
.headz input:checked ~ .mnnav {right: 0;}
.headz input:checked ~ label .total span {background: rgba(225,245,136,0);}
.headz input:checked ~ label .total span:before {
    -webkit-transform: rotate(135deg); 
    -ms-transform: rotate(135deg); 
    transform: rotate(135deg); 
    margin-top: 10px; 
    background-color: #fff;
}
.headz input:checked ~ label .total span:after {
    -webkit-transform: rotate(-135deg); 
    -ms-transform: rotate(-135deg);     
    transform: rotate(-135deg); 
    margin-top: -10px; 
    background-color: #fff;
}   
/*.headz .mn-ocbtn .total, .head .mnnav {display: none;}*/

@media screen and (max-width:768px) {
    header {
        position: sticky;
        top: 0; left: 0;
    }
    .headz {height: 100px;}
    .headz h1 {left: 15px;}
    .headz h1 img {width: 190px;}
    .headz .mnnav ul {
        width: 60%;
        margin: 35% auto 0;
    }    
    .headz .mn-ocbtn .total, .head .mnnav {display: block;}
}
/* END HEADER */

.desx21, .desx22 {
    display: inline-block;
    background-color: #f3f7f9;
    line-height: 1.65;
    border-radius: 9px;
    box-sizing: border-box;    
}
.desx21 {
    margin: 45px 10px 0;
    padding: 18px 170px;
}
.desx22 {
    margin: 45px 10px 0;
    padding: 25px 15px;
}
@media screen and (max-width:768px) {
    .desx21 {padding: 15px;}
    .desx22 {padding: 25px 12px;}
}
/* Gauge Area 2 */
.wrap-gauge2 {}
.numBx-gauge2 {
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 2.45em;
}
.numBx-gauge2 .mid-inxx {
    padding: 0 10px;
    font-size: 0.7em;
    font-weight: 400;
    vertical-align: middle;
}
.numBx-gauge2 .gaugeNm2::after {
    content: 'Mile';
    font-size: 0.8em;
    margin-left: 4px;
    font-weight: 400;
}
.gauge2Wrap {
    width: 500px;
    height: 250px;
    margin: 40px auto 0;
    position: relative;

}
.gauge2Wrap, .gauge2Box {
    overflow: hidden;
    box-sizing: border-box;
}
.gauge2Box, .gauge2rate {
    width: 100%; height: 250px;
    border-top-left-radius: 250px;
    border-top-right-radius: 250px;  
}        
.gauge2Box {
    position: relative;
    background-color: #ddd;
}
.gauge2rate {
    position: absolute;
    top: 0; left: 0; right: 0; bottom: 0;
    background-color: #eee;   
    transform: rotate(0deg);
    transform-origin: 50% 100%;
    box-sizing: border-box;
}
.gauge2rate::after {
    content: '';
    position: absolute;
    top: 0; left: 0; right: 0; bottom: 0;
    background-color:#1ac7f5;   
    transform: translate(0, 100%);
}
.innxx {
    width: 300px; height: 150px;
    border-top-left-radius: 150px;
    border-top-right-radius: 150px;
    background-color: #fff;  
    margin:  auto;          
    position: absolute;
    bottom: 0;
    left: 50%; transform: translateX(-50%);
    z-index: 3;
}
.gauge2Txt {
    position: absolute;
    bottom: 5px; left: 50%; transform: translateX(-50%);
    z-index: 4;
    font-size: 50px;
    font-weight: 550;
}
.gauge2Txt::after{
    content: '%';
    font-size: 20px;
    font-weight: 400;
    color: #666;
}
.wrap-gauge2 .desx21 {
    margin: 0;
}
@media screen and (max-width:768px) {
    .gauge2Wrap {
        width: 300px;
        height: 150px;
        margin: 40px auto 0;
    }
    .gauge2Box, .gauge2rate {
        width: 100%; height: 150px;
        border-top-left-radius: 150px;
        border-top-right-radius: 150px;  
    }   
    .innxx {
        width: 150px; height: 75px;
        border-top-left-radius: 75px;
        border-top-right-radius: 75px;
    }    
    .gauge2Txt {font-size: 37px;}    
    .gauge2Txt {bottom: 2px; }    

}
/* End Gauge Area 2 */

/* Event-Introduction */
.wrap-eintro { 
    box-sizing: border-box;
    position: relative;
    padding-top: 230px;
}
.wrap-eintro::after {
    content: '';
    position: absolute;
    top: 0; left: 0; right: 0; bottom: 0;
    background-image: url('../images/bg/run-midbg.png');
    background-repeat: no-repeat;
    background-size: 570px;
    background-position: 10% top;
    z-index: -1;
}
.tit-txd2 {
    font-size: 2.3em;
    font-weight: 550;
    padding: 0 10px;
    box-sizing: border-box;
}
.wrap-eintro p.txd {
    line-height: 1.6;
    margin-top: 60px;
    padding: 0 10px;
    box-sizing: border-box;
}
.wrap-eintro ul {
    width: 70%;
    display: flex;
    justify-content: center;
    color: #545454;
    font-weight: 350;
    margin: 70px auto 0;
}
.wrap-eintro ul li {
    flex: 1;
    text-align: center;
}
.wrap-eintro ul li p img {
    max-width: 100%;
}
.wrap-eintro .txamo {
    font-size: 0.9em;
    line-height: normal;
}
.wrap-eintro p.txi {
    background-color: #f3f7f9; 
    padding: 20px 150px;
    box-sizing: border-box;
    margin-top: 55px;
}
@media screen and (max-width:768px) {
    .wrap-eintro ul {width: 100%;}    
    .wrap-eintro::after {
        background-size: 530px;
        background-position: right top;
    }    
    .wrap-eintro p.txd {
        margin-top: 40px;
    }
}
/* END-Event-Introduction */

/* Event-Announce */
.wrap-evan {background-color: #1a1a1a;}
.wrap-evan .tbgu {
    height: 400px;
    background: url(../images/bg/marathon_bg.png) no-repeat top center;
}
.wrap-evan .bx-evan {
    color: #fff;
}
.bx-evan .contx-evan {
    margin-top: 65px;
    text-align: left;
}
.contx-evan li {
    display: flex;
    line-height: 1.8;
}
.contx-evan .sub_title {
    color: #999;
    display: block;
    width: 150px;
    font-weight: 550;
}
.contx-evan .description {
    display: block;
    flex: 1;
}
@media screen and (max-width:768px) {
    .wrap-evan .tbgu {
        height: 365px;
        background: url(../images/bg/marathon_bg.png) no-repeat 38% center;
    }    
    .contx-evan li {flex-direction:column; line-height: 1.6;}    
    .contx-evan li:not(:first-child) {margin-top: 18px;}
    .contx-evan .sub_title {width: 100%;}
    .contx-evan .sub_title:before {
        content: '\e808';
        font-family: 'fontello';
        margin-right: 4px;
        vertical-align:baseline;
    }
    .contx-evan .description {flex: none;}  
}
/* END-Event-Announce */

/* How To Join */
.wrap-htj h3 {
    width: 70%;
    margin: 54px auto 0;
}
.wrap-htj .list-htj {
    margin: 125px auto 0;
    display: flex;
}
.list-htj li {
    text-align: center;
    flex: 1;
    position: relative;
}
.list-htj li .icox {
    width: 100%;
    padding-top: 100%;
    position: relative;
    z-index: 2;
}
.list-htj li .icox p {
    position: absolute;
    top: 50%; left: 50%; transform: translate(-50%,-50%);
    width: 80%;
    height: 80%;
    border: 1px solid #1ac7f5;
    border-radius: 100%;
    background-color: #1ac7f5;
    box-sizing: border-box;
}
.list-htj li .icox p img {
    max-width: 90%;
    display: block;
    position: absolute;
    top: 50%; left: 50%;
    transform: translate(-50%,-50%);
}
.list-htj li .name-step {
    color: #1ac7f5;
    font-weight: 550;
}
.list-htj li .desc {
    width: 85%;
    font-size: 17px;
    color: #545454;
    margin: auto;
}
.list-htj li:not(:last-child) .icox p:after {
    content: '\f101';
    font-family: 'fontello';
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    right: -35px;
    color: #1ac7f5;
    font-size: 2em;
}
@media screen and (max-width:768px) {
    .wrap-htj h3 {width: 95%;}
    .wrap-htj .list-htj {
        margin: 80px auto 0;
        flex-wrap: wrap;
    }
    .list-htj li {
        flex: none;
        width: 47%;
    }
    .list-htj li:nth-of-type(2n) {margin-left: 6%;}
    .list-htj li:nth-of-type(-n+2) {margin-bottom: 40px;}
    .list-htj li .icox p {width: 85%; height: 85%;}
    .list-htj li .desc {width: 90%;}
    .list-htj li .name-step {font-size: 1.3em;}
    .list-htj li:not(:last-child) .icox p:after {
        content: '\f101';
        font-family: 'fontello';
        position: absolute;
        top: 50%;
        transform: translateY(-50%);
        right: -30px;
        color: #1ac7f5;
        font-size: 2em;
    }
    .list-htj li:nth-of-type(2) .icox p:after {content: '';}
    .list-htj li .icox p img {
        max-width: 50%;
    }
}
/* END-How To Join */

/* Spon-Goods */
.wrap-sgs h2 .sux {
    color: #929292;
    font-size: 0.88em;
}
.wrap-sgs h3 {
    width: 80%;
    margin: 49px auto 0;
    text-align: center;
}

.wrap-sgs .list-sgs {
    display: flex;
    margin: 84px auto 0;
    align-items:center;
    justify-content: center;
    flex-wrap: wrap;
}
.wrap-sgs .list-sgs li {
    width: 19%;
    margin: 1.5% 0.5%;
}

.wrap-sgs .list-sgs li > div {}
.wrap-sgs .list-sgs li > div img {max-width: 100%;}
.wrap-sgs .list-sgs li > p .sstx2 {
    font-size: 0.9em;
    display: block; 
    color: #8F8F8F;
    margin: 10px 0 5px;
}
@media screen and (max-width:950px) {
    .wrap-sgs .list-sgs li {
        width: 32.333%;
        margin: 2% 0.5%;
    }
}
@media screen and (max-width:768px) {
    .wrap-sgs .list-sgs {
        margin: 60px auto 0;
        flex-wrap: wrap;
        width: 100%;
    }
    .wrap-sgs .list-sgs li {
        width: 46%;
        margin: 2% 2%;
    }
}
/* END-Spon-Goods */

/* Game-Host  */
.wrap-ght img {max-width: 100%;}
.wrap-ght h2 {margin: 0 auto 30px;}
.wrap-ght ul {
    width: 100%;
    display: flex;
    text-align: center;
    flex-wrap: wrap;
    justify-content: center;
}
.wrap-ght .spox01 li {
    display: block;
    max-width: 49%;
    text-align: center;
    margin: 0 1% 10px;
}
.wrap-ght .spox02 li {
    display: block;
    max-width: 24%;
    text-align: center;
    margin: 0 0.5% 10px;    
}
.gap_ght, .gap_ght2 {height: 113px;}

@media screen and (max-width:768px) {
    .wrap-ght ul {
        width: 99%;
        margin: auto;
    }
    .wrap-ght .spox01 li, .wrap-ght .spox02 li {
        width: 46%;
        max-width: 46%;
        margin: 2% 2%;        
    }
    .wrap-ght .hosted img {width: 60%;}
    .gap_ght, .gap_ght2 {height: 105px;}
}
/* END-Game-Host  */

/* Button_Area */
.btnpptWrap {
    padding: 50px 10px 0;
    box-sizing: border-box;    
}
.btnpptBox {
    display: flex;
    width: 100%;
    border: 2px solid #1ac7f5;
    border-radius: 60px;
    box-sizing: border-box;
    overflow: hidden;
}
.btnpptBox li {
    flex: 1;
    border-radius: 60px;
    overflow: hidden;
}
.btnpptBox li.on {
    color: #fff;
    background-color: #1ac7f5;
}
.btnpptBox li > a {
    display: block;
    height: 60px;
    line-height: 60px;
    text-align: center;
}
/* END-Button_Area */

/* Registration Form */
.wrap-regitx {
    padding: 80px 10px;
    position: relative;
    box-sizing: border-box;
}
.wrap-regitx.wwstatx {padding: 0 10px 60px;}
.wrap-regitx .btn-regitx {
    display: flex;
    margin-top: 70px;
}
.wrap-regitx .btn-regitx li {
    flex: 1;
    border: 1px solid #CFCFCF;
}
.wrap-regitx .btn-regitx li:last-child {
    margin-left: 23px;
}
.wrap-regitx .btn-regitx li a {
    display: block;
    height: 100%;
    line-height: 53px;
    text-align: center;
    font-weight: 550;
    transition: all 0.4s;    
} 
.wrap-regitx .btn-regitx li a:hover {
    background-color: #222;
    color: #fff;
}
.wrap-regitx .selxrun {
    width: 95%;
    display: flex;
    border: 2px solid #1ac7f5;
    margin: 0 auto 70px;
    border-radius: 58px;
    overflow: hidden;
    box-sizing: border-box;
}
.wrap-regitx .selxrun > input {display: none;}
.wrap-regitx .selxrun label {
    display: block;
    width: 50%;
    text-align: center;
    font-weight: 550;
    transition: all 0.4s;  
    cursor: pointer;
    line-height: 58px;
    border-radius: 58px;
    overflow: hidden;
    box-sizing: border-box;
    border: none;
}
.wrap-regitx .selxrun input[type="radio"]:checked + label {
    background-color: #1ac7f5;
    color: #fff;    
}
.bx-regitx {
    margin-top: 60px;
}
.bx-regitx .form-regix {}
.bx-regitx .form-regix li {
    display: flex;
    align-items: center;
    margin-top: 20px;
}
.bx-regitx .form-regix li input[type="text"], .bx-regitx .form-regix li input[type="file"], .bx-regitx .form-regix li select, .bx-regitx .form-regix li textarea, .bx-regitx .form-regix li input[type="date"], .form-regix li input[type="tel"], .form-regix li input[type="password"] {
    display: block;
    vertical-align: middle;
    font-size: 1em;
    background-color: #f2f2f2;
    border: 1px solid transparent;    
    box-sizing: border-box;    
}
.bx-regitx .form-regix li input[type="text"], .bx-regitx .form-regix li input[type="file"], .bx-regitx .form-regix li select, .bx-regitx .form-regix li input[type="date"], .form-regix li input[type="tel"], .form-regix li input[type="password"] {
    height: 40px;
    line-height: 40px;
    padding: 0 15px;
    box-sizing: border-box;
}
.bx-regitx .form-regix li textarea {
    font-family:'Noto Sans KR', 'Malgun Gothic','맑은 고딕','Apple SD Gothic Neo','Open Sans',sans-serif;
    font-size: 1em;
    padding: 15px;
    resize: none;kkkjkk
    box-sizing: border-box;
}
.bx-regitx .form-regix li input[type="text"], .bx-regitx .form-regix li input[type="file"], .bx-regitx .form-regix li select, .bx-regitx .form-regix li textarea, .bx-regitx .form-regix li input[type="date"], .form-regix li input[type="tel"], .form-regix li input[type="password"] {
    flex: 1;
    width: 100%;
    position: relative;
}
.bx-regitx .form-regix li input::placeholder, .bx-regitx .form-regix li textarea::placeholder {
    font-size: 0.8em;
    color: #999999;
}
.bx-regitx .form-regix li input:focus, .bx-regitx .form-regix li select:focus, .bx-regitx .form-regix li textarea:focus {
    border: 1px solid #2d90fd;
    box-shadow: 0 0 3px #237bdb;
    outline: none;
}
.bx-regitx .form-regix li.dexBox > label {
    display: block;
    width: 140px;
    line-height: 40px;
}
.bx-regitx .form-regix li > label:before {
    content: '*';
    margin-right: 7px;
    color: red;
    vertical-align: middle;    
}
.bx-regitx .form-regix li select {
    display: block;
    box-sizing: border-box;
    vertical-align: middle;
    -webkit-appearance: none;
    -moz-appearance: none; 
    appearance: none;
    background: #f2f2f2 url('../images/icons/sel-down.svg') no-repeat;
    background-size: 25px;
}
.bx-regitx .form-regix li select::-ms-expand {display:none;}
.bx-regitx .form-regix li select.selmn01 {
    flex: 1;
    background-position: 98.5% 50%;
}
.bx-regitx .form-regix li select.selmn02 {
    flex: 1;
    background-position: 96% 50%;
}
.bx-regitx .form-regix li .phonex3 {
    flex: 1;
    display: flex;
}
.bx-regitx .form-regix li .phonex3 input, .bx-regitx .form-regix li .phonex3 select {
    display: block;
    flex: 1;
}
.bx-regitx .form-regix li .phonex3 .hypp {
    display: inline-block;
    line-height: 40px;
    padding: 0 5px;
}
.submitxe {
    margin-top: 70px;
    text-align: center;
}
.submitxe button {
    display: inline-block;
    width: 310px;
    height: 58px;
    line-height: 56px;
    margin: auto;
    text-align: center;
    background-color: #1ac7f5;
    border: 2px solid #1ac7f5;
    color: #fff;
    border-radius: 58px;
    font-weight: 550;
    box-shadow: 0 3px 4px rgb(0 0 0 / 18%);
    transition: transform  0.3s;
    box-sizing: border-box;
    font-size: 1em;
    cursor: pointer;
}
.submitxe button:hover{
    position: relative;
    transform: translate(-1.5px,-1.5px);
}
.submitxe button.styx2 {
    background-color: #fff;
    border: 2px solid #1ac7f5;
    color: #444; 
    margin-left: 15px;
}
.submitxe.wbban button {
    background-color: #fff;
    color: #000;
}
.submitxe.wbban button:hover {
    background-color: #222;
    border: 1px solid #000;
    color: #fff;
    position: relative;
    transform: translate(-1.5px,-1.5px);    
}
.agreeBox2 {
    display: flex;
    align-items: center;
    margin-top: 20px;
    font-size: 0.9em;
    padding: 0 0 0 140px;
    box-sizing: border-box;
}
.agreeBox2 > label {
    display: block;
    flex: 1;
    margin-left: 4px;
    white-space: nowrap;
    text-overflow: ellipsis;
    overflow: hidden;
}
.agreeBox2 .moreLink2 {
    display: block;
    font-size: 0.9em;
    color: #1ac7f5;
    text-decoration: underline;
}
@media screen and (max-width:768px) {
    .wrap-regitx {
        padding: 50px 13px 50px 10px;
        box-sizing: border-box;
    }    
    .bx-regitx {margin-top: 40px;}
    .wrap-regitx .selxrun {
        width: 100%;
        margin: 0 auto 40px;
    }
    .wrap-regitx .selxrun label {
        width: 50%;
        flex: none;
        box-sizing: border-box;
        line-height: 60px;
    }
    .wrap-regitx .selxrun label:last-child {margin-left: 0; border: none;}
    .wrap-regitx .selxrun label:last-child {margin-left: 0; border: none;}   
    .bx-regitx .form-regix li {flex-direction: column;}
    .bx-regitx .form-regix li input {flex: none;}
    .bx-regitx .form-regix li.dexBox > label {
        width: 100%;
        line-height: 40px;
    }
    .bx-regitx .form-regix li > label:before {content: '';} 
    .bx-regitx .form-regix li > label:after {
        content: '*';
        margin-left: 7px;
        color: red;
    } 
    .submitxe {
        margin-top: 70px;
        text-align: center;
    }
    .submitxe button {
        display: block;
        margin: auto;
        width: 90%;
    } 
    .submitxe button.styx2 {margin: 20px auto 0;} 
    .bx-regitx .form-regix li input[type="text"], .bx-regitx .form-regix li input[type="file"], .bx-regitx .form-regix li select, .bx-regitx .form-regix li textarea, .bx-regitx .form-regix li input[type="date"] {
        flex: none;
    }      
    .bx-regitx .form-regix li .phonex3 {flex: none; width: 100%;}  
      
    .bx-regitx .form-regix li select.selmn01, .bx-regitx .form-regix li select.selmn02 {
        background-position: 95% 50%;
    }
    .bx-regitx .form-regix li select.selmn01 {flex: none;}
    .agreeBox2 {padding:0;}
    .bx-regitx .form-regix li .phonex3 input { display: block; flex: 1;}
}
/* END-Registration Form */

/* Registration Confirm */
.confirm-descx {
    padding: 0 20px;
    box-sizing: border-box;
}
.confirm-descx li {
    display: flex;
}
.confirm-descx li:not(:first-child) {
    margin-top: 20px;
}
.confirm-descx li > span {
    display: block;
    height: 40px;
    line-height: 40px;
}
.confirm-descx .titlex {
    width: 170px;
    font-weight: 500;
}
.confirm-descx .titlex:before {
    content: '*';
    margin-right: 7px;
    color: red;
    vertical-align: middle;
}
.confirm-descx .contx {
    flex: 1;
}
@media screen and (max-width:768px) {
    .confirm-descx {padding: 0 10px;}    
    .confirm-descx li:not(:first-child) {margin-top: 15px;}    
    .confirm-descx .titlex {width: 138px;}    
}
/* END-Registration Confirm */

/* Registration State */
.bx-statex {
    margin-top: 60px;
}
.bx-statex ul {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
}
.bx-statex li {
    display: block;
    width: 31.3%;
    margin: 1%;
    background: #f4f4f4 url('../images/icons/no-image.png') no-repeat center center;
    background-size: 50%;
    border: 1px solid #e5e5e5;
    box-sizing: border-box;
}
.bx-statex li > p {
    display: block;
    padding-top: 100%;
    position: relative;
}
.bx-statex li > p span {
    position: absolute;
    top: 0; left: 0;
    width: 100%; height: 100%;
    overflow: hidden;
}
.bx-statex li img {
    width: 100%;
    min-height: 100%;
}
@media screen and (max-width:768px) {
    .bx-statex li {
        width: 48%;
        margin: 1%;
    } 
}
/* END-Registration State */

/* Footer */
footer {
    background-color: #000;
    color: #fff;    
}
.contx-foot {
    display: flex;
    padding: 65px 10px 75px;
    box-sizing: border-box;
}
.contx-foot .logox {
    width: 250px;
    text-align: right;
}
.contx-foot .logox img {
    display: block;
    max-width: 100%;
    float: right;
}
.contx-foot .desc {flex: 1;}
.link_ftx {
    padding-top: 6px;
    font-size: 0.95em;
    color: #888 ;
}
.link_ftx a:hover {text-decoration: underline;}
@media screen and (max-width:768px) {
    .contx-foot {padding: 55px 15px;}    
    .contx-foot .logox {display: none;}
    .contx-foot .desc {
        flex: none;
        width: 100%;
    }
}
/* END-Footer */

/* Top-Button */
#Btn-Up {
    display: none;
    width: 46px;
    height: 46px;
    text-align: center;
    border-radius: 43px;
    background-color: rgba(0,0,0,0.25);
    box-shadow:0 4px 32px 0 rgba(0,0,0,.175);
    border: 1px solid rgba(0,0,0,0.07);   
    box-sizing: border-box;
    position: fixed;   
    right: 5%;         
    bottom: 23px;       
    z-index: 15;
    font-size: 1.2em;
    transition: all 0.4s;
}
#Btn-Up:hover {background-color: rgba(0,0,0,0.5);}
#Btn-Up > i {
    line-height: 41px;
    color: #ddd;
    transition: all 0.4s;
}
#Btn-Up > i:hover {color: #fff;}
/* Top-Button-End */

/* How to Participate */
.txc-sy {color:#0bc8ba;}
.txw-by {font-weight: 550;}
.gapin30 {height: 70px;}

.int-desc2 {
    display: block;
    width: 85%;
    text-align: center;
    margin: 45px auto 0;
    padding: 15px 30px;
    background-color: #f3f7f9;
    line-height: 1.7;
    box-sizing: border-box;    
}
.wrap-infobox {margin: 110px auto 90px;}
.bx-infoe {
    display: flex;
    align-items: flex-start;
    position: relative;
}
.bx-infoe:not(:last-of-type):after {
    content: '\f103';
    font-family: 'fontello';
    display: block;
    position: absolute;
    left: 100px;
    bottom: -3px;
    color: #1ac7f5;
}
.bx-infoe:not(:last-of-type):before {
    content: '';
    display: block;
    position: absolute;
    left: 105px;
    width: 1px;
    top: 0;
    bottom: 5px;
    background-color: #1ac7f5;
}
.bx-infoe:not(:last-child) {padding-bottom: 80px;}
.bx-infoe .thumbx {
    width: 210px;
    flex: 0 0 210px;
}
.bx-infoe .thumbx > p {
    width: 100%;
    padding-top: 100%;
    position: relative;
}
.bx-infoe .thumbx > p span {
    position: absolute;
    top: 0; left: 50%; transform: translateX(-50%);
    width: 85%;
    height: 85%;
    border-radius: 100%;
    background-color: #1ac7f5;
    box-sizing: border-box;    
}
.bx-infoe .thumbx > p span img {
    max-width: 100%;
    display: block;
    position: absolute;
    top: 50%; left: 50%;
    transform: translate(-50%,-50%);    
}
.tx-info {
    flex: 1;
    padding: 10px 10px 0 10px;
    box-sizing: border-box;
}
.tx-info .step-valx {
    font-weight: 600;
    font-size: 1.2em;
}
.tx-info .imgw {
    display: flex;
    width: 65%;
    margin: 25px 0 10px;
    color: #777777;
}
.tx-info .imgw li {
    flex: 1;
    text-align: center;
    font-weight: 350;
    font-size: 0.78em;
    letter-spacing: -0.1em;
    margin-right: 5px;
    
}
.tx-info .imgw li img {max-width: 100%;}
.tx-info .descw {
    padding-top: 15px;
    color: #222;
    font-weight: 500;
}
.tx-info .infow, .tx-info .mx-iin {color: #878787;}
.tx-info .infow {
    padding-top: 20px;
    line-height: 1.6;
    list-style:disc;
    padding-left: 18px;
}
.tx-info .infow li::marker {color: #53d8cf;}
.tx-info .mx-iin {
    padding-top: 10px;
    font-size: 0.87em;
    font-weight: 350;
}
@media screen and (max-width:768px) {
    .gapin30 {height: 40px;}    
    .int-desc2 {
        width: 95%;
        text-align: center;
        margin: 45px auto 0;
        padding: 15px 15px;
    } 
    .wrap-infobox {margin: 70px auto 40px;}
    .bx-infoe:not(:last-child) {padding-bottom: 60px;}    
    .bx-infoe:not(:last-of-type):after {
        left: 24px;
        bottom: -3px;
        color: #1ac7f5;
    }
    .bx-infoe:not(:last-of-type):before {left: 29px;}    
    .bx-infoe .thumbx {
        width: 60px;
        flex: 0 0 60px;
    }
    .bx-infoe .thumbx > p span {
        width: 90%;
        height: 90%;
    }    
    .bx-infoe .thumbx > p span img {max-width: 29px;}    
    .tx-info .imgw {
        width: 99%;
        margin: 25px 0 5px;
    }    
    .tx-info {padding: 0 10px 0 10px;} 
    .tx-info .infow {padding-top: 15px;}    
}
/* END-How to Participate */

.tx-desc21 {margin: 25px auto 0;}
.tx-desc21 .ach-ev {}

/* Top Intro2 */
.topAwrap {
    height: 800px;
    position: relative;
    background-color: #f9fcfe;
    background-image: url('../images/bg/runTopbg1.png');
    background-repeat: no-repeat;
    background-position: center bottom;
    background-size: contain;
}
.topAwrap::after {
    content: '';
    position: absolute;
    top: 0; left: 0; right: 0; bottom: 0;
    background-image: url('../images/bg/runTopbg2.png');
    background-repeat: no-repeat;
    background-position: 70% center;
    background-size: 700px;

}
.topAwrap .inATxt, .inABtnBox {
    position: relative;
    z-index: 2;
}
.topAwrap .inATxt {
    width: 60%;
    padding: 94px 10px 0;
    box-sizing: border-box;
}
.topAwrap .inATxt > h2 {
    line-height: 1.3;
    margin-left: -5px;
}
.topAwrap .inATxt .descinA {
    margin-top: 50px;
}
.inABtnBox {
    width: 70%;
    display: flex;
    align-items: center;
    padding: 10px;
    margin-top: 30px;
    box-sizing: border-box;
}
.btn_sty01 {
    flex: 1;
    display: inline-block;
    height: 58px;
    line-height: 54px;
    margin: auto;
    text-align: center;
    background-color: #1ac7f5;
    border: 2px solid #1ac7f5;
    color: #fff;
    border-radius: 58px;
    font-weight: 550;
    box-shadow: 0 3px 4px rgb(0 0 0 / 18%);
    transition: transform  0.3s;
    box-sizing: border-box;
    font-size: 1em;
    cursor: pointer;    
}
.btn_sty01:hover {
    position: relative;
    transform: translate(-1.5px,-1.5px);
}
.btn_sty02 {
    background-color: #fff;
    border: 2px solid #1ac7f5;
    color: #444; 
    margin-left: 15px;
}
.btx_bf1 {
    color: #fff !important;
    background-color: #1ac7f5;
}
.btx_fb1 {
    color: #1ac7f5;
    background-color: #fff;
    border: 1px solid #1ac7f5;
}
@media screen and (max-width:768px) { 
    .topAwrap {
        height: 700px;
        background-image: url('../images/bg/runTopbg3.png');
        background-position: center bottom;
        background-size: 110%;
    }    
    .topAwrap::after {
        background-position: 90% center;
        background-size: 350px;
    }
    .topAwrap .inATxt {
        width: 100%;
        padding: 50px 15px 0;
    }
    .topAwrap .inATxt > h2 {
        margin-bottom: 150px;
    }
    .inABtnBox {
        width: 100%;
        padding: 10px;
        margin-top: 20px;
    }
}
/* Top Intro3 */
.topBwrap {}
.topBBox {
    display: flex;
    align-items: center;
    text-align: left;
}
.inB1ax {width: 43%;}
.inB1ax img {width: 90%;}
.inB2ax {
    flex: 1;
    padding: 30px 10px 30px 15px;
    box-sizing: border-box;
}
.inB2ax > h3 {margin-bottom: 35px;}
@media screen and (max-width:768px) {
    .topBBox {flex-direction: column;}
    .inB1ax {width: 100%; text-align: center; }   
    .inB1ax img {
        width: 77%;
        margin-left: -18px;
    } 
    .inB2ax {
        flex: none;
        width: 100%;
        padding: 30px 8px 0;
    }
    .inB2ax > h3 {margin-bottom: 25px;}
}

/* Main Video Area */
.mVideoWrap {}
.mVideoBox {text-align: center;}
.mVideoBox > h3 {margin-bottom: 40px;}
.mvb-frame {
    position: relative;
    padding-top: 56.25%;
    overflow: hidden;
    margin-bottom: 50px;
}
.mvb-frame > p {
    position: absolute;
    top: 0; left: 0; right: 0; bottom: 0;
    background-color: #eee;
}
.mvb-frame > p iframe, .mvb-frame > p video {
    width: 100%;
    height: 100%;
} 
@media screen and (max-width:768px) {
    .mVideoBox > h3 {margin-bottom: 25px;}
}

.layerTermbx {
    display: none;
    position: fixed;
    background-color: rgba(0,0,0,0.8);
    top: 0; left: 0; right: 0; bottom: 0;
    z-index: 50;
    font-size: 14.5px;
    line-height: 1.7;
    box-sizing: border-box;
}
.layerTermbx .width_fx {
    position: relative;
    padding: 40px 15px 20px;
    box-sizing: border-box;
}
.termBox {
    position: relative;
    width: 100%;
    height: calc(100vh - 100px);
    background-color: #f5f5f5;
    margin: 25px auto;
    padding: 20px 15px 30px;
    border-radius: 5px;
    box-sizing: border-box;
    overflow-y: auto;
}
.termBox > h3 {
    margin-bottom: 17px;
    font-weight: 600;
    text-align: center;
    font-size: 1.2em;
}
.termBox > h4 {
    margin: 15px 0 8px;
    font-size: 1.02em;
    font-weight: 550;
}
.closeTermBx {
    position: absolute;
    width: 30px; height: 30px;
    background: transparent url('/images/close_w1132.svg') no-repeat center / cover;
    border: none;
    outline: none;
    top: 23px; right: 17px;
    cursor: pointer;
}
.termBox > p, .termBox ul li {color: #666;}
.termBox ul {
    margin-bottom: 15px;
    counter-reset : numIng;
}
.termBox li {
    position: relative;
    padding: 0 0 0 20px;
    margin-bottom: 4px;
    box-sizing: border-box;
}
.termBox li::before {
    counter-increment : numIng; 
    content : '(' counter(numIng) ')';
    position: absolute;
    left: 0;
}
@media screen and (max-width:768px) {
    .layerTermbx {padding: 0 10px;}
}
/* End Term Box */

/* Layer Popup */
#popBox2 {
    position:absolute;
    top: 15%; left: 50%; transform: translateX(-50%);
    display: none;
    font-size: 16px;
    width: 100%; max-width: 600px;
    letter-spacing: -1px;
    border-radius: 5px;
    overflow: hidden;
    box-sizing: border-box;
    z-index: 49;
}
#popBox2 img {display: block; width: 100%;}
.closeBox {
    padding: 7px; box-sizing: border-box;
    display: flex; align-items: center;
    background-color: #f5f5f5;
    color: #707070;
    border: 1px solid #ccc;
    box-sizing: border-box;
}
.closeBox .daychkBox {flex: 1;}
.closeBox button {
    font-size: 1em;
    outline: none; border: none; background-color: transparent; cursor: pointer;
    color: #707070;
    font-weight: 600;
}
@media screen and (max-width:768px) {
    #popBox2 {width: 90%; top:18%; font-size: 15px;}
}
/* End Layer Popup */
