@charset "UTF-8";
/* CSS Document */
/*--------------------
01.top
02.news
03.schedule
04.division
04-01.division_detail
04-01-01.small_start
05.enterprise
06.judge
07.news_detail
08.schedule_detail
09.outline
10.nominations_list
11.awards
12.404ページ
13.access
--------------------*/
/*----------
01.top
----------*/
@keyframes fadeInOut {
    0% { opacity: 0; }
    20% { opacity: 1; }   /* フェードイン完了 */
    80% { opacity: 1; }   /* 少し止める */
    100% { opacity: 0; }  /* フェードアウト */
}

/* シンプルなフェードイン */
@keyframes fadeIn {
    0% {
        opacity: 0;
    }
    100% {
        opacity: 1;
    }
}
.top__fv {
    position: relative;
}
.top__fv-logo{
    width: 100%;
    max-width: 600px;
    height: auto;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 3;
    opacity: 0;
    animation: fadeInOut 2s ease-out 0.5s forwards;
}
@media only screen and (max-width:499px){
    .top__fv-logo{
        width: 100%;
        max-width: 250px;
        transform: translate(-50%, -800%);
    }
}


.top__fv-text{
    position: relative;
    z-index: 3;
}
.top__fv-bg {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 2;
    opacity: 0;
    animation: fadeIn 2s ease-out 3s forwards; /* すぐ開始 */
}
.top__fv-bg2 {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
}
/* ② 次に .top__fv-text と .top__fv-bg2 を同時にフェードイン */
.top__fv-text,
.top__fv-bg2 {
    opacity: 0;
    animation: fadeIn 2s ease-out 5s forwards; 
}
.cm_h2{
font-size: 80px;
font-weight: 700;
color: #E70012;
}

/* #top{
margin-top: 70px;
} */
#top .gif{
object-fit: cover;
height: 100vh;
width: 100%;
}

#top .photo-caption{
    font-size: 18px; color:#155EAB; margin: 80px 0 24px 8%;
    line-height: 20px;
}

#top .photo-caption span{font-size: 14px;}

#top .cnt_area02{
margin: 80px auto 108px;
padding-top: 208px;
position: relative;
overflow: hidden;

}
#top .cnt_area02::before {
content: "about";
top: -13px;
left: 0;
}
#top .cnt_area02 .en_big{
left: 0;
}

#top .cnt_area02 h2{
margin-bottom: 66px;
}
#top .cnt_area03 .en_big{
right: -51px;
}
#top .cnt_area02 h2 + .cnt_text{
display: block;
font-size: 32px;
line-height: 44px;
letter-spacing: 0.03em;
font-weight: 700;
margin-bottom: 48px;
}
#top .cnt_area02 p{
font-weight: 500;
line-height: 32px;
letter-spacing: 0.03em;
margin-bottom: 48px;
}
#top .cnt_area02 .flex_box{
margin-bottom: 80px;
}
#top .btn{
width: 382px;
margin-right: 24px;
margin-bottom: 20px;
}

#top .btn a{
padding: 26px 21px;
display: block;
}
#top .btn:first-child a{
background-color: #8B96E0;
}

#top .btn:last-child a{
background-color: #88C4EB;
}

#top .btn .title{
font-size: 24px;
line-height: 32px;
letter-spacing: 0.03em;
color: #fff;
font-weight: 700;
text-align: center;
margin-bottom: 12px;
}
#top .btn .cnt_text{
font-weight: 500;
line-height: 27px;
letter-spacing: 0.03em;
text-align: center;
}
#top .enterprise span{
font-size: 18px;
line-height: 30px;
letter-spacing: 0.02em;
display: block;
text-align: center;
font-weight: 700;
margin-bottom: 16px;
}
#top .enterprise ul.pc{
display: flex;
}
#top .enterprise ul{
display: flex;
justify-content: center;
}
#top .enterprise .mb80{
margin-bottom: 0;
}
#top .enterprise ul li{
max-width: 138px;
margin-left: 6px;
}
#top .enterprise ul li:first-child{
margin-left: 0;
}
#top .enterprise ul.sp{
display: none;
}

#top .judge{
max-width: 1280px;
margin: 80px auto 100px;
}
#top .judge span{
font-size: 18px;
line-height: 30px;
letter-spacing: 0.02em;
display: block;
text-align: center;
margin-bottom: 52px;
font-weight: 700;
}
#top .judge ul{
display: flex;
}
#top .judge .slick-slide{
max-width: 280px;
margin: 0 15px;
}
#top .cnt_area03{
padding-top: 171px;
padding-bottom: 200px;
overflow: hidden;
margin: 0 auto;
position: relative;
}
#top .cnt_area03::before {
content: "news";
top: 0;
left: 358px;
}
#top .cnt_area03 h2{
margin-bottom: 66px;
}

#top .cnt_area03 .cnt_box{
border-bottom: 1px solid #C1C1C1;
}
#top .cnt_area03 .cnt_box a{
display: flex;
padding: 20px 0;
flex-wrap: wrap;
margin: 0 30.5px;
}
#top .cnt_area03 .cnt_date{
max-width: 70px;
color: rgba(70, 70, 70, 0.5);
margin-right: 57px;
}
#top .cnt_area03 .title{
font-weight: 500;
font-size: 18px;
line-height: 32px;
letter-spacing: 0.03em;
}
#top .cnt_area03 .cnt_g{
margin-bottom: 48px;
}
#top .btn_type01{
background-color: #F79096;
margin-left: auto;
}
#top .btn_type01:hover{
background-color: #000;
color: #fff;
}
#top .cnt_area03 h2 + .cnt_text {
display: block;
font-size: 32px;
line-height: 44px;
letter-spacing: 0.03em;
font-weight: 700;
margin-bottom: 48px;
}
#top .cnt_area04{
position: relative;
overflow: hidden;
/* max-width: 1280px; */
margin: 200px auto;
padding-top: 34px;
}
#top .cnt_area04::before {
content: "public viewing";
top: -13px;
left: 49px;
white-space: nowrap;
}
#top .cnt_area04 h2 + .cnt_text {
display: block;
font-size: 32px;
line-height: 44px;
letter-spacing: 0.03em;
font-weight: 700;
margin-bottom: 48px;
}
#top .cnt_area04 h2 span{
display: inline-block;

}
#top .cnt_area04 h2 span:last-child{
margin-left: 29px;
}
#top .cnt_area04 h2{
margin-bottom: 61px;
}
#top .cnt_area04 .cnt_text + p{
line-height: 32px;
letter-spacing: 0.03em;
margin-bottom: 48px;
}
#top .cnt_area04 .btn:first-child a {
background-color: #64BCA2;
}
#top .btn:last-child a {
background-color: #DCA74A;
}
#top .cnt_area04 .btn a:hover, #top .cnt_area02 .btn a:hover{
background-color: #000000;
}
#top .btn a:hover .cnt_text{
color: #fff;
}
#top .flex_box{
flex-wrap: wrap;
}
#top .cnt_area04 .en_big{
display: inline-block;
left: -25px;
}



/*----------
01-01.アニメーション
----------*/
.intro{
height: 100vh;
position: sticky;
top: 0;
left: 0;
right: 0;
bottom: 0;
position: -webkit-sticky;
}
.animation{
position: relative;
display: flex;
justify-content: space-between;
margin: 0 auto;
padding-bottom: 174px;
}
.animation .contents_in{
width: 49.29%;
}

.animation .cnt_box{
position: relative;
}

/*main copy*/
.animation .cnt_box:nth-child(2){
max-width: 380px;
margin: -48px auto 0 auto;
}

.animation .cnt_box:first-child .cnt_text{
top: 50%;
left: 50%;
display: block;
}
.animation .cnt_box:first-child .cnt_img{
max-width: 528px;
margin: 0 auto 72px auto;

}
.animation .cnt_box:first-child .cnt_text{
font-size: 15px;
font-weight: 600;
text-align: center;
color: #255FAD;
display: block;

}

.animation .cnt_box:nth-child(2) span{
font-size: 56px;
display: block;
text-align: center;
font-weight: 900;
margin-bottom: 60px;
color: #255FAD;

}
.animation .cnt_box p{
font-size: 28px;
font-weight: 700;
line-height: 60px;
letter-spacing: 0.02em;
text-align: center;
color: #255FAD;
}
.left{
position: absolute;
max-width: 266.09px;
top: 0;
width: 20.78%;
left: 0;
}
.right{
position: absolute;
max-width: 266.09px;
width: 20.78%;
bottom: 0;
right: 0;
}

