@charset "UTF-8";
/*@import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;600&display=swap');*/
:root {--pcMaxW:94rem; --pcMinW:980px; --pcCntMinW:930px; --spPI:clamp(20px, 10px + 3.125vw, 25px); 
  --initFonts:"游ゴシック Medium","Yu Gothic Medium","Yu Gothic","Hiragino Kaku Gothic ProN","Hiragino Sans","BIZ UDPGothic",Meiryo,sans-serif; 
  --initFontsB:"Yu Gothic","Hiragino Kaku Gothic ProN","Hiragino Sans","BIZ UDPGothic",Meiryo,sans-serif; --boldFonts:"Inter",var(--initFontsB);}
b,strong,.bold {font-family:var(--boldFonts);}
.container {display:flow-root; position:relative; margin-inline:auto; container-type:inline-size;} .navBackdrop {display:none;}
@media (min-width:600px){:where(body,.pageHeader,.pageTitle,main,.pageFooter) {min-width:var(--pcMinW);} .container {width:clamp(var(--pcCntMinW), 94%, var(--pcMaxW));}}
@media not (min-width:600px){html {font-size:90%;} .pageHeader,main,.pageFooter {min-width:320px;} :where(:not(.pageHeader))>.container {margin-inline:var(--spPI);} body.-navOpen .navBackdrop {width:100%; height:100dvh; position:fixed; top:4rem; left:0; display:block; background:#0007; z-index:500; -webkit-backdrop-filter:blur(2px); backdrop-filter:blur(2px);}}
/* BASE %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% */


/*@media (min-width:1500px){html {font-size:calc(100% + calc((100vw - 1600px) * .006));}}*/
@media (min-width:600px){html {scroll-padding-top:10vh;} body {display:flex; flex-direction:column; background:#f1f5f8;}}
@media not (min-width:600px){html {scroll-padding-top:50px;}}
body {line-height:1.8; font-family:"Inter",var(--initFonts); font-feature-settings:"pkna"; color:#1a1a1a;
  --themeBL1:#a1c3e6; --themeBL2:#115ea3; --themeBL3:#e4ecf5;}
a {text-decoration:underline; text-decoration-skip-ink:none; text-underline-offset:.24em; color:inherit;}

/* =============== ヘッダ */


@media (min-width:600px){
  .pageHeader .container {padding-block:.4rem; text-align:center;}
  .pageHeader h1 img {width:72rem;}
  #spNav {display:none;}
}
@media not (min-width:600px){
  .pageHeader h1 {display:flex; flex-direction:column; justify-content:center; width:calc(100% - 1.5rem - 50px); height:4rem; margin-left:.6rem;}
  /* 開閉ボタン */
  #spNav {width:50px; height:100%; position:absolute; top:0; right:0; border:0; background:transparent; text-align:center; cursor:pointer; --navBtnLineClr:var(--themeBL2);}
  #spNav:after {content:"メニュー"; display:block; text-align:center; line-height:1; font-size:var(--fs10); font-weight:bold; font-family:var(--boldFonts); color:var(--themeBL2); white-space:nowrap;}
  #spNav > div {height:50%;}
  #spNav > div:before, #spNav > div:after {content:""; display:block; position:absolute; top:45%; left:50%; translate:-50% -50%; width:50%; height:2px; background:var(--navBtnLineClr); transition:.15s all;}
  #spNav > div:before {box-shadow:0 -6px 0 var(--navBtnLineClr);} #spNav > div:after {box-shadow:0 6px 0 var(--navBtnLineClr);}
  .-navOpen #spNav > div:before {box-shadow:none; rotate:-45deg;} .-navOpen #spNav > div:after {box-shadow:none; rotate:45deg;}
}

/* =============== フッタ */

.pageFooter {font-size:var(--fs15);}
.pageFooter ._copyright {margin-bottom:0; font-size:var(--fs11); text-align:center;}

@media (min-width:600px){
  .pageFooter {padding-block:2rem 1.2rem;}
}
@media not (min-width:600px){
  .pageFooter {position:sticky; top:100vh; padding-block:1.2rem;}
}

/* =============== メイン */

main {position:relative;}
main ._side {--arwCol:#fff; --arwOp:1; position:relative; padding-block:.2rem; background:var(--themeBL1);}
main ._side nav li {position:relative;}
main ._side nav li:after {content:""; display:block; position:absolute; left:.6rem; bottom:0; width:calc(100% - 1.2rem); border-top:1px #fff5 solid;}
main ._side nav:last-child > ul:last-child > li:last-of-type:after {display:none;}
main ._side nav a {position:relative; display:block; padding:.8rem 2.2em .8rem var(--spPI); text-decoration:none; font-weight:bold; font-family:var(--boldFonts); color:#234; overflow:hidden; box-shadow:0 0 0 .3rem var(--themeBL1) inset; transition:.2s all;}
main ._side nav a:hover {background:#0241;}
main ._side nav a:before {content:""; display:block; width:100%; height:100%; position:absolute; left:0; top:0; border:.6rem var(--themeBL1) solid; border-radius:1rem; box-shadow:0 0 0 1rem var(--themeBL1);}
main ._side nav a:after {content:""; width:.5rem; aspect-ratio:1; position:absolute; right:1.5rem; top:50%; translate:0 -50%; rotate:45deg; box-shadow:.14rem -.14rem 0 var(--arwCol); opacity:var(--arwOp);}
main ._side nav :is(
  [data-current="home"] li:nth-of-type(1), [data-current="greetings"] li:has(a[href*="/greetings."]), [data-current="outline"] li:has(a[href*="/outline."]), 
  [data-current="programs"] li:has(a[href*="/programs."]), [data-current="abstracts"] li:has(a[href*="/abstracts."]), [data-current="seminar"] li:has(a[href*="/seminar."]),
  [data-current="participants"] li:has(a[href*="/participants."]), [data-current="presenters"] li:has(a[href*="/presenters."]), [data-current="venue"] li:has(a[href*="/venue."]), 
  [data-current="female"] li:has(a[href*="/female."]), [data-current="nursery"] li:has(a[href*="/nursery."]), [data-current="sponsorship"] li:has(a[href*="/sponsorship."]),
  [data-current="poster"] li:has(a[href*="/poster."]))
    {background:#fff; --arwCol:var(--themeBL1);}
main ._side nav :is(
  a[href*="/abstracts.html"], a[href*="/seminar.html"], a[href*="/participants.html"], a[href*="/presenters.html"], a[href*="/female.html"], a[href*="/nursery.html"], a[href*="/poster.html"]) 
    {pointer-events:none; color:#4568; --arwOp:.4;}

@media (min-width:600px){
  main {flex-grow:1; display:flex;}
  main .container {display:grid; grid-template-columns:16rem 1fr; gap:3%;}
  main ._side {border-radius:.6rem; overflow:hidden;}
  main ._cnt {display:flex; flex-direction:column; gap:3cqw;}
  main ._cnt ._inner {flex-grow:1; padding:var(--fs2v); border-radius:.6rem; background:#fff;}
}
@media not (min-width:600px){
  main {padding-bottom:3rem;}
  main ._side {position:absolute; width:var(--100vw); max-height:2000px; position:absolute; left:50%; translate:-50% 0; z-index:1000; overflow:hidden; transition:all .3s;}
  body:not(.-navOpen) main ._side {max-height:0; padding-block:0;}
  main ._cnt > * ~ * {margin-top:3rem;}
}


/* CUSTOM COMPONENTS %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% */


/* ページタイトル */
.pageTitle {}
.pageTitle ._dirLabel {font-weight:bold; font-family:var(--boldFonts);}
.pageTitle ._dirLabel a {text-decoration:none;}
.pageTitle h1 {line-height:1.25; font-size:var(--fs40); font-weight:bold; font-family:var(--boldFonts); color:#234;}

@media (min-width:600px){
  .pageTitle h1 {padding-top:.5em;}
}
@media not (min-width:600px){
  .pageTitle {background:var(--themeBL1);}
  .pageTitle h1 {padding-block:1em; text-align:center; font-size:var(--fs32); box-shadow:-50px 0 0 var(--themeBL1), 50px 0 0 var(--themeBL1);}
}

/* H2～H6 */
:root {--fs2v:clamp(1.625rem, 0.388rem + 2.02vw, 2rem); --fsH2:var(--fs24); --fsH3:var(--fs21); --fsH4:var(--fs19); --fsH5:var(--fs17); --fsH6:1rem; --hllh:calc(1em + .625rem);}
.fsH2 {font-size:var(--fsH2);} .fsH3 {font-size:var(--fsH3);} .fsH4 {font-size:var(--fsH4);} .fsH5 {font-size:var(--fsH5);} .fsH6 {font-size:var(--fsH6);}
h2, .h2 {/*initialize*/ all:unset; display:block; line-height:var(--hllh); font-size:var(--fsH2); font-family:var(--boldFonts); font-weight:bold;
  /*specific style   */ position:relative; margin:2em 0 .8em; padding-left:.6em;}
h2:where(:not(h3,h4,h5,h6)):before, .h2:before {content:""; display:block; width:.2em; height:calc(100% - .3em); position:absolute; left:0; top:.15em; background:var(--themeBL2);}
h3, .h3 {/*initialize*/ all:unset; display:block; line-height:var(--hllh); font-size:var(--fsH3); font-family:var(--boldFonts); font-weight:bold;
  /*specific style   */ margin:1.5em 0 .75em; color:var(--themeBL2);}
h4, .h4 {/*initialize*/ all:unset; display:block; line-height:var(--hllh); font-size:var(--fsH4); font-family:var(--boldFonts); font-weight:bold;
  /*specific style   */ margin:1.5em 0 .6em;}
h5, .h5 {/*initialize*/ all:unset; display:block; line-height:var(--hllh); font-size:var(--fsH5); font-family:var(--boldFonts); font-weight:bold;
  /*specific style   */ margin:1.2em 0 .4em;}
h6, .h6 {/*initialize*/ all:unset; display:block; line-height:var(--hllh); font-size:var(--fsH6); font-family:var(--boldFonts); font-weight:bold;
  /*specific style   */ margin:.8em 0 .2em;}
:is(h1,.h1,h2,.h2,h3,.h3,h4,.h4,h5,.h5,h6,.h6):first-child:not(.-mtInit) {margin-top:0;}

@media not (min-width:600px){
}

/* .btn */
.btn1 :is(a,button), :is(a,button).btn1 {display:inline-block; min-width:9rem; margin-block:.1rem; padding:.6em .8em; border:0; border-radius:.3rem; background:var(--themeBL2); color:#fff; text-align:center; text-decoration:none; line-height:1.4; font-weight:bold; font-family:var(--boldFonts); box-shadow:0 -.2rem 0 #0248 inset;}
.btn2 a, a.btn2 {}
.btn2 a:before, a.btn2:before {content:""; display:inline-block; width:var(--fs10); aspect-ratio:1; margin-right:.4em; border:#222 solid; border-width:calc(var(--fs10) / 5) calc(var(--fs10) / 5) 0 0; rotate:45deg; scale:.8;}

.datedList dt {color:var(--themeBL2);}

.dlTable > dt {text-align:center;}

@media (min-width:600px){
}
@media not (min-width:600px){
}


/* PAGES %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% */


/* =============== トップページ */

.home_mv {position:relative; display:flex; align-items:center; overflow:hidden;}
.home_mv ._bg {position:absolute; left:0; top:0; width:100%; height:100%; object-fit:cover; object-position:50% 75%;}
.home_mv ._txt {position:relative;}

.contacts:not(:has(>div)),
.contacts > div {border:var(--themeBL3) .2rem solid; border-radius:.3rem; overflow:hidden;}
.contacts dt {padding:.1rem 1rem; background:var(--themeBL3); font-size:var(--fs18); font-weight:bold; font-family:var(--boldFonts); color:var(--themeBL2);}
.contacts:not(:has(>div)) > dd,
.contacts > div > dd {padding:.6rem 1rem;}

@media (min-width:600px){
  .home_mv {height:clamp(18rem, calc(14.23rem + 6.1538vw), 20rem); border-radius:.6rem;}
  .home_mv ._txt {max-width:85%; max-height:70%; margin-left:10%;}
}
@media not (min-width:600px){
  .home_mv {width:calc(100% + var(--spPI) * 2); aspect-ratio:2/1; margin-left:calc(var(--spPI) * -1);}
  .home_mv ._txt {width:80%; margin-left:8%;}
}

/* =============== その他 */

.sponsor_dl, .sponsor_dl > div {display:grid;}
.sponsor_dl {border:#0002 solid; border-width:0 1px 1px 0;}
.sponsor_dl > div > * {display:grid; place-content:center; padding:.6rem .7rem; border:#0002 solid; border-width:1px 0 0 1px;}
.sponsor_dl dt {background:var(--themeBL3);}
.sponsor_dl a:only-child {margin-block:0;}

@media (min-width:600px){
  .sponsor_dl > div {grid-column:span 5; grid-template-columns:subgrid;}
}
@media not (min-width:600px){
  .sponsor_dl {grid-template-columns:1fr 1fr;}
  .sponsor_dl > div {grid-row:span 5; grid-template-rows:subgrid;}
}

/* =============== 新着情報 */
.entryBody img {max-width:100%; height:auto;}

@media (min-width:600px){
}
@media not (min-width:600px){
}


