@charset "UTF-8";
/* CSS Document */
.en{ font-family: 'Segoe UI',"Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", sans-serif;}
.ja{ font-family: Meiryo, メイリオ, "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", sans-serif;}
input[type="submit"],
input[type="button"] {
  border-radius: 0;
  -webkit-box-sizing: content-box;
  -webkit-appearance: button;
  appearance: button;
  border: none;
  box-sizing: border-box;
  cursor: pointer;
  transition: 0.5s ;
}
input[type="submit"]::-webkit-search-decoration,
input[type="button"]::-webkit-search-decoration {
  display: none;
}
input[type="submit"]::focus,
input[type="button"]::focus {
  outline-offset: -2px;
}
a{
    text-decoration: none;
    transition: 0.5s ;
    color: #000000;
}

a img{
  transition: 0.5s ;
}
a:hover img{
    opacity: .8;
}
img.object-fit-img{
    object-fit: cover;
    object-position:center; 
    font-family: 'object-fit: cover; object-position: center;'
}

input::placeholder {
    color: #dddddd;
  }

html{
    font-size: 62.5%;
    height:100%
}
body{
    background-color: #ffffff;
    min-height:100vh;
    font-size:1.6rem;
    color: #333333;
    background-size: cover;
    overflow: hidden;
}
/* support iOS */
html{
  height: -webkit-fill-available;
}
body{
  min-height: 100vh;
  min-height: -webkit-fill-available;
}