.mainvisual{
position: -webkit-sticky;
position: sticky;
top: 0;
left: 0;
right: 0;
bottom: 0;
padding-top: 70px;
}
.mainvisual .contents_in{
position: relative;
height: 100vh;
}
.mainvisual img{
position: absolute;
}
.mainvisual .paint{
animation-duration: 13s;
animation-fill-mode: forwards;
z-index: 1;
}
.overflow_hidden{
min-height: 100vh;
}
.mainvisual_arrow{
max-width: 35px;
width: 100%;
position: absolute;
bottom: 15%;
left: 0;
right: 0;
margin: 0 auto;
opacity: 1;
animation-name: arrow_blue;
animation-fill-mode: none;
animation-duration: 13s;
animation-fill-mode: forwards;
}
@keyframes arrow_blue{
0%{
opacity: 0;
}
30%{
opacity: 0;
}
33%{
opacity: 1;
}
}

.mainvisual .questcup{
max-width: 835px;
width: 65.23%;
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 100%;
animation-name: questcup;
animation-fill-mode: none;
opacity: 0;
animation-duration: 13s;
animation-fill-mode: forwards;
}
@keyframes questcup{
0%{
opacity: 1;
}
25%{
opacity: 1;
}
32.69%{
opacity: 0;
}
}

.mainvisual .logo{
max-width: 471.38px;
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
animation-name: logo;
animation-fill-mode: forwards;
opacity: 1;
z-index: 2;
animation-duration: 13s;
animation-fill-mode: forwards;
}
@keyframes logo{
0%{
opacity: 0;
}
32.69%{
opacity: 0;
}
33%{
opacity: 1;
}
}




/*================================
main visual2024
================================*/

#top .cnt_area{
position: relative;
padding-top: 70px;
}

/*
@media only screen and (max-width:1124px){}
*/

#top .cnt_area div.theme-pos{
    padding-top:64px;
}

#top .cnt_area .text_g{

/*max-width: 1039px;*/
width: 81.17%;
margin: 0 auto;
top: 50%;
transform: translateY(-50%);
position: absolute;
left: 0;
right: 0;
margin: auto;
z-index: 2;
}

#top .cnt_area .contents_in{
position: relative;
}

#top .cnt_area .contents_in img{
    width: 100%;
}

#top .date_g{
margin-bottom: 0;
}

#top .skip{
position: absolute;
bottom: 0;
width: 100px;
bottom: 20px;
right: 20px;
z-index: 9;
font-weight: 700;
animation-name: skip;
animation-duration: 1s;
animation-delay: 3.315s;
animation-iteration-count: 3;
opacity: 0;
}
#top .skip a{
color: #ab1515;
}


@keyframes skip{
0%,100% {
opacity: 1;
}

50% {
opacity: 0;
}
}

.fadeInUpTrigger{
opacity:0;
}

.fadeInUpTrigger.fadeInUp{
animation-name: fadeInUp;
animation-duration: 1s;
animation-fill-mode: forwards;
}

@keyframes fadeInUp{
0% {
opacity: 0;
}
50%{
opacity: 0.5;
}
100% {
opacity: 1;
}
}

#top .date_g{
text-align: center;
color: #255FAD;
margin-bottom: 58px;
margin: 22.7px auto 0;
display: flex;
align-items: center;
justify-content: center;
}
#top .date_g span{
display: inline-block;
}
#top .date_g .date{
font-size: 60px;
line-height: 80px;
letter-spacing: -0.05em;
font-weight: 400;
font-family: 'FuturaStd-Book', sans-serif;
}
#top .date_g .week{
font-size: 39px;
line-height: 52px;
margin-left: 23px;
}
#top .arrow{
max-width: 22.54px;
margin: 0 15px;
}
#top .nittei{
font-size: 14px;
font-weight: 700;
line-height: 18px;
text-align: center;
color: #fff;
padding: 24px 22px 30px 28px;
background: center/contain no-repeat url(../img/top/background.png);
margin-right: 9px;
}
/*----------
01-02.FV2 2026年11月対応
----------*/
.fv2__container {
    position: relative;
    text-align: center;
    background-image: url(../img/top/fv2__bg__pc.png);  
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    padding: 130px 0 150px;
}
@media only screen and (max-width:750px){
    .fv2__container {
        background-image: url(../img/top/fv2__bg__sp.png);  
        background-size: cover;
        background-position: left top;   /* ★ 左上を基準にする */
        padding: 64px 0 110px;
    }
}
.fv2__bg__pc {
    position: absolute;
    top: 0;
    left: 0;
}


.fv2__bg__sp {
    position: absolute;
    top: 0;
    left: 0;

}
.fv2__title-text{
    font-size: 24px;
    line-height: 1.6;
    font-weight: bold;    
}
@media only screen and (max-width:750px){
    .fv2__title-text{
        font-size: 18px;    
    }

}
.fv2__title-img{
    width: 100%;
    max-width: 440px;
    height: auto;
    justify-content: center;
    margin-inline: auto;
    margin-top: 20px;
}
@media only screen and (max-width:750px){
    .fv2__title-img{
        max-width: 290px;
        margin-top: 20px;
    }

}
.fv2__text-box{
    margin-top: 150px;
}
@media only screen and (max-width:750px){
    .fv2__text-box{
        margin-top: 30px;
    }

}
.fv2__text{
    font-size: 24px;
    line-height: 1.6;
    font-weight: bold;    
    margin-top: 36px;
}
@media only screen and (max-width:750px){
    .fv2__text{
        font-size: 18px;
        margin-top: 30px;
    }

}

/*----------
02.news
----------*/

#news .h1_ptn01_g::before {
content: "news";
}
#news .cnt_box{
max-width: 300px;
width: 31.25%;
border: 1px solid #F0F0F0;
margin-bottom: 45px;
}
#news .cnt_box .cnt_img{
height: 200px;
}
#news .cnt_box .cnt_img img{
height: 100%;
object-fit: cover;
}
#news .cnt_area02{
padding: 83px 0 80px;
}
#news .cnt_box .text_g{
padding: 17px 17.5px 30px;
}
#news .cnt_box .date{
font-size: 14px;
line-height: 19px;
font-weight: 500;
color: rgba(70, 70, 70, 0.5);
margin-bottom: 8px;
font-family: 'FuturaStd-Book', sans-serif;
font-weight: 400;
}
#news .cnt_box h2{
line-height: 25.6px;
letter-spacing: 0.03em;
font-weight: 500;
margin-bottom: 10px;
}
#news .cnt_box p{
font-size: 14px;
line-height: 22.68px;
overflow: hidden;
display: -webkit-box;
-webkit-box-orient: vertical;
-webkit-line-clamp: 3;
}
#news section .flex_box01{
justify-content: space-between;
flex-wrap: wrap;
position: relative;
}
#news section .flex_box01::after{
content: "";
display: inline-block;
max-width: 300px;
width: 31.25%;
}

#news .page_nav{
margin: 5px auto 0;
}

#news .wp-pagenavi{
display: flex;
justify-content: center;
align-items: center;
margin: 0 auto;
}

#news .page_nav .wp-pagenavi a, #news .page_nav .wp-pagenavi span {
text-decoration: none;
border: 1px solid #BFBFBF;
margin: 2px;
width: 38px;
height: 38px;
color: #646464;
font-size: 14px;
display: inline-block;
text-align: center;
line-height: 38px;
font-weight: Book;
margin: 0 6px;
border: none;
padding: 0;
font-family: 'FuturaStd-Book', sans-serif;
font-weight: 400;
}
/* #news .page_nav .wp-pagenavi span.extend{
display: none;
} */
#news .page_nav .wp-pagenavi .nextpostslink {
color: rgba(0,0,0,0);
width: 0;
height: 0;
border-style: solid;
border-width: 5px 0 5px 6px;
border-color: transparent transparent transparent #E70012;
margin-left: 30px;
}

#news .page_nav .wp-pagenavi .previouspostslink {
color: rgba(0,0,0,0);
width: 0;
height: 0;
border-style: solid;
border-width: 5px 0 5px 6px;
border-color: transparent transparent transparent #E70012;
margin-right: 30px;
transform: rotate(180deg);
}

#news .page_nav .wp-pagenavi span.current{
color: #E70012;
border: 1px solid #E70012;
border-radius: 50%;
}

