@charset "utf-8";
/* Main */
.main .container{max-width: 1200px;}

/* Hero */
.hero{width: 100%; color: #fff; background: url("../img/sponsor/bg.jpg") no-repeat center center/cover; position: relative; overflow: hidden;}

.hero-logo{position: absolute; top: min(2.5vw,30px); right: min(2.5vw,30px); line-height: 1; width: min(12.5vw,150px);}
.hero-wrap{height: min(50.41vw,605px); position: relative; display: flex; align-items: center; width: 100%; max-width: 1200px; margin: 0 auto;}
.hero-img{position: absolute; bottom: 0; right: 0; width: 45.84%;}
.hero-inner{width: 54.16%; text-align: center;}

.hero-tit{font-size: min(7.5vw,9rem); line-height: 0.8; font-weight: bold; font-family: "Barlow", sans-serif;}
.hero-tit span{display: block;}
.hero-tit span:nth-of-type(1)::after{content: ""; width: 0.789em; height: 0.789em; background: url("../img/sponsor/x.png") no-repeat center center/100% 100%; display: block; line-height: 1; margin: 0.34em auto 0.26em;}
.hero-txt{font-size: min(2.08vw,2.5rem); line-height: 1.72; font-weight: bold; margin: 2.56em 0 0 0;}

@media (max-width: 768px){
    .hero-wrap{height: 64vw;}
    .hero-logo{width: 16%; top: 4vw; right: 4vw;}
    .hero-img{width: 50%; right: -5%;}
    .hero-tit{font-size: 8vw;}
    .hero-txt{font-size: 3.3vw; margin: 2em 0 0 0;}
}

/* Block */
.block{border: 2px solid #005ab5; border-radius: 20px; position: relative; padding: min(5vw,60px);}
.block-tit{position: absolute; top: 0; left: 0; width: 100%; text-align: center; transform: translateY(-60%);}
.block-tit span{font-size: 4.8rem; line-height: 1; background: #fff; display: inline-block; font-weight: bold; font-family: "Barlow", sans-serif; color: #005ab5; padding: 0 1em;}

.block-tit2{font-size: 2.8rem; font-weight: bold; line-height: 1.6; color: #0c4097; margin: 0 0 10px;}
.block-tit3{font-size: 2rem; font-weight: bold; line-height: 1.8; color: #0c4097; margin: 0 0 15px;}

.block-txt{font-size: 1.8rem; line-height: 1.89;}
.block-txt p:not(:last-of-type){margin-bottom: 35px;}

@media (max-width: 768px){
    .block{border-radius: 15px; padding: 30px 20px;}
    .block-tit span{font-size: 4.2rem; padding: 0 0.5em;}
    
    .block-txt p:not(:last-of-type){margin-bottom: 20px;}
}

/* Sponsor */
.sponsor{margin: 0 0 60px; padding-bottom: 45px;}
.sponsor-logo{text-align: center; margin: 35px 0 0 0; line-height: 1;}

@media (max-width: 768px){
    .sponsor{margin: 0 0 60px; padding-bottom: 30px;}
    .sponsor-logo{width: 150px; margin: 20px auto 0;}
}

/* Message */
.message{margin: 0 0 40px;}
.message-box{display: flex; justify-content: space-between; flex-wrap: wrap; margin: 0 0 40px;}
.message-box .img{width: 42.8%;}
.message-box .inner{width: 52.2%;}

@media (max-width: 768px){
    .message-box .img{width: 100%;}
    .message-box .inner{width: 100%; order: -1; margin: 0 0 20px;}
}

/* Profile */
.profile{margin: 0 0 40px;}
.profile-tbl{border-top: 1px solid #adb5c4; width: 100%;}
.profile-tbl th,
.profile-tbl td{border-bottom: 1px solid #adb5c4;}

.profile-tbl th{width: 120px; background: #e6ebf4; padding: 15px 0 15px 20px; text-align: left; font-weight: 400;}
.profile-tbl td{padding: 15px 20px;}

@media (max-width: 768px){
    .profile-tbl th{width: 100px; padding: 15px 0 15px 15px;}
    .profile-tbl td{padding: 15px 0 15px 15px;}
}

/* Achieve */
.achieve-tbl{border: 1px solid #adb5c4; width: 100%; max-width: 640px;}
.achieve-tbl td:nth-of-type(1){width: 85px; background: #fff;}
.achieve-tbl td:nth-of-type(3){width: 95px; text-align: right; padding: 15px 30px 15px 0;}

.achieve-tbl th{border-right: 1px solid #adb5c4; border-bottom: 1px solid #adb5c4; padding: 15px 19px; font-weight: 400; text-align: left; background: #e6ebf4;}
.achieve-tbl th:nth-of-type(3){text-align: center;}
.achieve-tbl td{border-right: 1px solid #adb5c4; border-bottom: 1px solid #adb5c4; padding: 15px 19px; vertical-align: top;}

.achieve-tbl .list li{text-indent: -1.2em; margin: 0 0 10px 1.2em;}
.achieve-tbl .list li:last-of-type{margin-bottom: 0;}

.achieve-tbl .rank li{font-weight: bold; margin: 0 0 10px;}
.achieve-tbl .rank li:last-of-type{margin-bottom: 0;}

.achieve-tbl .red{color: #ff2600;}

html[lang="en"] .achieve-tbl{max-width: 750px;}
html[lang="en"] .achieve-tbl td:nth-of-type(3){width: 150px;}

@media (max-width: 768px){
    .swipe{display: none !important;}
    
    html[lang="en"] .achieve-tbl td:nth-of-type(3){width: 120px; padding: 15px 20px 15px 0;}
}

@media (max-width: 480px){
    .swipe{display: block !important; margin: 0 0 1rem !important;}
    
    .achieve-scroll{width: 100%; overflow: scroll; padding: 0 0 10px;}
    .achieve-tbl{width: 440px; border-left: none;}    
    
    .achieve-tbl th:nth-of-type(1),
    .achieve-tbl td:nth-of-type(1){position: sticky; left: 0; border-right: none; width: 70px; padding-right: 0;}
    
    .achieve-tbl th:nth-of-type(1)::before,
    .achieve-tbl td:nth-of-type(1)::before{content: ""; position: absolute; top: 0; left: 0; width: 1px; height: 100%; background: #adb5c4;}
    
    .achieve-tbl th:nth-of-type(1)::after,
    .achieve-tbl td:nth-of-type(1)::after{content: ""; position: absolute; top: 0; right: 0; width: 1px; height: 100%; background: #adb5c4;}
    
    html[lang="en"] .achieve-tbl{width: 500px;}
    
}

/* Release */
.release{font-size: 1.8rem; line-height: 1.89; background: #e6ebf4; border-radius: 10px; padding: 30px;}
.release-tit{font-weight: bold;}
.release-list li{font-weight: bold; margin-bottom: 4px;}
.release-list a{color: #0c4097; text-decoration: underline; text-underline-offset: 0.25em; position: relative; display: inline-block; padding: 0 0 0 30px;}
.release-list a::before{content: ""; width: 24px; height: 24px; background: #0c4097; display: block; position: absolute; top: 5px; left: 0;
mask: url("../img/common/ic-download.svg") no-repeat top left/100% 100%;
-webkit-mask: url("../img/common/ic-download.svg") no-repeat top left/100% 100%;}
.release-list a:hover{text-decoration: none;}

@media (max-width: 768px){
    .release{padding: 15px;}
}