:root{
    --color-body: rgba(25, 72, 112, 1);
    --color-background: rgb(232, 236, 246);
    --color-lighten: rgb(237, 241, 249);
}

@font-face{
  font-family: "Shippori Antique B1";
  src: url("/common/ShipporiAntiqueB1-OTF-Medium.woff2") format("woff2");
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}
@font-face{
  font-family: "Shippori Mincho";
  src: url("/common/ShipporiMinchoB1-OTF-ExtraBold.woff2") format("woff2");
  font-weight: 800;
  font-style: normal;
  font-display: swap;
}
@font-face{
  font-family: "Open Sans";
  src: url("/common/OpenSans-Bold-webfont.woff2") format("woff2");
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}
.icon-calendar{
    display:inline-block;
    width:14px;
    height:14px;
    background-color:currentColor;
    -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 14 14'%3E%3Cpath d='M11.0833 11.7H2.91667V5.28328H11.0833M9.33333 1.19995V2.36662H4.66667V1.19995H3.5V2.36662H2.91667C2.26917 2.36662 1.75 2.88578 1.75 3.53328V11.7C1.75 12.0094 1.87292 12.3061 2.09171 12.5249C2.3105 12.7437 2.60725 12.8666 2.91667 12.8666H11.0833C11.3928 12.8666 11.6895 12.7437 11.9083 12.5249C12.1271 12.3061 12.25 12.0094 12.25 11.7V3.53328C12.25 2.88578 11.725 2.36662 11.0833 2.36662H10.5V1.19995'/%3E%3C/svg%3E") no-repeat center / contain;
    mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 14 14'%3E%3Cpath d='M11.0833 11.7H2.91667V5.28328H11.0833M9.33333 1.19995V2.36662H4.66667V1.19995H3.5V2.36662H2.91667C2.26917 2.36662 1.75 2.88578 1.75 3.53328V11.7C1.75 12.0094 1.87292 12.3061 2.09171 12.5249C2.3105 12.7437 2.60725 12.8666 2.91667 12.8666H11.0833C11.3928 12.8666 11.6895 12.7437 11.9083 12.5249C12.1271 12.3061 12.25 12.0094 12.25 11.7V3.53328C12.25 2.88578 11.725 2.36662 11.0833 2.36662H10.5V1.19995'/%3E%3C/svg%3E") no-repeat center / contain;
}
.icon-vimeo{
  display:inline-block;
  width:14px;
  height:14px;
  background-color:currentColor;
  -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 14 14'%3E%3Cpath d='M12.8337 4.32836C12.7812 5.46586 11.9878 7.02336 10.4537 9.00669C8.86699 11.0834 7.52533 12.1042 6.41699 12.1042C5.74616 12.1042 5.16866 11.4742 4.69616 10.2084C4.37533 9.06503 4.08366 7.91003 3.75699 6.75503C3.40699 5.49503 3.03366 4.86503 2.62533 4.86503C2.54366 4.86503 2.24033 5.0517 1.71533 5.4192L1.16699 4.70753C1.75033 4.20003 2.31033 3.69253 2.87033 3.18503C3.64033 2.52003 4.21783 2.17003 4.59699 2.13503C5.50699 2.0417 6.06699 2.6717 6.27699 4.0017C6.50449 5.44253 6.66199 6.33503 6.74949 6.68503C7.00033 7.87503 7.29199 8.45836 7.61283 8.45836C7.85783 8.45836 8.22533 8.08503 8.71533 7.30919C9.20533 6.53919 9.46783 5.95003 9.50283 5.5417C9.57283 4.8767 9.31033 4.5442 8.71533 4.5442C8.43533 4.5442 8.14949 4.60836 7.85199 4.7367C8.42366 2.85253 9.52033 1.9367 11.1362 1.9892C12.3378 2.0242 12.9037 2.80586 12.8337 4.32836Z'/%3E%3C/svg%3E") no-repeat center / contain;
  mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 14 14'%3E%3Cpath d='M12.8337 4.32836C12.7812 5.46586 11.9878 7.02336 10.4537 9.00669C8.86699 11.0834 7.52533 12.1042 6.41699 12.1042C5.74616 12.1042 5.16866 11.4742 4.69616 10.2084C4.37533 9.06503 4.08366 7.91003 3.75699 6.75503C3.40699 5.49503 3.03366 4.86503 2.62533 4.86503C2.54366 4.86503 2.24033 5.0517 1.71533 5.4192L1.16699 4.70753C1.75033 4.20003 2.31033 3.69253 2.87033 3.18503C3.64033 2.52003 4.21783 2.17003 4.59699 2.13503C5.50699 2.0417 6.06699 2.6717 6.27699 4.0017C6.50449 5.44253 6.66199 6.33503 6.74949 6.68503C7.00033 7.87503 7.29199 8.45836 7.61283 8.45836C7.85783 8.45836 8.22533 8.08503 8.71533 7.30919C9.20533 6.53919 9.46783 5.95003 9.50283 5.5417C9.57283 4.8767 9.31033 4.5442 8.71533 4.5442C8.43533 4.5442 8.14949 4.60836 7.85199 4.7367C8.42366 2.85253 9.52033 1.9367 11.1362 1.9892C12.3378 2.0242 12.9037 2.80586 12.8337 4.32836Z'/%3E%3C/svg%3E") no-repeat center / contain;
}
.icon-peatix{
  display:inline-block;
  width:14px;
  height:14px;
  background-color:currentColor;
  -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 14 14'%3E%3Cpath d='M5.62817 0.832764C9.09064 0.80493 12.6374 3.15209 12.6936 7.15796C12.7216 9.9715 10.7242 12.0219 8.12036 12.6462C7.86764 12.6934 7.64842 12.6367 7.46021 12.5183C7.3987 12.5032 7.34542 12.4786 7.30786 12.4412C6.85053 12.0312 6.58002 11.276 6.46802 10.95C6.37756 10.6867 6.53441 10.4893 6.7395 10.4275C6.76645 10.4194 6.79436 10.4132 6.82251 10.4099C6.82702 10.4091 6.83185 10.4069 6.83618 10.405C6.84087 10.403 6.84588 10.4007 6.85083 10.4001C7.333 10.3746 7.77638 10.2939 8.17505 10.1619C9.5039 9.71166 10.3318 8.69614 10.4534 7.32593C10.6399 4.97823 8.98763 3.73022 7.09302 3.73022C6.4376 3.73491 5.8992 3.82159 5.45728 3.96753C3.28001 4.7059 3.48154 6.89972 3.57446 7.77319C3.76113 9.58995 4.35897 10.9687 4.9563 11.9656C4.9563 11.9656 5.14222 12.263 5.14282 12.3474C5.14282 12.4872 4.75966 12.5621 4.33032 12.3757C2.79047 11.7607 1.16706 9.56218 1.13892 7.2146C1.09058 3.59548 3.58724 2.39174 4.7395 1.83667C4.92176 1.74887 5.07064 1.67735 5.17017 1.61499C5.19814 1.61499 5.25406 1.55908 5.25415 1.47534C5.25415 1.40082 5.19848 1.34509 5.1145 1.31714L4.87231 1.2605C4.78831 1.2605 4.73169 1.18615 4.73169 1.10229C4.73173 1.02794 4.75985 0.972054 4.81567 0.944092C4.81567 0.944092 4.95617 0.860714 5.62817 0.832764ZM6.85083 5.35132C7.96137 5.22104 8.55819 6.27346 8.5022 7.02808C8.44616 7.73613 7.96108 8.57501 6.33716 8.67749C5.9546 8.70536 5.68419 8.37889 5.54419 8.08081C5.46952 7.81062 5.38567 7.512 5.35767 7.15796C5.31101 6.70115 5.25534 5.56554 6.85083 5.35132Z'/%3E%3C/svg%3E") no-repeat center / contain;
  mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 14 14'%3E%3Cpath d='M5.62817 0.832764C9.09064 0.80493 12.6374 3.15209 12.6936 7.15796C12.7216 9.9715 10.7242 12.0219 8.12036 12.6462C7.86764 12.6934 7.64842 12.6367 7.46021 12.5183C7.3987 12.5032 7.34542 12.4786 7.30786 12.4412C6.85053 12.0312 6.58002 11.276 6.46802 10.95C6.37756 10.6867 6.53441 10.4893 6.7395 10.4275C6.76645 10.4194 6.79436 10.4132 6.82251 10.4099C6.82702 10.4091 6.83185 10.4069 6.83618 10.405C6.84087 10.403 6.84588 10.4007 6.85083 10.4001C7.333 10.3746 7.77638 10.2939 8.17505 10.1619C9.5039 9.71166 10.3318 8.69614 10.4534 7.32593C10.6399 4.97823 8.98763 3.73022 7.09302 3.73022C6.4376 3.73491 5.8992 3.82159 5.45728 3.96753C3.28001 4.7059 3.48154 6.89972 3.57446 7.77319C3.76113 9.58995 4.35897 10.9687 4.9563 11.9656C4.9563 11.9656 5.14222 12.263 5.14282 12.3474C5.14282 12.4872 4.75966 12.5621 4.33032 12.3757C2.79047 11.7607 1.16706 9.56218 1.13892 7.2146C1.09058 3.59548 3.58724 2.39174 4.7395 1.83667C4.92176 1.74887 5.07064 1.67735 5.17017 1.61499C5.19814 1.61499 5.25406 1.55908 5.25415 1.47534C5.25415 1.40082 5.19848 1.34509 5.1145 1.31714L4.87231 1.2605C4.78831 1.2605 4.73169 1.18615 4.73169 1.10229C4.73173 1.02794 4.75985 0.972054 4.81567 0.944092C4.81567 0.944092 4.95617 0.860714 5.62817 0.832764ZM6.85083 5.35132C7.96137 5.22104 8.55819 6.27346 8.5022 7.02808C8.44616 7.73613 7.96108 8.57501 6.33716 8.67749C5.9546 8.70536 5.68419 8.37889 5.54419 8.08081C5.46952 7.81062 5.38567 7.512 5.35767 7.15796C5.31101 6.70115 5.25534 5.56554 6.85083 5.35132Z'/%3E%3C/svg%3E") no-repeat center / contain;
}