/*----------
03.schedule
----------*/
#schedule .h1_ptn01_g::before {
content: "schedule";
}
#schedule .cnt_area02{
padding: 252px 0 197.2px;
}
#schedule .cnt_area02::before {
content: "Schedule";
}
#schedule h2{
display: flex;
align-items: baseline;
margin-bottom: 97px;
}
#schedule h2 span{
display: inline-block;
font-size: 32px;
line-height: 44px;
letter-spacing: 0.03em;
color: #000000;
font-weight: 700;
margin-left: 97px;
}
#schedule .cnt_area02 .flex_box_out{
border-bottom: 1px solid #C1C1C1;
margin-bottom: 80px;
}
#schedule .cnt_date{
border: 10px solid #F0F0F0;
padding: 17px 0 39px;
width: 230px;
height: 230px;
border-radius: 50%;
margin: 0 auto 32px;
}
#schedule .date_g{
margin-right: 138px;}
#schedule .date{
display: flex;
align-items: center;
border-bottom: 5px solid #F0F0F0;
justify-content: center;
width: 78.26%;
margin: 0 auto;
}
#schedule .date span:first-child{
font-size: 28px;
line-height: 78px;
letter-spacing: 0.03em;
}
#schedule .date .num{
font-size: 60px;
line-height: 78px;
letter-spacing: 0.03em;
font-weight: 500;
font-family: 'FuturaStd', sans-serif;
}
#schedule .date_red{
font-size: 60px;
letter-spacing: -0.03em;
font-weight: 700;
color: #E70012;
text-align: center;
margin-top: 17px;
font-family: 'FuturaStd', sans-serif;
}
#schedule .cnt_area02 ul{
flex-wrap: wrap;
/* max-width: 590px; */
width: 61.45%;
justify-content: space-between;
}
#schedule .cnt_area02 ul li{
max-width: 280px;
margin-bottom: 80px;
}
#schedule .cnt_area02 ul li .cnt_img{
max-width: 220px;
margin: 0 auto 17px;
}
#schedule .cnt_area02 ul li span{
display: block;
font-size: 24px;
line-height: 36px;
letter-spacing: 0.03em;
font-weight: 700;
text-align: center;
}
#schedule .cnt_area02 .btn_type01 {
background: #F79096;
color: #fff;
max-width: 230px;
margin: 0 auto 0;
}
#schedule .cnt_area02 .btn_type01:hover{
color: #fff;
background-color: #000;
}
#schedule .cnt_area02 .btn_type01.sp{
display: none;
}
/*----------
04.division
----------*/
#division .h1_ptn01_g::before {
content: "division";
}
#division .cnt_area02{
padding: 61px 0 199px;
}
#division h2{
font-size: 40px;
line-height: 44px;
letter-spacing: 0.03em;
margin-bottom: 80px;
text-align: center;
font-weight: 700;
}

#division .cnt_area02 .cnt_g:not(:last-child){
border-bottom: 1px solid #C1C1C1;
padding-bottom: 120px;
margin-bottom: 120px;
}
#division .cnt_area02 .flex_box:not(:last-child){
margin-bottom: 60px;
}
#division .flex_box .cnt_img{
max-width: 260px;
margin-right: 80px;
}
#division h3{
font-size: 32px;
line-height: 46px;
font-weight: 700;
margin-bottom: 20px;
}
#division p{
font-size: 20px;
line-height: 32px;
font-weight: 500;
margin-bottom: 40px;
}
#division .btn_type01:link{
font-size: 20px;
line-height: 29px;
background-color: #F0B84F;
padding: 11.5px 0;
max-width: 208px;
}
#division .btn_type01:hover{
color: #fff;
background-color: #000;
}
/*----------
05.enterprise
----------*/
#enterprise{
background-color: #FAFAFA;
}
#enterprise .h1_ptn01_g::before {
content: "message";
line-height: initial;
}
#enterprise .h1_ptn01_g {
padding: 238px 0 71px;
}
#enterprise .cnt_area02{
padding: 20px 0 40px;
width: 84.375%;
}
#enterprise h2{
display: flex;
align-items: center;
padding-bottom: 28px;
border-bottom: 1px solid #C1C1C1;
font-size: 24px;
line-height: 28px;
font-weight: 500;
margin-bottom: 40px;
}
#enterprise h2 .logo{
margin-right: 6.458%;
width: 22.91%;
margin-top: 6px;
}
#enterprise h2 span{
display: inline-block;
}
#enterprise .cnt_img{
margin-right: 6.458%;
width: 22.91%;

}
#enterprise .cnt_img img{
border: 1px solid #F7F7F7;
}
#enterprise .text_g{
width: 70.632%;
}
#enterprise .name{
display: block;
font-size: 20px;
line-height: 28px;
letter-spacing: 0.03em;
font-weight: 500;
margin-bottom: 8px;
}
#enterprise .position{
display: block;
font-size: 14px;
line-height: 20px;
margin-bottom: 20px;
}
#enterprise .text_g p{
line-height: 28px;
}
#enterprise section{
max-width: 1080px;
margin: 0 auto 80px;
background-color: #fff;
}
#enterprise section .flex_box:not(:last-child){
margin-bottom: 40px;
}
#enterprise .enterprise_name{
display: flex;
flex-wrap: wrap;
justify-content: space-between;
margin-top: 20px;
margin-bottom: 20px;
}
#enterprise .enterprise_name li{
width: 232px;
margin-bottom: 10px;
}

#enterprise .enterprise_name::after {
content: "";
display:block;
width: 232px;
}
#enterprise .enterprise_name::before { 
content: ""; 
display:block; 
width: 232px;
order: 1; /* アイテムの並び順 */
}

#enterprise .enterprise_name a{
color: #fff;
padding: 17px 0;
background-color: #E70012;
text-align: center;
display: block;
width: 100%;
}
#enterprise section{
margin-bottom: 80px;
padding: 40px 0;
}

/*----------
06.judge
----------*/
#judge{
background-color: #FAFAFA;
}
#judge .h1_ptn01_g::before {
content: "message";
line-height: initial;
}
#judge .h1_ptn01_g{
padding: 238px 0 71px;
}
#judge .cnt_area02{
padding: 20px 0 60px;
width: 84.375%;
background-color: #fff;
margin: 69px auto 30px;
}
/* #judge .section_g{
margin-top: -69px;
padding-top: 69px;
} */
#judge .judge_name.sp{
display: none;
}
#judge .judge_name{
display: flex;
flex-wrap: wrap;
justify-content: space-between;
}
#judge .judge_name.pc:first-of-type{
margin-top: 20px;
}
#judge .judge_name.pc:first-of-type::after{
content: "";
display: inline-block;
/*width: 32.7%;*/
width: 49.47%;

}
#judge .judge_name.pc:first-of-type li{
/*width: 32.7%;*/
width: 49.47%;
}
#judge .judge_name02.pc li{
width: 49.47%;
}
#judge .judge_name li{
/* width: 232px; */
margin-bottom: 10px;
display: flex;
justify-content: center;
align-items: center;
font-weight: 700;
}
#judge .judge_name a{
padding: 16.5px;
text-align: center;
color: #fff;
display: block;
width: 100%;
}
#judge .judge_name li:first-child {
background-color: #E70012;
}
#judge .judge_name li:nth-child(2) {
background-color: #E75296;
}
#judge .judge_name li:nth-child(3) {
background-color: #155EAB;
}
#judge .judge_name02 li:nth-child(1) {
background-color: #008D43;
}

#judge .judge_name02 li:nth-child(2) {
background-color: #FABE00;
}
#judge .judge_name02 li:nth-child(3) {
background-color: #1F9DDA;
}

#judge .judge_name02 li:nth-child(4) {
background-color: #904796;
}

#judge h2{
text-align: center;
font-size: 32px;
line-height: 46px;
font-weight: 700;
margin: 24px 0 24px -16px;
}
#judge h2 + span{
display: block;
font-size: 14px;
line-height: 20px;
margin-bottom: 60px;
text-align: center;
}
#judge .cnt_area02 .flex_box{
justify-content: space-between;
}
#judge .cnt_img{
width: 22.91%;
}
#judge .text_g{
width: 71.45%;
}
#judge .name{
display: block;
font-size: 20px;
line-height: 28px;
font-weight: 500;
margin-bottom: 12px;
}
#judge .position{
display: inline-block;
margin-right: 15px;
font-size: 14px;
line-height: 20px;
}

#judge .hiragana{
    font-size: 14px;
}

#judge .gray{
display: block;
color: #6E6E6E;
font-size: 14px;
line-height: 20px;
font-weight: 500;
margin-bottom: 20px;
}
#judge .cnt_area02 p{
line-height: 28px;
margin-bottom: 20px;
}
#judge .profile{
padding: 20px;
background-color: #FAFAFA;
}
#judge .profile span{
display: block;
font-size: 14px;
font-weight: 500;
line-height: 28px;
margin-bottom: 12px;
}
#judge .profile .cnt_text{
font-size: 14px;
line-height: 26px;
}
#judge .cnt_area02 .flex_box:not(:last-child){
margin-bottom: 100px;
}
#judge .sub_area{
margin-top: 50px;
}
#judge .sub_area .contents_in{
width: 100%;
}
#judge .coming_soon{
text-align: center;
display: block;
font-size: 28px;
line-height: 1.8;
font-family: 'FuturaStd', sans-serif;
font-weight: 700;
}
/*----------
07.news_detail
----------*/
#news_detail h1{
font-size: 32px;
line-height: 52px;
margin-top: 52px;
font-weight: 700;
margin-bottom: 17px;
}
#news_detail .date{
font-weight: 500;
line-height: 32px;
color: rgba(70, 70, 70, 0.5);
display: block;
text-align: right;
margin-bottom: 58px;
}
#news_detail figure{
margin-bottom: 60px;
}
#news_detail h2{
font-size: 26px;
line-height: 38px;
font-weight: 700;
margin-bottom: 32px;
}
#news_detail p{
line-height: 32px;
margin-bottom: 32px;
}
#news_detail .btn_type01 {
color: #000000;
font-size: 20px;
font-weight: 500;
margin: 16px auto 82px;
background-color: #EBEBEB;
}
#news_detail .btn_type01:hover{
color: #fff;
background-color: #000;
}
#news_detail{
margin-top: 69px;
}
/*----------
08.schedule_detail
----------*/
#schedule_detail .cnt_area02{
margin-top: 50px;
}
#schedule_detail .date_black{
display: flex;
line-height: 72.99px;
align-items: center;
padding-right: 25.3px;
border-right: 3px solid #F0F0F0;
margin-right: 26.9px;
}
#schedule_detail .date_black span:first-child{
display: inline-block;
font-size: 33px;
margin-right: 14.8px;
}
#schedule_detail .date_black span:last-child{
display: inline-block;
font-size: 72px;
}
#schedule_detail .date_red{
font-size: 72px;
font-weight: 700;
color: #E70012;
}