/*COMMON*/
div.wrap{ width:95%; margin:0 auto; position: relative; z-index: 2;}
.deco{ max-width:1200px; width:98%; margin:0 auto; left:0; right:0; position: relative;}
.deco .bg-left{ position: absolute; left:1.5rem; z-index: 1; }
.deco .bg-right{ position: absolute; right:1.5rem; z-index: 1; }
.std{ position: relative; z-index: 2; display: flex; justify-content: center; align-items: center;}
.std::before,
.std::after{ content:''; width:100%; height: 1px; background-color: #2e3191; display: block; }
.std i{ display: flex; align-items: center; font-size:4.0rem; font-weight: bold; color: #2e3191; text-align: center; white-space: nowrap;}
.std i::before{ content:''; width:2.5rem; height: 3.5rem; display: block; border:1px solid #2e3191; border-right:none; margin-right:1.5rem}
.std i::after{ content:''; width:2.5rem; height: 3.5rem; display: block; border:1px solid #2e3191; border-left:none; margin-left:1.5rem}

header .bg-left{ width:15.6rem; top:43.0rem}
header .bg-right{ width:25.8rem; top:1.5rem}
.advisor .bg-left{ width:22.5rem; top:13.0rem}
.advisor .bg-right{ width:20.3rem; top:1.0rem}
.network .bg-left{ width:16.9rem; top:32.0rem}
.network .bg-right{ width:14.3rem; top:11.0rem}




/*CONTENT*/
header{ border-top:2.0rem solid #2e3191; background-image: url(images/bg_top.png); background-size: 100% 100%; overflow: hidden;}
header div.wrap{ max-width:756px; padding:7.5rem 0; margin:0 auto}
header h1{ font-size:4.2rem; font-weight: bold; color: #2e3191; padding-bottom:2.5rem; border-bottom:1px solid #2e3191; text-align: center; margin-bottom:5.0rem;}
header .introduction{ width:90%; max-width: 700px; margin:0 auto; font-size: 1.8rem; line-height: 1.8;}
header .introduction .ja{ margin-bottom:5.0rem; }
header .introduction p{ margin-bottom: 2.5rem;}
header .introduction strong{ display: block; font-weight: bold;}
.banner{ background-color:#ffefd6; padding:5.0rem 0; text-align: center;}
.banner figure{ width:80%; max-width: 500px; margin:0 auto;}
.banner figcaption{ font-size:2.4rem; font-weight: bold; font-style: italic; margin-bottom:1.5rem}
.banner img{ width:100%; display: block;}
.network { overflow: hidden;}
.network h2{ padding-top:7.5rem;}
.network .wrap{ max-width:1000px;}
.network ul{ display: flex; flex-wrap: wrap; padding:5.0rem 0 7.5rem 0; justify-content: center;}
.network li{ width:calc(100% / 3 - 24px); border:1px solid #cbcbcb; margin:15px 10px;}
.network li img{ width:100%; display: block;}
.network li a{ display: block;}
.network li a:hover i{ background-color:#4d0ac9; transition: all 0.5s;}
.network li i{ display: flex; background-color: #2e3191; height: 5.2rem; justify-content: center; align-items: center; font-size:1.8rem; font-weight: bold; color: #ffffff; position: relative;}
.network li i:after{ content: ''; width:3.0rem; height:3.0rem; background-image: url(images/icon_outerlink.png); background-size: contain; background-repeat: no-repeat; position: absolute; right:1.5rem; display: block; transition: all 0.2s;}
.advisor{ background-color:#e9eef8; overflow: hidden;}
.advisor h2{ padding-top:7.5rem}
.advisor .wrap{ max-width:980px;; padding-bottom:5.0rem}
.advisor .block{ border-bottom: 1px solid #736357; padding: 7.5rem 0;}
.advisor .block:last-child{ border-bottom:none; }
.advisor .inner{ width:84%; margin:0 auto; display: flex; justify-content: space-between;}
.advisor .inner figure{ width:26.2%; text-align: center;}
.advisor .inner figure img{ width:100%; display: block; margin-bottom:1.5rem; border-radius: 50%;}
.advisor .inner figcaption{ font-size:2.7rem; font-weight: bold; color: #662d90; text-align: center; white-space: nowrap;}
.advisor .inner figcaption i{ display: block; font-weight: bold; font-size:2.4rem}
 .advisor .inner figcaption i.narrow{ letter-spacing: -0.15rem; position: relative; left:-0.5rem}
.advisor .inner dl{ width:66.6%;}
.advisor .inner dt{ font-size:2.1rem; font-weight: bold; margin-bottom:5.0rem;}
.advisor .inner dt i{font-size:2.4rem; font-weight: bold; display: block;}
.advisor .inner dd{ font-size:1.8rem; margin-bottom:2.5rem; line-height: 1.8;}
.advisor .inner dd .en{ display: block; margin-bottom:2.5rem}
.advisor .inner dd .ja{ display: block; }


.advisor .block:last-child .inner figcaption{ font-size:2.5rem; letter-spacing: -0.05rem;}
.supportdesk{ padding:7.5rem 0}
.supportdesk div.wrap{ padding-top:5.0rem}
.supportdesk .box{ width:100%; max-width:980px; margin:0 auto; background-color:#ffefd6; padding:5.0rem 0 0 0; display: flex; justify-content: center; align-items: center; flex-direction: column;}
.supportdesk h3{ font-weight: bold; font-size:3.0rem; text-align: center; line-height: 1.2; margin-bottom: 2.5rem;}
.supportdesk h3 small{ font-weight: normal; font-size:2.2rem; text-align: center; display: block;}
.supportdesk dt{ font-weight: bold; font-size: 2.7rem; text-align: center; margin-bottom:2.5rem}
.supportdesk dd{ display: flex; font-size:2.2rem; margin-bottom:2.5rem}
.supportdesk dd i{ width:11.0rem;}
.supportdesk dd .wrap{ width:calc(100% - 11.0rem);}
.supportdesk dd.sns{ justify-content: center; padding:5.0rem 0 0 0}
.supportdesk dd.sns .logo{ width:8.3rem;}
.supportdesk dd.sns .logo img{ width:100%;}
.supportdesk dd.sns .icon{ width:24.4rem;}
.supportdesk dd.sns .icon strong{ font-weight: bold; font-size:2.0rem; display: block; text-align: center;}
.supportdesk dd.sns .icon .link{ display: flex; justify-content: center;}
.supportdesk dd.sns .icon .link a{ display: block;  width:6.0rem; margin:1.5rem}
.supportdesk dd.sns .icon .link a img{ width:100%;}
.organizers{ padding:5.0rem 0 7.5rem 0}
.organizers .wrap{ max-width:1000px;}
.organizers ul{ display: flex; flex-wrap: wrap; padding:5.0rem 0 0 0; justify-content: center;}
.organizers li{ width:calc(100% / 3 - 24px); border:1px solid #cbcbcb; margin:15px 10px;}
.organizers li img{ width:100%; display: block;}
.organizers li figcaption{ font-size:2.2rem; font-weight: bold; text-align: center; height:6.4rem; display: flex; justify-content: center; align-items: center; line-height: 1.2; margin-bottom:2.5rem}
.organizers li a{ display: block;}
.organizers li a:hover i{ background-color:#4d0ac9; transition: all 0.5s;}
.organizers li i{ display: flex; background-color: #2e3191; height: 5.2rem; justify-content: center; align-items: center; font-size:1.8rem; font-weight: bold; color: #ffffff; position: relative;}
.organizers li i:after{ content: ''; width:3.0rem; height:3.0rem; background-image: url(images/icon_outerlink.png); background-size: contain; background-repeat: no-repeat; position: absolute; right:1.5rem; display: block; transition: all 0.2s;}
footer{ background-color:#333333; text-align: center; color: #ffffff; font-size:1.4rem; padding:1.5rem 0}
.fix-bottom{ position: fixed; bottom:5.0rem; right:0; width:7.0rem; height:7.0rem; z-index: 900;}
.fix-bottom a{ display: block;}
.fix-bottom img{ display: block; width:100%}
.hamburger{ width:100%; max-width:980px; margin:0 auto; position: fixed; top:0; left:0; right:0; display: flex; justify-content: flex-end; z-index: 999;}
.hamburgerbutton{ width:8.5rem; height:8.5rem; display: block; background-image:url(images/bg_menu_open.png); background-size: contain; background-repeat: no-repeat; background-position: center; background-color: #2e3191; cursor: pointer; transition: all 0.2s;}
.hamburgerbutton.active{ background-image:url(images/bg_menu_close.png); position: relative; z-index: 1000;}
.hamburger .inner{ background-color: #ffffff;}
.hamburger .globalMenuSp{ display: none;}
.hamburger .globalMenuSp.active{ display: block;}
.hamburger li{ font-size:2.4rem; padding:1.5rem; border-bottom:1px dotted #333333}
.hamburger li a{ display: flex; align-items: center;}
.hamburger li a::before{ content: ''; width:1.9rem; height:2.2rem; display: block; clip-path:polygon(0 0,100% 50%,0 100%); background-color: #333333; margin-right:0.5rem}
.hamburger li a img{ display: block; width:2.2rem; margin-left:0.5rem}
.hamburger li a:hover{ color: #662d90;}
.hamburger li a:hover::before{ background-color: #662d90;}


/*responsive*/
.sp{ display: none}
.tb{ display: none}
.pc{ display: block}
@media screen and (max-width:1000px){
  html{ font-size:1vw}
}
@media screen and (max-width:760px){
  .pc{ display: none!important;}
  .sp{ display: block!important;}
}
@media screen and (max-width:599px){
  html{ font-size:2vw}
  .pc{ display: none!important;}
  .sp{ display: block!important;}
  header .bg-left{ top:80vh}
  .network li{ width: calc(100% / 2 - 22px);}
  .network li img{ margin:1.5rem 0}
  .network li:nth-child(3) img,
  .network li:nth-child(4) img,
  .network li:nth-child(6) img,
  .network li:nth-child(11) img,
  .network li:nth-child(12) img{transform: scale(1.5);}
  .advisor .bg-left{ top:200vh}
  .advisor .inner{ flex-direction: column; align-items: center;}
  .advisor .inner figure{ width:80%; margin-bottom:2.5rem}
  .advisor .inner figure img{ width:80%; margin:0 auto 1.5rem auto}
  .advisor .inner dl{ width:100%}
  .supportdesk dd{ flex-direction: column;}
  .supportdesk dd .wrap{ width:100%}
  .supportdesk .box{ width:90%}
  .supportdesk .box dl{ width:85%; margin:0 auto}
  .supportdesk dd.sns{ flex-direction: row;}
  .organizers li{ width:60%; margin:0 auto 2.5rem auto}
}
@media screen and (max-width:340px){




}