/* Override */

*{
    margin:0;
    box-sizing:border-box;
    color:var(--color-body);
    transition: all 0.5s 0s ease;
}
*::after{
    transition: all 0.5s 0s ease;
}

body{ opacity:0; transition:opacity .5s ease; }
body.fonts-ready{ opacity:1; }

main{opacity:1;transition:opacity .5s ease;}
main.is-fading{opacity:0;}

/* Typography */

html{ font-family:sans-serif; font-weight:bold; font-size:18px; line-height:1.4; }
h1,h2,h3,h4,h5,h6{ font-weight:500; font-family:"Shippori Antique B1",serif; font-feature-settings:"palt"; }
h1{ font-size:36px; }
h2{ font-size:22px; }
.lecture h2{ font-size:22px; }
.info h2{ font-size:18px; }

.body-w300{ font-weight:300; }
.body-l{ font-size:20px; }
.body-m{ font-size:18px; }
.body-n{ font-size:16px; }
.body-s{ font-size:14px; }
.body-xs{ font-size:12px; }
.body-xxs{ font-size:10px; }
.label{ font-size:12px; font-family:"Open Sans",sans-serif; font-weight:700; }
article .label{ font-size:14px; }
.anthroponym{ font-family:"Shippori Mincho",serif; font-weight:800; font-feature-settings:"palt"; }
.pronounce{ font-family:"Shippori Mincho",serif; font-weight:800; font-feature-settings:"palt"; }
.editor-styles-wrapper *:not(h1){ font-family:sans-serif; font-weight:300; }