#schedule_detail .flex_box.date{
padding-bottom: 40px;
margin-bottom: 40px;
border-bottom: 1px solid #C1C1C1;
}
#schedule_detail h2{
max-width: 328px;
margin-bottom: 8px;
}
#schedule_detail h2 + .cnt_text{
font-size: 32px;
line-height: 44px;
font-weight: 700;
margin-bottom: 40px;
}


#schedule_detail .add{
line-height: 44px;
font-weight: 700;
margin-bottom: 20px;
display: block;
}
#schedule_detail .title{
font-size: 24px;
line-height: 44px;
font-weight: 700;
padding: 11px 20px;
background-color: #FFDEE1;
margin-bottom: 28px;
}

 #schedule_detail th{
width: 140px;
vertical-align: middle;
padding: 74px 0 65px;
text-align: center;
color: #fff;
background-color: #E70012;
font-size: 32px;
line-height: 44px;
overflow-x: auto;
font-family: 'FuturaStd', sans-serif;
font-weight: 900;
border-bottom: 3px solid #fff;
 }
#schedule_detail td{
width: 240px;
vertical-align: middle;
padding: 24.5px 15px;
height: 185.4px;
overflow-y: auto;
}

#schedule_detail .first_tr{
text-align: center;
font-size: 22px;
font-weight: 700;
line-height: 32px;
}
#schedule_detail .fixed01{
position: sticky;
left: 0;
}
#schedule_detail .second tr:nth-child(1){
position: sticky;
left: 0;
z-index: 1;
}
 #schedule_detail .overflow_x{
width: 100%;
overflow-x: auto;
position: relative;
}
#schedule_detail tr:first-child td:not(:first-child) .cnt_text{
margin: 0 auto 10px;
}
#schedule_detail tr:first-child td:not(:first-child) .cnt_img{
max-width: 138px;
margin: 0 auto 17.4px;
}
#schedule_detail tr:first-child td:not(:first-child) .cnt_img img{
height: 72.61px;
object-fit: contain;
width: 138px;
}
#schedule_detail tr.watch.pc {
display: contents;
}
#schedule_detail tr.watch.sp{
display: none;
}
 #schedule_detail td .btn_type01 {
width: 160px;
padding: 8.5px 0;
background-color: #F0B84F;
margin: 0 auto;
color: #fff;
}
#schedule_detail tr:first-child .fixed01{
background-color: #fff;
}
#schedule_detail tr:nth-child(even) td{
background-color: #FAFAFA;
}
#schedule_detail td{
border-left: 2px solid #fff;
border-right: 2px solid #fff;
}
#schedule_detail .second tr{
display: flex;
flex-direction: column;
}
#schedule_detail .second tbody{
display: flex;
}


#schedule_detail tr.watch td{
vertical-align: middle;
font-size: 26px;
font-weight: 500;
line-height: 44px;
text-align: center;
background-color: #FFF5F6;
}
#schedule_detail tr:nth-child(n+3) td{
padding: 25px 32px;
}
#schedule_detail .btn_type01{
margin-top: 10px;
}
#schedule_detail .btn_type01:hover{
color: #fff;
background-color: #000;
}
#schedule_detail .corp{
margin-bottom: 10px;
}
#schedule_detail .school{
font-size: 14px;
font-weight: 500;
line-height: 26px;
letter-spacing: 0;
margin-bottom: 12px;
}
#schedule_detail .team{
font-size: 12px;
line-height: 17px;
letter-spacing: 0;
margin-bottom: 12px;
display: block;
color: #A2A2A2;
}
#schedule_detail .team_name{
line-height: 28px;
}
#schedule_detail .overflow_x{
margin-bottom: 80px;
}
#schedule_detail .overflow_x table{
table-layout: fixed;
margin: 0 auto;
}
#schedule_detail .btn_type01 {
width: 275px;
padding: 26.5px 0;
background-color: #EBEBEB;
margin: 0 auto;
color: #000000;
font-weight: 500;
}
#schedule_detail .cnt_area02{
margin-bottom: 100px;
}
#schedule_detail .box{
font-size: 14px;
line-height: 26px;
}
 #schedule_detail tr:nth-child(even) td{
border-bottom: 3px solid #fff;
 }
#schedule_detail tr:nth-child(odd) td{
border-bottom: 3px solid #F0F0F0;
}
#schedule_detail tr.first_tr th{

background-color: #fff;
position: sticky;
left: 0;
}
#schedule_detail .team{
margin-bottom: 4px;
font-size: 12px;
color: #A2A2A2;
}
#schedule_detail .school{
margin-bottom: 12px;
}
#schedule_detail tr:nth-child(odd).first_tr th, #schedule_detail tr:nth-child(odd).first_tr td{
border-color: #fff;
}
#schedule_detail tr:nth-child(even) td:last-of-type, #schedule_detail tr:nth-child(even) td:last-of-type, #schedule_detail th::last-of-type{
border-color: transparent;
}
#schedule_detail tr:nth-child(odd).first_tr td:nth-child(even){
background-color: #FAFAFA;
}
#schedule_detail tr:nth-child(odd) td:last-child{
border-bottom: none;
}
#schedule_detail .scrollbar {
width: 100%;
overflow-x: scroll;
overflow-y: hidden;
position: relative;
height: 16px;
}
#schedule_detail .scrollbar .inner {
height: 8px;
position: relative;
}
#schedule_detail .overflow_x{
position: relative;
}
#schedule_detail .third tr:first-child .fixed01 {
background-color: #E70012;
}
#schedule_detail .third tr.watch.pc {
display: table;
width: 100%;
}

.ps--active-x > .ps__rail-x, .ps .ps__rail-x:hover{
background-color: #eee;
border-radius: 8px;
opacity: 1;
height: 8px;
z-index: 1;
}
.ps__thumb-x, .ps__rail-x:hover > .ps__thumb-x, .ps__rail-x.ps--clicking .ps__thumb-x{
background-color: #aaa;
border-radius: 6px;
height: 6px;
z-index: 1;
}
.ps__rail-x{
display: block;
opacity: 1;
z-index: 1;
}
/*----------
04-01.division_detail
----------*/
.division_detail{
background-color: #FAFAFA;
margin-top: 69px;
}
.division_detail .h1_ptn03_g{
padding: 60px 0;
background-color: #fff;
position: relative;
z-index: 1;

}
.division_detail h1{
max-width: 1080px;
margin: 0 auto 40px;
font-size: 54px;
text-align: center;
font-weight: 700;
line-height: 1.6;
}
.division_detail .h1_ptn03_g .cnt_text{
font-size: 40px;
font-weight: 700;
line-height: 36px;
text-align: center;
margin-bottom: 20px;
line-height: 1.6;
}
.division_detail .h1_ptn03_g p{
line-height: 32px;
text-align: center;
font-weight: 500;
}
.division_detail h2{
margin-bottom: 57px;
text-align: center;
}
.division_detail h2 span{
display: inline-block;
margin-left: 78px;
font-size: 24px;
line-height: 44px;
color: #000000;
}
.division_detail #people::before {
content: "people";
left: 199px;
top: -90px;
line-height: 390px;
}
/* .division_detail #people li{
max-width: 280px;
margin: 0 15px;
} */
.division_detail #people .slick-initialized .slick-slide{
max-width: 280px;
margin: 0 15px;
}
.division_detail #people li img{
border-radius: 50%;
margin-bottom: 20px;
}
.division_detail #people li .cnt_text span{
display: block;
font-weight: 500;
}
.division_detail #people li .cnt_text span:first-child{

margin-bottom: 6px;
}
.division_detail #people li .cnt_text span:last-child{
font-size: 18px;
}
.division_detail #people li .cnt_text{
text-align: center;
}
.division_detail .bg_en .contents_in {
position: relative;
z-index: 1;
max-width: 1280px;
width: 100%;
}
.division_detail #pankuzu_area{
z-index: 1;
position: relative;
}
.division_detail #people{
margin-bottom: 120px;
padding-top: 191.2px;
line-height: 1.8;
}
.division_detail #people p{
line-height: 32px;
width: calc(100% - 20px - 20px);
margin: 0 auto 80px;
max-width: 1080px;
}
.division_detail #people .flex_box{
justify-content: center;
margin-top: 72px;
}
.division_detail #people .flex_box a{
width: 300px;
text-align: center;
color: #fff;
padding: 23px 0 27px;
display: block;
font-size: 22px;
line-height: 32px;
font-weight: 700;
}
.division_detail #people .flex_box .btn01 a{
width: auto;
}
.division_detail #people .flex_box .btn:first-child{
margin-right: 24px;
}
.division_detail #people .flex_box .btn:first-child a{
background-color: #97A4F5;
}
.division_detail #people .flex_box .btn:last-child a{
background-color: #88C4EB;
}
.division_detail #people .flex_box .btn01 a{
padding-left: 10px;
padding-right: 10px;
}
.division_detail #people .flex_box .btn01{
margin-right: 0;
}
.division_detail #people .flex_box .btn a:hover{
color: #fff;
background-color: #000;
}
.division_detail #mission::before {
content: "mission";
left: 20px;
top: 0;
line-height: 486px;
}
.division_detail #mission{
padding: 321px 0 62px;
}
.division_detail #mission .contents_in{
max-width: 1080px;
width: 89.33%;
}
.division_detail #mission .logo{
max-width: 240px;
margin: 0 auto;
}
.division_detail #mission .cnt_box{
max-width: 520px;
width: 48.14%;
background-color: #fff;
padding: 0 20px 59px;
margin-bottom: 52px;
}
.division_detail .jp_name{
display: block;
font-weight: 500;
line-height: 28px;
margin-bottom: 32px;
text-align: center;
}
.division_detail #mission .cnt_text span{
font-size: 23px;
line-height: 28px;
font-weight: 700;
display: block;
margin-bottom: 12px;
text-align: center;
}
.division_detail #mission .cnt_text.pb67{
padding-bottom: 67px;
}
.division_detail #mission .cnt_text{
padding-bottom: 28px;
margin-bottom: 28px;
border-bottom: 1px solid #C1C1C1;
}
.division_detail #mission ul{
font-size: 18px;
font-weight: 700;
line-height: 28px;
margin-bottom: 20px;
}
.division_detail #mission ul li::before{
content: "";
display: inline-block;
width: 10px;
height: 10px;
border-radius: 50%;
background-color: #C1C1C1;
margin-right: 8px;
}
.division_detail #mission .name_g{
color: #6E6E6E;
font-weight: 500;
margin-bottom: 20px;
}
.division_detail #mission .navi{
display: block;
font-size: 14px;
line-height: 24px;
}
.division_detail #mission .position{
display: inline-block;
font-size: 14px;
line-height: 24px;
}
.division_detail #mission p{
line-height: 28px;
}
.division_detail #mission .flex_box{
flex-wrap: wrap;
justify-content: space-between;
}

.division_detail #review::before {
content: "review";
left: -64px;
top: 0;
}
.division_detail #review{
padding: 226px 0 120px;
}
.division_detail #review .contents_in{
max-width: 1080px;width: 89.33%;
}
.division_detail #review .bg_w{
background-color: #fff;
padding: 40px 60px;

margin: 0 auto;
}
.division_detail #review dt{
font-size: 32px;
font-weight: 700;
line-height: 44px;
padding-bottom: 26px;
border-bottom: 1px solid #C1C1C1;
margin-bottom: 26px;
}
.division_detail #review dt span{
display: inline-block;
font-size: 20px;
}
.division_detail ul .mega::before{
content: "";
display: inline-block;
width: 10px;
height: 10px;
border-radius: 50%;
background-color: #C1C1C1;
margin-right: 8px;
position: absolute;
top: 9px;
left: 0;
}
.division_detail ul .mega{
display: flex;
position: relative;
padding-left: 16px;
}
.division_detail #review dd{
line-height: 34px;
}
.division_detail #review dd .fwb{
font-weight: 500;
}
.division_detail #review .cnt_text{
margin-bottom: 34px;
}
.division_detail #review dl:not(:last-child){
padding-bottom: 40px;
margin-bottom: 40px;
}
.division_detail ul:first-child{
margin-right: 116px;
}
.division_detail ul .mega ul{
margin-left: 8px;
}

.division_detail #review dd.flex_box{
flex-wrap: wrap;
}
.division_detail #review ul span{
font-weight: 700;
display: block;
margin-right: 18px;
}
.division_detail .perspective li{
display: flex;
}
.division_detail .perspective_engine{
    display: flex;
    flex-wrap: wrap;
}
.division_detail .perspective_engine li{
    font-weight: 700;
    width: 168px;
}
.division_detail .perspective_engine li:nth-child(2n){
    font-weight: normal;
    width: calc(100% - 168px);
}

.division_detail div.engine-sponcer{
    margin-top: 24px;
}

.division_detail div.engine-sponcer ol li p{
    font-size: 120%;
    font-weight: 500;
    color:#ac0f1e;
    margin-top: 40px;
}



/*----------
04-01-01.small_start
----------*/
#small_start.division_detail #people .flex_box{
max-width: 526px;
margin: 72px auto 0;
}
#small_start.division_detail #people .flex_box .btn:first-child {
margin-right: 0;
}
#small_start.division_detail #people .flex_box a {
width: 100%;
padding: 25px 25px;
}
#small_start #review .flex_box {
flex-wrap: wrap;
margin-top: 26px;
}
#small_start #review .flex_box .cnt_img{
margin-right: 50px;
}
#small_start #review .flex_box .cnt_img:first-child{
max-width: 98px;
}
#small_start #review .flex_box .cnt_img:nth-child(2){
max-width: 244.8px;
}
#small_start #review .flex_box .cnt_img:nth-child(3){
max-width: 216.8px;
}

#small_start ul.cop-logo{
    display: flex;
    flex-direction: row;
    padding: 24px 0 0 16px;
    
}
#small_start ul.cop-logo li{
    margin-right: 32px;
}
#small_start ul.cop-logo li img{
    height: 80px;
}

#small_start ul.cop-logo li:nth-child(1) img{width: 195px;}
#small_start ul.cop-logo li:nth-child(2) img{width: 68px;}
#small_start ul.cop-logo li:nth-child(3) img{width: 242px;}

/*----------
03.outline
----------*/

#outline .h1_ptn01_g::before{
content: "outline";
}

#outline #cnt_area01{
padding: 27px 0 0;
text-align: center;
position: relative;
z-index: 1;
}

#outline #cnt_area01 .logo{
max-width: 543px;
width: 100%;
margin: 0 auto 29px;
}

#outline #cnt_area01 .cup_name{
font-weight: 700;
font-size: 32px;
letter-spacing: 0.03em;
line-height: 1;
}

#outline .cnt_area {
padding-bottom: 120px;
}

#outline .cnt_area .sub_ttl{
font-weight: 700;
font-size: 32px;
letter-spacing: 0.03em;
color: #000;
line-height: 1;
}

#outline #event_outline{
padding-bottom: 128px;
margin-top: -53px;
}

#outline #event_outline::before{
content: "event";
}

#outline #event_outline .h2_ptn01{
margin-bottom: 100px;
}

#outline #event_outline .btn_type01.sp{
display: none;
}

#outline #event_outline .btn_type01{
background: #F79096;
color: #fff;
}
#outline #event_outline .btn_type01:hover{
color: #fff;
background: #000;
}
#outline #event_outline .cnt_box{
align-items: start;
justify-content: space-between;
}

#outline #event_outline .cnt_left{
max-width: 300px;
width: 31.25%;
}

#outline #event_outline .cnt_right{
max-width: 500px;
width: 52.09%;
padding-top: 28px;
}

#outline #event_outline .cnt_right .sub_ttl{
margin-bottom: 45px;
}

#outline #event_outline .cnt_right p{
font-size: 16px;
line-height: 32px;
letter-spacing: 0.03em;
}

#outline #division_outline::before{
content: "division";
}

#outline #division_outline .title_area{
align-items: flex-end;
margin-bottom: 72px;
}

#outline #division_outline .title_area .sub_ttl{
margin: 0 0 18px 114px;
}

#outline #division_outline table{
width: 100%;
}

#outline #division_outline th{
background: #F0F0F0;
text-align: center;
padding: 14px 0 13px;
font-weight: 500;
font-size: 20px;
letter-spacing: 0.03em;
line-height: 29px;
}

#outline #division_outline .th01{
width: 226px;
border-right: 2px solid #fff;
}

#outline #division_outline td{
vertical-align: middle;
font-weight: 500;
font-size: 20px;
letter-spacing: 0.03em;
line-height: 29px;
padding: 50px 0;
}