.lsp01{ letter-spacing:0.1em; }
.lh1{ line-height:1; }
.lh175, .editor-styles-wrapper *{ line-height:1.75; }
.lh14, .editor-styles-wrapper h1{ line-height:1.4; }

@media (max-width: 960px){
    h1{ font-size:22px; }
    h2{ font-size:20px; }
    html, .body-m{ font-size:16px; }
    .body-n{ font-size:14px; }
}

/* Layout Atom */

.ellipsis{ overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.row{ display:flex; align-items:center; gap:0px 8px; }
.end{ justify-content:end; }
.between{ justify-content:space-between; }
.flex1{ flex:1; }
.gap6{ gap:0px 6px; }
.gap8{ gap:0px 8px; }
.gap12{ gap:0px 12px; }

.mta{ margin-top:auto; }
.mt4{ margin-top:4px; }
.mt8{ margin-top:8px; }
.mt12{ margin-top:12px; }
.mt20{ margin-top:20px; }
.ml1 { margin-left:1px; }
.ml2 { margin-left:2px; }

.opc75{ opacity:75%; }
.opc50{ opacity:50%; }
.opc25{ opacity:25%; }

.label{ border-radius:4px; display:inline-flex!important; align-items:center; gap:5px; }
.label.inverted{ padding:0 6px 0 5px; background-color:var(--color-body); }
.label.inverted [class^="icon"]{ background-color:var(--color-background); }
.label.inverted [class^="icon"]+span{ color:var(--color-background); margin-bottom:1px; }
.card, .button{ border-radius:4px; border-top:1px solid #FFF; border-left:1px solid #FFF; border-radius:4px; background:#E8ECF6; box-shadow:1px 1px 1px 0 rgba(0, 0, 0, 0.15); text-decoration:none; }
.card:hover, .button:hover{ background-color:var(--color-lighten); }
.button .label { font-size:18px; }
.button [class^="icon"]{ height:24px; width:24px; }

div.img{ width:98%!important;border-radius:4px;line-height:0;position:relative; }
div.img::after{ border-radius:4px;content:'';display:block;position:absolute;top:0;right:0;bottom:0;left:0;background-color:var(--color-body);mix-blend-mode:color;opacity:1;}
div.img img{ width:100%!important;border-radius:4px; }
div.img:hover::after{ opacity:0; }
div.img:active::after{ opacity:0; }

.mq420{display:none;}
@media (max-width: 420px){ .mq420{display:inherit;} }

/* Plan */

html{
    height:100%;
}

body{
    margin:0;
    min-height:100%;
    background:var(--color-background);
    text-align:center;
    
    display:flex;
    flex-direction:column;
    justify-content: flex-start;
    align-items: center;
}

main{
    width:100%;
}

header{
    display:flex;
    flex-direction:column;
    margin:60px 40px;
    gap:24px;
}
header h1 img{
    width:240px;
    max-width:100%;
    height:auto;
}
header h1 span{
    position:absolute;
    width:1px;
    height:1px;
    margin:-1px;
    overflow:hidden;
}

.glossary{
    width:100%;
    max-width:1440px;
    display:flex;
    justify-content:end;
    align-items:end;
    margin:60px 40px 0px;
    padding:0 24px; 
    gap:24px;
}
.glossary h2{
    line-height:0;
}
.glossary h2 img{
    width:270px;
    height:auto;
}
.glossary h2 span{
    position:absolute;
    width:1px;
    height:1px;
    margin:-1px;
    overflow:hidden;
}

footer{
    flex:1;
    width:100%;
    max-width:1440px;
    display:flex;
    justify-content:flex-start;
    align-items:end;
    gap:20px;
    margin:60px 40px;
    padding:0 24px;
}
footer .logo{
    width:124px;
    height:auto;
}

article{
    display:flex;
    flex-direction:column;
    align-items:center;
    gap:40px;
    padding-bottom:60px;
}
article>*, .editor-styles-wrapper *{
    width:100%;
    max-width:640px;
    padding:0 24px;
    text-align:left;
}
article>h1{
    width:auto;
    max-width:800px;
    padding:0 24px;
}
article>h1+*{
    margin-top:20px;
}
article>.body{
    display:flex;
    flex-direction:column;
    align-items:center;
    gap:40px;
}
article a.button{
    width:100%;
    display:flex;
    flex-direction:row;
    justify-content:center;
    align-items:center;
    min-height:96px;
    padding:18px 24px;
    text-align:left;
    gap:20px;
}
article a.button.opc50 {
    min-height:72px;
}
article .guest{
    display:flex;
    flex-direction:column;
    gap:20px;
    margin-top:40px;
}

.articles{
    width:100%;
    max-width:1440px;
    display:flex;
    align-items:stretch;
    flex-wrap:wrap;
    gap:12px;
    margin:0 auto;
    padding:0 24px;
    list-style:none;
}
.articles a.card{
    width:calc((100% - 24px) / 3);
    display:flex;
    flex-direction:row;
    min-height:180px;
    padding:18px 24px;
    text-align:left;
    gap:20px;
}

@media (max-width: 1280px){
    .articles{ padding:0 80px; }
    .articles>a.card{ width:calc((100% - 12px) / 2); }
    .glossary{ padding:0 80px; }
    footer{ padding:0 80px; }
}
@media (max-width: 960px){
    header{ margin:40px 12px; }
    article>*, article>h1{ padding:0 12px; }
    article>.body{ gap:24px; }
    .articles{ max-width:560px; padding:0 12px; }
    .articles>a.card{ width:100%; }
    .glossary{ max-width:560px; padding:0 12px; flex-direction:column-reverse; align-items:center; }
    footer{ max-width:560px; padding:0 12px; flex-wrap:wrap; justify-content:center; }
    footer>p:nth-of-type(1){ flex:none; }
}

/* Index　- Lecture */

a.lecture>div:nth-of-type(1){
    height:100%;
    width:100%;
    display:flex;
    flex-direction:column;
    gap:8px;
    padding-bottom:4px;
}
a.lecture>div:nth-of-type(1)>h2{
    display: -webkit-box;
    line-clamp: 2;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
}

/* Index　- Information */

a.info>div:nth-of-type(1){
    height:100%;
    display:flex;
    align-items:center;
}
a.info>div:nth-of-type(1)>img{
    max-width:100px;
    max-height:140px;
}
a.info>div:nth-of-type(2){
    height:100%;
    flex:1;
    display:flex;
    flex-direction:column;
    gap:8px;
    padding-bottom:4px;
}
a.info>div:nth-of-type(2)>h2{
    display: -webkit-box;
    line-clamp: 2;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
}
a.info>div:nth-of-type(2)>p{
    display: -webkit-box;
    line-clamp: 6;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 6;
    overflow: hidden;
    opacity:50%;
}