#outline #division_outline .td01{
vertical-align: top;
padding: 56px 16px;
}

#outline #division_outline .td02{
width: calc(100% - 315px - 226px);
padding-left: 20px;
}

#outline #division_outline .td03{
width: 315px;
font-size: 18px;
line-height: 27px;
}
#outline #division_outline td img{
max-width: 268px;
}

#outline #division_outline td .logo01_division{
max-width: 250px;
}

#outline #division_outline td .logo07_division{
max-width: 162px;
}

#outline #division_outline .border{
border-bottom: 1px solid #C1C1C1;
}

#outline #division_outline .tr04 td,#outline #division_outline .tr07 td{
padding-top: 48px;
padding-bottom: 16px;
}

#outline #division_outline .tr04 .td01,#outline #division_outline .tr07 .td01{
padding-top: 55px;
}

/* #outline #division_outline .tr05 td{
padding-top: 16px;
padding-bottom: 16px;
} */

#outline #division_outline .tr06 td,#outline #division_outline .tr08 td, #outline #division_outline .tr05 td{
padding-top: 16px;
padding-bottom: 48px;
}

#outline #division_outline .btn_type01{
background: #64BCA2;
margin: 48px auto 0;
}
#outline #division_outline .btn_type01:hover{
color: #fff;
background-color: #000;
}
#outline #program_outline{
padding-top: 167px;
}

#outline #program_outline .contents_in{
max-width: 1280px;
width: 100%;
}

#outline #program_outline::before{
content: "program";
margin-left: 452px;
}

#outline #program_outline .sub_ttl{
margin: 80px 0 45px;
}

#outline #program_outline .cnt_box{
max-width: 1120px;
width: 94.66%;
margin: 0 0 0 auto;
align-items: start;
justify-content: space-between;
flex-wrap: wrap;
}

#outline #program_outline .cnt_text{
max-width: 580px;
width: 51.79%;
margin-top: 85px;
}

#outline #program_outline .cnt_text p{
font-weight: 500;
font-size: 16px;
letter-spacing: 0.03em;
line-height: 32px;
margin-bottom: 40px;
}

#outline #program_outline .cnt_text .btn_type01{
background: #F0B84F;
}
#outline #program_outline .cnt_text .btn_type01:hover{
color: #fff;
background-color: #000;
}
#outline #program_outline .cnt_img{
max-width: 519px;
width: 46.34%;
}

#outline #roadmap_outline::before{
content: "roadmap";
top: -13px;
left: 49px;
}

#outline #roadmap_outline .sub_ttl{
margin: 80px 0 53px;
}

#outline #roadmap_outline p{
font-weight: 500;
font-size: 16px;
line-height: 32px;
margin-bottom: 48px;
}

#outline #roadmap_outline .btn_type01{
background: #97A4F5;
}
#outline #roadmap_outline .btn_type01:hover{
color: #fff;
background-color: #000;
}
#outline #roadmap_outline .roadmap_list{
margin: 72px 0 0;
}


#outline #roadmap_outline .roadmap_list li{
max-width: 280px;
width: 100%;
margin: 0 15px;
}

#outline #roadmap_outline .roadmap_list li img{
margin-bottom: 16px;
}

#outline #roadmap_outline .roadmap_list li span{
display: block;
font-weight: 500;
font-size: 16px;
line-height: 28px;
letter-spacing: 0.03em;
text-align: center;
}

#outline #schedule_outline{
padding-top: 275px;
}

#outline #schedule_outline .contents_in p{
font-size: 14px; line-height: 24px; text-align: right;
}

#outline #schedule_outline::before{
content: "schedule";
}

#outline #schedule_outline .title_area{
align-items: flex-end;
margin-bottom: 120px;
}

#outline #schedule_outline .title_area .sub_ttl{
margin: 0 0 12px 73px;
}

#outline #schedule_outline dl .flex_box{
margin-bottom: 40px;
}

#outline #schedule_outline dt{
max-width: 211px;
width: 100%;
border-right: 1px solid #C1C1C1;
text-align: right;
font-weight: 900;
color: #E70012;
font-size: 20px;
letter-spacing: 0.03em;
padding-right: 24px;
}

#outline #schedule_outline dt span{
font-weight: 500;
display: inline-block;
margin: 0 0 -16px 12px;
font-size: 52px;
vertical-align: bottom;
}

#outline #schedule_outline dd{
padding-left: 32px;
}

#outline #schedule_outline dd .schedule_text{
font-weight: 700;
font-size: 24px;
line-height: 36px;
letter-spacing: 0.03em;
margin-top: -6px;
margin-bottom: 13px;
}

#outline #schedule_outline dd .schedule_text span{
font-size: 16px;
}

#outline #schedule_outline dd li{
font-weight: 500;
font-size: 16px;
line-height: 32px;
padding: 0 0 0 16px;
position: relative;
}

#outline #schedule_outline dd li::before{
content: "";
display: block;
width: 8px;
height: 8px;
border-radius: 50%;
background: #C1C1C1;
position: absolute;
top: 12px;
left: 0;
}

#outline #organizers_outline{
padding-top: 274px;
}

#outline #organizers_outline::before{
content: "Organizers";
}

#outline #organizers_outline .h2_ptn01{
font-size: 72px;
line-height: 82px;
margin-bottom: 81px;
}

#outline #organizers_outline .sub_ttl{
margin-bottom: 77px;
}

#outline #organizers_outline dl{
margin-bottom: 49px;
}

#outline #organizers_outline dt{
font-weight: 700;
line-height: 1;
letter-spacing: 0.03em;
padding-left: 16px;
position: relative;
margin-bottom: 15px;
}

#outline #organizers_outline dt::before{
content: "";
width: 8px;
height: 8px;
border-radius: 50%;
background: #C1C1C1;
position: absolute;
top: 4px;
left: 0;
}

#outline #organizers_outline dd{
padding: 0 0 37px 16px;
font-weight: 500;
line-height: 32px;
}


#outline #organizers_outline dd .company{
border-bottom: 1px solid #C1C1C1;
padding-bottom: 20px;
}

#outline #organizers_outline dd .company02{
    border-bottom: 1px solid #C1C1C1;
    padding-bottom: 20px;
    }


#outline #organizers_outline dd .college{
padding-top: 20px;
}

#outline #organizers_outline .cnt_box01{
text-align: center;
letter-spacing: 0.02em;
}

#outline #organizers_outline .cnt_box01 h3{
font-weight: 700;
font-size: 18px;
line-height: 1;
margin-bottom: 33px;
}

#outline #organizers_outline .cnt_box01 h3 span{
font-weight: 400;
}

#outline #organizers_outline .cnt_box01 p{
font-weight: 500;
line-height: 24px;
margin-bottom: 65px;
}

#outline #organizers_outline .cnt_box01 h4{
font-weight: 700;
font-size: 18px;
line-height: 1;
margin-bottom: 33px;
}

#outline #organizers_outline .cnt_box01 .logo_img{
max-width: 960px;
margin: 0 auto;
display: flex;
flex-wrap: wrap;
justify-content: center;
align-items: center;
}
#outline #organizers_outline .cnt_box01 .logo_img .cnt_img{
width: 15.79%;
}
#outline #organizers_outline .cnt_box01 .logo_img .cnt_img:not(:first-child){
margin-left: 5px;
}



#outline #organizers_outline ul.cop-logo{
    display: flex;
    flex-direction: row;
    padding: 24px 0 40px 0;
}
#outline #organizers_outline ul.cop-logo li{
    margin-right: 24px;
}
#outline #organizers_outline ul.cop-logo li img{
    height: 46px;
}

/*-------------------
10.nominations_list
-------------------*/
#nominations_list .h1_ptn01_g::before {
content: "Nominations list";
white-space: nowrap;
width: 200%;
left: 50%;
right: auto;
margin-left: 25px;
transform: translateX(-50%);
}

#nominations_list #pankuzu_area {
background: #F0F0F0;
}

#nominations_list #pankuzu_area .contents_in{
max-width: 1080px;
}

#nominations_list #link_area {
background: #F0F0F0;
padding: 18px 0 41.2px;
width: 100%;
transition: .3s;
}

#nominations_list #link_area.sticky {
position: fixed;
top: 69px;
left: 0;
z-index: 20;
transition: .4s;
}

#nominations_list #link_area.sticky.hide,
#nominations_list #link_area.sticky.hide *{
height: 0;
padding: 0;
margin: 0;
font-size:0;
}

#nominations_list #link_area .contents_in{
max-width: 960px;
}

#nominations_list #link_area .link_list{
display: flex;
align-items: center;
justify-content: space-between;
flex-wrap: wrap;
}

#nominations_list #link_area .link_list li{
width: 31.93%;
max-width: 306.45px;
height: 59.92px;
}


/*
#nominations_list #link_area .link_list li:nth-child(-n + 3){
*/
#nominations_list #link_area .link_list li{
    margin-bottom: 20.8px;
}

#nominations_list #link_area .link_list li a{
display: flex;
align-items: center;
justify-content: center;
width: 100%;
height: 100%;
}

#nominations_list #link_area .link_list li a img{
width: 90%;
}

#nominations_list #link_area .link_list li:nth-child(1) a{
background: #E00724;
}

#nominations_list #link_area .link_list li:nth-child(1) a img{
max-width: 218.22px;
}

#nominations_list #link_area .link_list li:nth-child(2) a{
background: #E75296;
}

#nominations_list #link_area .link_list li:nth-child(2) a img{
max-width: 143.15px;
}

#nominations_list #link_area .link_list li:nth-child(3) a{
background: #155EAB;
}

#nominations_list #link_area .link_list li:nth-child(3) a img{
max-width: 131.07px;
}

#nominations_list #link_area .link_list li:nth-child(4) a{
background: -moz-linear-gradient(left, #008D43 50%, #FABE00 50%,#FABE00 100%); 
background: -webkit-linear-gradient(left,#008D43 50%, #FABE00 50%,#FABE00 100%); 
background: linear-gradient(to right,#008D43 50%, #FABE00 50%,#FABE00 100%);
position: relative;
}

#nominations_list #link_area .link_list li:nth-child(4) a::before {
content: "";
position: absolute;
display: block;
width: 30px;
height: 100.5%;
background: url(../img/nominations_list/parts.png) no-repeat center/100% 100%;
left: 50%;
top: -0.5%;
transform: translateX(-50%);
}

#nominations_list #link_area .link_list li:nth-child(4) a img{
max-width: 262.91px;
}

#nominations_list #link_area .link_list li:nth-child(5) a{
background: #1F9DDA;
}

#nominations_list #link_area .link_list li:nth-child(5) a img{
max-width: 169.22px;
}

#nominations_list #link_area .link_list li:nth-child(6) a{
background: #904796;
}

#nominations_list #link_area .link_list li:nth-child(6) a img{
max-width: 153.07px;
}

#nominations_list #link_area .link_list li:nth-child(7) a{
    background: #ac0f1e;
}
    #nominations_list #link_area .link_list li:nth-child(7) a img{
    max-width: 88px;
}
    

#nominations_list #cnt_area02{
background: #FAFAFA;
padding: 98.6px 0 120px;
}

#nominations_list #cnt_area02 > .contents_in{
max-width: 1080px;
}

#nominations_list #cnt_area02 .cnt_box{
background: #fff;
margin-bottom: 80px;
padding: 40px 0 15px;
}

#nominations_list #cnt_area02 .cnt_box .ttl_area{
margin-bottom: 60px;
}

#nominations_list #cnt_area02 .cnt_box .ttl_area .h2_img{
margin-bottom: 8px;
height: 60px;
}

#nominations_list #cnt_area02 .cnt_box .ttl_area .h2_img img{
width: auto;
height: 100%;
}

#nominations_list #cnt_area02 .cnt_box .ttl_area h2{
font-size: 32px;
font-weight: 700;
line-height: 46px;
letter-spacing: .03em;
}

#nominations_list #cnt_area02 .cnt_box .ttl{
font-size: 24px;
font-weight: 700;
line-height: 35px;
letter-spacing: .03em;
background: #FFE2E4;
padding: 11px 20px;
margin-bottom: 60px;
margin-top: 55px;
}

#nominations_list #cnt_area02 .cnt_box .cnt_company{
font-size: 24px;
font-weight: 500;
line-height: 35px;
letter-spacing: .03em;
padding: 0 20px 27px;
margin-bottom: 40px;
border-bottom: 1px solid #C1C1C1;
display: flex;
align-items: center;
}
#nominations_list #cnt_area02 .cnt_box .cnt_company{
margin-top: 55px;
}

#nominations_list #cnt_area02 .cnt_box .cnt_company.aeon img{
max-width: 120.97px;
margin-right: 32px;
}

#nominations_list #cnt_area02 .cnt_box .cnt_company.okamura img{
max-width: 156.45px;
margin-right: 30px;
}

#nominations_list #cnt_area02 .cnt_box .cnt_company.calbee img{
max-width: 121.81px;
margin-right: 30px;
}

#nominations_list #cnt_area02 .cnt_box .award_ttl{
position: relative;
padding-left: 24px;
font-size: 18px;
font-weight: 700;
line-height: 26px;
letter-spacing: .03em;
margin-bottom: 20px;
}

#nominations_list #cnt_area02 .cnt_box .award_ttl::before{
content: "";
position: absolute;
display: block;
width: 8px;
height: 8px;
border-radius: 50%;
background: #C1C1C1;
left: 0;
top: 11px;
}

#nominations_list #cnt_area02 .cnt_box .school_list{
display: flex;
align-items: flex-start;
justify-content: flex-start;
flex-wrap: wrap;
}

#nominations_list #cnt_area02 #small_start .open_contents:not(:last-child),
#nominations_list #cnt_area02 #role_model .open_contents:not(:last-child),
#nominations_list #cnt_area02 #mystory_thevision .open_contents:not(:last-child),
#nominations_list #cnt_area02 .cnt_box .school_list:not(:last-child){
margin-bottom: 15px;
}

#nominations_list #cnt_area02 .cnt_box .school_box{
width: 31.88%;
background: #FAFAFA;
margin: 0 2.18% 25px 0;
padding: 20px;
}

#nominations_list #cnt_area02 .cnt_box .school_box:nth-child(3n){
margin-right: 0;
}

#nominations_list #cnt_area02 .cnt_box .school_box .school_name{
/*font-size: 14px;*/
font-size: 17px;
font-weight: 500;
line-height: 24px;
letter-spacing: .03em;
padding-bottom: 14px;
margin-bottom: 15px;
color: #000;
border-bottom: 1px solid #D0D0D0;
}

#nominations_list #cnt_area02 .cnt_box .school_box dl{
/*font-size: 14px;*/
font-size: 15px;
font-weight: 400;
line-height: 28px;
letter-spacing: .03em;
/*color: #6E6E6E;*/
color: #191919;
display: flex;
flex-wrap: wrap;
}

#nominations_list #cnt_area02 .cnt_box .school_box dt{
width: calc(4em + 14px);
font-weight: 500;
}

#nominations_list #cnt_area02 .cnt_box .school_box dd{
width: calc(100% - 4em - 14px);
}

#nominations_list #cnt_area02 .cnt_box .cnt_wrap:not(:last-child){
margin-bottom: 65px;
}
/*-------------------
11.awards
-------------------*/
#awards .h1_ptn01_g::before {
content: "Awards";
}

#awards .digest-mov{
    background-color: #f0f0f0;
    padding: 40px 24px; 
    width: 100%;
}

#awards .digest-mov p{
    text-align: center; margin-bottom: 16px;
}
#awards .digest-mov p.title{
    font-size: 18px; font-weight: 600; margin-bottom: 12px;
}

#awards iframe.youtube-16-9 {
    width: 100%;
    height: auto;
    aspect-ratio: 16 / 9;
    max-width: 1024px;
    display: block;
    margin: auto;
}

#awards #pankuzu_area {
background: #F0F0F0;
}

#awards #pankuzu_area .contents_in{
max-width: 1080px;
}

#awards #link_area {
background: #F0F0F0;
padding: 18px 0 41.2px;
width: 100%;
}

#awards #link_area.sticky {
position: fixed;
top: 69px;
left: 0;
z-index: 20;
transition: .4s;
}

#awards #link_area.sticky.hide,
#awards #link_area.sticky.hide *{
height: 0;
margin: 0;
padding: 0;
font-size:0;
}

#awards #link_area .contents_in{
max-width: 960px;
}

#awards #link_area .link_list{
display: flex;
align-items: center;
justify-content: space-between;
flex-wrap: wrap;
}

#awards #link_area .link_list::after{
content: "";
display: block;
width: 31.93%;
}

#awards #link_area .link_list li{
width: 31.93%;
max-width: 306.45px;
height: 59.92px;
}

#awards #link_area .link_list li:nth-child(-n + 3){
margin-bottom: 20.8px;
}

#awards #link_area .link_list li a{
display: flex;
align-items: center;
justify-content: center;
width: 100%;
height: 100%;
}

#awards #link_area .link_list li a img{
width: 90%;
}

#awards #link_area .link_list li:nth-child(1) a{
    background:#E00724;;
    /*background:  #1F9DDA;*/
}

#awards #link_area .link_list li:nth-child(1) a img{
    max-width: 218.22px;   
    /*max-width: 169.22px;*/
}

#awards #link_area .link_list li:nth-child(2) a{
    background: #E75296;
    /*background: #904796E75296;*/
}

#awards #link_area .link_list li:nth-child(2) a img{
    max-width: 143.15px;
    /*max-width: 153.07px;*/
}

#awards #link_area .link_list li:nth-child(3) a{
background: #155EAB;
}

#awards #link_area .link_list li:nth-child(3) a img{
max-width: 131.07px;
}

#awards #link_area .link_list li:nth-child(4) a{
background: #1F9DDA;
}

#awards #link_area .link_list li:nth-child(4) a img{
max-width: 169.22px;
}

#awards #link_area .link_list li:nth-child(5) a{
background: #904796;
}

#awards #link_area .link_list li:nth-child(5) a img{
max-width: 153.07px;
}

#awards #link_area .link_list li:nth-child(6) a{
    background: #ac0f1e;
}
#awards #link_area .link_list li:nth-child(6) a img{
    max-width: 88px;
}
    

#awards #cnt_area02{
background: #FAFAFA;
padding: 98.6px 0 120px;
}

#awards #cnt_area02 > .contents_in{
max-width: 1080px;
}

#awards #cnt_area02 .cnt_box{
background: #fff;
margin-bottom: 80px;
padding: 40px 0 40px 0;
}

#awards #cnt_area02 .cnt_box .ttl_area{
margin-bottom: 60px;
}

#awards #cnt_area02 .cnt_box .ttl_area .h2_img{
margin-bottom: 8px;
height: 48px;
}

#awards #cnt_area02 .cnt_box .ttl_area .h2_img img{
width: auto;
height: 100%;
}


/*タイトル*/
#awards #cnt_area02 .cnt_box .ttl_area h2{
font-size: 32px;
font-weight: 700;
line-height: 46px;
letter-spacing: .03em;
/*padding-top: 40px;*/
}

#awards #cnt_area02 .cnt_box .awards_list li{
display: flex;
align-items: flex-start;
justify-content: space-between;
padding: 0 22px 60px;
margin-bottom: 60px;
border-bottom: 1px solid #D0D0D0;
}

#awards #cnt_area02 .cnt_box .awards_list li:last-child{
padding-bottom: 0;
margin-bottom: 0;
border-bottom: none;
}

#awards #cnt_area02 .cnt_box .awards_list .cnt_ttl{
width: 165px;
height: 165px;
display: flex;
align-items: center;
justify-content: center;
}

#awards #cnt_area02 .cnt_box .awards_list .cnt_ttl span{
display: inline-block;
color: #fff;
font-size: 24px;
font-weight: 700;
line-height: 28px;
text-align: center;
}

#awards #cnt_area02 .cnt_box .awards_list .cnt_ttl span::before{
content: "";
display: block;
margin: 0 auto 8.5px;
width: 30.16px;
height: 27.98px;
background: url(../img/awards/crown01.png) no-repeat center/contain;
}

#awards #cnt_area02 .cnt_box .awards_list .yellow .cnt_ttl{
background: #E5BD54;
}

#awards #cnt_area02 .cnt_box .awards_list .brown .cnt_ttl{
background: #A89972;
}

#awards #cnt_area02 .cnt_box .awards_list .gray .cnt_ttl{
background: #AAAAAA;
}

#awards #cnt_area02 .cnt_box .awards_list .awards_wrap{
width: 69.2%;
max-width: 633px;
display: flex;
justify-content: space-between;
flex-wrap: wrap;
}

#awards #cnt_area02 .cnt_box .awards_list .school_box {
width: 48.4%;
max-width: 306px;
background: #F4F4F4;
padding: 30px 20px;
margin-top: 25px;
}

#awards #cnt_area02 .cnt_box .awards_list .school_box:nth-child(-n + 2){
margin-top: 0;
}

#awards #cnt_area02 .cnt_box .awards_list .yellow .school_box{
background: rgba(229,189,84,.15);
}

#awards #cnt_area02 .cnt_box .awards_list .brown .school_box{
background: rgba(168,153,114,.2);
}

#awards #cnt_area02 .cnt_box .awards_list .school_box .school_name {
/*font-size: 16px;*/
font-size: 17px;
font-weight: 500;
line-height: 24px;
letter-spacing: .03em;
padding-bottom: 14px;
margin-bottom: 15px;
color: #000;
border-bottom: 1px solid #D0D0D0;
}

#awards #cnt_area02 .cnt_box .awards_list .school_box dl {
/*font-size: 14px;*/
font-size: 15px;
font-weight: 400;
line-height: 28px;
letter-spacing: .03em;
/*color: #6E6E6E;*/
color: #191919;
display: flex;
flex-wrap: wrap;
}

#awards #cnt_area02 .cnt_box .awards_list .school_box dt {
width: calc(4em + 13px);
font-weight: 500;
}

#awards #cnt_area02 .cnt_box .awards_list .school_box dd {
width: calc(100% - 4em - 13px);
}

#awards #cnt_area02 .cnt_box .stage01{
margin-bottom: 100px;
}

#awards #cnt_area02 .cnt_box .cnt_g:not(:last-child){
margin-bottom: 60px;
}

#awards #cnt_area02 .cnt_box .cnt_g .ttl{
font-size: 24px;
font-weight: 700;
line-height: 35px;
letter-spacing: .03em;
background: #FFE2E4;
padding: 11px 20px;
margin-bottom: 60px;
}

#awards #cnt_area02 .cnt_box .awards_list.corporate .cnt_logo{
max-width: 150px;
}

#awards #cnt_area02 .cnt_box .awards_list.corporate .cnt_logo.aeon{
max-width: 122.66px;
}

#awards #cnt_area02 .cnt_box .awards_list.corporate .cnt_logo.okaura{
max-width: 165px;
}

#awards #cnt_area02 .cnt_box .awards_list.corporate .cnt_logo.calbee{
max-width: 128.84px;
}

#awards #cnt_area02 .cnt_box .awards_list.corporate .awards_wrap{
width: 71.2%;
max-width: 652px;
}

#awards #cnt_area02 .cnt_box .awards_list.corporate .awards_box{
width: 47%;
max-width: 306px;
}

#awards #cnt_area02 .cnt_box .awards_list .awards_box .awards_ttl{
padding-left: 28px;
margin-bottom: 20px;
position: relative;
font-size: 18px;
font-weight: 700;
line-height: 26px;
letter-spacing: .03em;
}

#awards #cnt_area02 .cnt_box .awards_list .awards_box .awards_ttl::before{
content: "";
position: absolute;
display: block;
width: 17.5px;
height: 16px;
background: url(../img/awards/crown02.png) no-repeat center/contain;
left: 0;
top: 5px;
}

#awards #cnt_area02 .cnt_box .awards_list .awards_box.gray .awards_ttl::before{
background: url(../img/awards/crown03.png) no-repeat center/contain;
}

#awards #cnt_area02 .cnt_box .awards_list.corporate .awards_box .school_box{
width: 100%;
}

#awards #cnt_area02 .cnt_box .awards_list.corporate .school_box {
padding: 20px;
}

#awards #cnt_area02 .cnt_box .awards_list.corporate .school_box .school_name {
font-size: 14px;
line-height: 20px;
}

#awards #cnt_area02 .cnt_box .awards_list.corporate .yellow .school_box {
background: #FBF5E5;
}
#awards #cnt_area02 .cnt_box .awards_list .cnt_ttl span.corp{
font-size: 14px;
line-height: 1.6;
}
#awards #cnt_area02 .cnt_box .awards_list .cnt_ttl span.corp::before{
content: none;
}
#awards #cnt_area02 #small_start.cnt_box .awards_list .gray .cnt_ttl{
flex-direction: column;
}
/*----------
12.404ページ
----------*/
#error_404 {
margin-top: 69px;
padding: 80px 0;
}
#error_404 h1{

text-align: center;
font-size: 46px;
margin-bottom: 30px;
font-weight: 700;
}
#error_404 p{
line-height: 1.8;
font-size: 18px;
margin-bottom: 30px;
}
#error_404 .btn_type01 {
background-color: #F79096;
margin: 0 auto;
}
#error_404 .btn_type01:hover{
color: #fff;
background-color: #000;

}



/*----------
13.access
----------*/

#access .h1_ptn01_g::before {
    content: "access";
}
#access .cnt_box{
max-width: 1280px;
width: 100%;
}


#access .cnt_area02{
padding: 80px 0 120px;
}

#access .cnt_box ul{
    display: flex; flex-wrap: wrap;
}

#access .cnt_box ul li{
    width: 160px; margin-bottom: 4px;
}
#access .cnt_box ul li:nth-child(2n){
    width: calc(100% - 160px);
}

#access .cnt_box ul li p{
    font-size: 20px; line-height: 24px; font-weight: 500;
}

#access .cnt_box ul li p span{font-size: 14px;}

#access .cnt_box iframe{
    width: 100%; height: 460px;
    margin-bottom: 24px;
}

#access .cnt_box h2{
font-size: 18px;
margin: 48px 0 16px 0 ;
}
#access .cnt_box p{
font-size: 16px;
line-height: 28px;
}