@charset "utf-8";
/*
■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ 

 ■■■  ■                    ■                   
■     ■                    ■                   
■    ■■■■ ■ ■ ■   ■   ■■■ ■■■■ ■   ■  ■ ■  ■■■ 
 ■■   ■   ■■  ■   ■  ■■ ■  ■   ■   ■  ■■  ■  ■ 
  ■■■ ■   ■   ■   ■  ■     ■   ■   ■  ■   ■   ■
    ■ ■   ■   ■   ■  ■     ■   ■   ■  ■   ■■■■■
■   ■ ■   ■   ■  ■■  ■■    ■   ■  ■■  ■   ■    
■■■■  ■■  ■    ■■ ■   ■■■  ■■   ■■ ■  ■    ■■■ 

■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ 
*/
/* ---- Structure ---- */
html,body{ min-height:100%; position: relative; }
body{ color: #fff; background:#000 url("../images/common/background.webp") repeat-y center top; background-size: 100%; }
body{ font-family: YakuHanJPs, "Noto Sans JP", sans-serif;}
.fnt-bsc{font-family: YakuHanJPs, "Noto Sans JP", sans-serif;}
.fnt-bsc.noyh{font-family: "Noto Sans JP", sans-serif;}
.fnt-dsp1{ font-family: "Anta", sans-serif; }
.fnt-ac0{ color:#14247e; }
.fnt-ac1{ color:#d5ca60; }

header,article,section,footer{ position: relative; width: 100%; display: block; }
.lo-part,.lo-cont{ position: relative; width: 100%; display: block; }

.part-background{ position: absolute; width: 100%; min-height:100%; overflow: hidden; }
.part-foreground{ position: absolute; width: 100%; min-height:100%; overflow: hidden; z-index: 999; pointer-events: none; }
.part-header{ position: relative; z-index: 1000; }
.part-body{ position: relative; }
.part-footer{ position: relative; }

/* lazyestload */
img { transition: filter 1.5s;}
img.lazyestload { width: 100%; filter: blur(8px);}

/* background */
#Background > div{ width: 100%; min-height: 100%; position: absolute; top:0; pointer-events: none; }

/* foreground */
#Foreground > div{ width: 100%; min-height: 100%; position: absolute; top:0; pointer-events: none; }
.bdy-frame{ }
.bdy-frame .upper-line,
.bdy-frame .bottom-line{ width: 100%; height: calc(39/3000*100em); background: url("../images/common/bdy-frame-h.webp") repeat-x left top; background-size: auto 100%; position: absolute; left:0;}
.bdy-frame .upper-line{ top:0; }
.bdy-frame .bottom-line{ bottom:0; }
.bdy-frame .left-top{ width: calc(64/3000*100em); height: calc(343/3000*100em); background: url("../images/common/bdy-frame-v-top.webp") no-repeat left top; background-size: 100% ; position: absolute; top:calc(39/3000*100em); left:0;}
.bdy-frame .left-middle{ width: calc(40/3000*100em); height: calc(100% - 39/3000*100em*2 - 343/3000*100em); background: url("../images/common/bdy-frame-v-middle.webp") repeat-y left top; background-size: 100% ; position: absolute; top:calc(39/3000*100em + 343/3000*100em); left:0;}

.top-page .bdy-frame .upper-line{ top:calc(2600/3000*100em); }
.top-page .bdy-frame .left-top{ top:calc(39/3000*100em + 2600/3000*100em); }
.top-page .bdy-frame .left-middle{ height: calc(100% - 39/3000*100em*2 - 343/3000*100em - 2600/3000*100em); top:calc(39/3000*100em + 343/3000*100em + 2600/3000*100em);}


/* header */
.part-header{ width: 100%; height: 100vh; position: fixed; top:0; left:0; background:#000; pointer-events: none; }
.part-header::before{ content:""; width: 100%; height: 100vh; position: absolute; top:0; left:0;pointer-events: none; background: url("../images/common/background.webp") repeat-y center top; background-size: 100%; pointer-events: none; }

.cont-global-navi{ width: 100%; display: flex; flex-wrap: wrap; position: relative; padding: 0; margin: 0 auto; z-index: 2; }

.global-logo{ width: 50%; padding: 0; margin: 0; z-index: 2; }
.global-logo > div{ width: calc( 834/3000 * 100em ); padding: 14em 0 0 0; margin: 0 auto; }

.global-navi{ width: 50%; padding:8em 0 6em 0; margin: 0; position: relative; pointer-events: auto; text-align: left; }
.global-navi{ background: url("../images/navi/bg-line.webp") no-repeat left top; background-size: 0.4em; }
.global-navi > ul{ display: flex; flex-wrap: wrap; flex-direction: column; list-style-type: none; padding: 0 0 0 .07em; margin: 0; position: relative; }
.global-navi > ul > li{ width: 100%; display: flex; align-items: center; padding: 0; margin: 0 0 0.1em 0; letter-spacing: .15em; position: relative; font-family: "Anta", sans-serif; }
.global-navi > ul > li::before{ content:"-"; font-size: 2em; line-height: 0; margin-right: .4em; letter-spacing: 0; position: relative; display: inline-block; }
.global-navi > ul > li a{ color: #FFF; text-decoration: none; position: relative; display: inline-block; padding: .75em 0; }
.global-navi > ul > li a .label{ font-size: 1.7em; letter-spacing: .25em;  }
.global-navi > ul > li a::after{ content:""; display:  }

.global-navi > ul > li a:hover{ color: #ddd57f; text-decoration: underline .133em; text-underline-offset: .333em;}
.global-navi > ul > li.gnx{ padding-top: .75em; }
.global-navi > ul > li.gnx a{ width: 2.0em; margin: 0 ; }
.global-navi > ul > li.gnx a .label-image{ display: block; width:100%; }
.global-navi > ul > li.gnx a:hover{ transform: scale(1.2); filter: brightness(0) saturate(100%) invert(96%) sepia(11%) saturate(1404%) hue-rotate(338deg) brightness(106%) contrast(94%); }
.global-navi > ul > li.crt a{ opacity: 1; pointer-events: none; color: #ddd57f; }
.global-navi > ul > li.cs a{ opacity: 1; pointer-events: none; color: #CCC; }
.global-navi > ul > li a.hdn{ display: none; }

.header-bottom-line{ width: 100%; height: calc(39/3000*100em); background: url("../images/common/bdy-frame-h.webp") repeat-x left top; background-size: auto 100%; position: relative; }

.cont-sp-btn{ display: block; width: 5.333em; height: 5.333em; position: absolute; top:4em; right: 3.3em; z-index: 3; pointer-events: all; }
/* .cont-sp-btn{ filter: invert(100%); } */
.cont-sp-btn a{ text-align: center; line-height: 0;  }
.cont-sp-btn a:hover{ text-decoration: none;}
.cont-sp-btn svg{ fill: currentColor; }
.cont-sp-btn .sp-navi-open{ display: block; }
.cont-sp-btn .sp-navi-close{ display: none;  }

.part-header{ background-color: rgba(0,0,0,0); background-image: none; transition: background-color .2s ease-out 0s; }
.part-header:before{ opacity: 0; transition: opacity .5s ease-out .2s; }
.part-header:before{ visibility: hidden; }
.cont-global-navi{ display: none; }

.spmenu-on .cont-sp-btn .sp-navi-open{ display: none; }
.spmenu-on .cont-sp-btn .sp-navi-close{ display: block; }
.spmenu-on .part-header{ background-color: rgba(0, 0, 0, 1); pointer-events: auto; }
.spmenu-on .part-header:before{ opacity: 1; }
.spmenu-on .part-header:before{ visibility: visible; }
.spmenu-on .cont-global-navi{ display: flex; }


/* body */
.part-body{ position: relative; display: block; margin: 0; }
.part-body-side{ display: none; }
.part-body-main{ position: relative; width: 100%; }

.cont-upper{ position: relative; }
.sub-page .cont-upper{ padding: 4.6em 0 0 0; height: calc( 400/3000 * 100em ); background-color: rgba(71, 71, 71, 0.4); }
.cont-middle{ position: relative; }
.cont-bottom{ position: relative; }

.cont-top-content > .inner{ padding: 0; margin: 0 auto;}
.cont-sub-content > .inner{ padding: 0; margin: 0 auto;}

.sub-logo{ width: calc(417/3000*100em); margin: 0; padding:0; position: absolute; top:3.6em; left:4.8em; }

.top-subtitle{ font-size: 1em; margin: 0 auto; z-index: 2; position: relative; }
.top-subtitle span{ display: block; margin: 0 auto; position: relative; }
.sub-subtitle{ font-size: 1em; margin: 0 auto; z-index: 2; position: relative; }

.sub-blocktitle{ font-size: 1em; width: calc(1062/3000*100em); margin: 0 auto 2em auto; z-index: 2; position: relative; }
.sub-blocktitle > span{ }


.sub-content-container{  }


/* footer */
.part-footer{ min-height:calc( 600/3000 * 100em ); position: relative; background:url("../images/common/footer-bg.webp") no-repeat center bottom; background-size: 100%; }
.cont-global-footer{ width: 100%; margin: 0 auto; padding: 3em 0; position: relative; }

.footer-pagetop{ position: sticky ; bottom:2em; /*right: 2em;*/ z-index: 10; }
.footer-pagetop a{ width: calc( 170/3000 * 100em ); height: calc( 172/3000 * 100em ); margin: 0 3.1em 0 auto; display: block; position: relative; background:url("../images/navi/pagetop.webp?v2") no-repeat center center; background-size: contain; }
.footer-pagetop a:hover{ transform: scale(1.1); }
.footer-pagetop{ opacity: 0;}
.footer-pagetop.start{ animation: anm-pagetop-btn .5s 0s ease-out both running;}
@-webkit-keyframes anm-pagetop-btn { 0% { opacity: 0; -webkit-transform: translateY(-2em); transform: translateY(-2em);} 100% { opacity: 1; -webkit-transform: translateY(0); transform: translateY(0);}}
@keyframes anm-pagetop-btn { 0% { opacity: 0; -webkit-transform: translateY(-2em); transform: translateY(-2em);} 100% { opacity: 1; -webkit-transform: translateY(0); transform: translateY(0);}}
.anm-pagetop-btn { -webkit-animation-name: anm-pagetop-btn; animation-name: anm-pagetop-btn;}

.cont-footer{  padding: 0; margin: 0 auto; text-align: center; }
.footer-copyrihgt{ margin: 0 auto 2em auto; }
.footer-copyrihgt p{ color: #5f5f5f; font-size: .9em; letter-spacing: .1em; margin: 0; }
.footer-logo{width: calc(1160/3000*100em); margin: 0 auto; padding: 0;}

.cont-footer-navi{ display: flex; flex-wrap: wrap; justify-content: center; align-items: center; margin: 0 auto 3.5em auto; }

.footer-navi-line-upper{ width: 70%; height: 4em; margin-bottom:3.5em; border-top:#FFF .133em solid; border-left:#FFF .133em solid; position: absolute; right:0; pointer-events: none; }
.footer-navi-line-upper::before{ content:""; width: .266em; height: 4em; background:url("../images/common/footer-navi-line-parts.webp") no-repeat right top; background-size: 100%; position: absolute; top:-.133em; left:-.366em; }
.footer-navi-line-bottom{ width: 70%; height: 5em; margin-top:-8em; border-bottom:#FFF .133em solid; border-right:#FFF .133em solid; position: absolute; left:0; pointer-events: none; }
.footer-navi-line-bottom::before{ content:""; width: 4em; height: .266em; background:url("../images/common/footer-navi-line-parts2.webp") no-repeat right top; background-size: auto 100%; position: absolute; bottom:-.399em; right:-.133em; }
.cont-footer-navi .global-navi{ width: 30.0%; padding:0 0; margin: 0; }
.cont-footer-navi .global-navi{ background: none; }
.cont-footer-navi .global-navi > ul{ flex-direction: row; padding: 0 0 0 0; margin: 0;  }
.cont-footer-navi .global-navi > ul > li{ width: inherit; padding: 0; margin: 0 2em 0.1em 0; letter-spacing: .1em; }
.cont-footer-navi .global-navi > ul > li::before{ font-size: 1.7em; margin-right: .3em; }
.cont-footer-navi .global-navi > ul > li a{ display: inline-block; padding: .25em 0; }
.cont-footer-navi .global-navi > ul > li a .label{ font-size: 1.5em; letter-spacing: .25em;  }

.cont-footer-navi .sns-navi{ width: 3.4em; padding-right: 1em; }
.cont-footer-navi .sns-navi a{ width: 100%; margin: 0 ; }
.cont-footer-navi .sns-navi a .label-image{ display: block; width:100%; }
.cont-footer-navi .sns-navi a:hover{ transform: scale(1.2); filter: brightness(0) saturate(100%) invert(96%) sepia(11%) saturate(1404%) hue-rotate(338deg) brightness(106%) contrast(94%); }


/* content */
.inview{ animation:inview .5s .1s ease-out both paused; }
.inview-start{ animation:inview-start .5s .1s ease-out both running; }
.inview-act{ transform-origin: left top; transition: all .5s ease .1s;  }

.ptn-bdr1{ background:url("../images/common/ptn-bdr1.webp") repeat left top; background-size: calc(359/3000*100em); }

.ptn-scr1{ overflow: hidden; }
.ptn-scr1::before{ content:""; display: block; width: calc(1059/3000*100em); height: calc(1409/3000*100em); background:url("../images/common/ptn-scr1.webp") repeat left top; background-size: 100%; }

.ptn-scr2{ overflow: hidden; }
.ptn-scr2::before{ content:""; display: block; width: calc(1408/3000*100em); height: calc(1507/3000*100em); background:url("../images/common/ptn-scr2.webp") repeat left top; background-size: 100%; }

.table-a{ border-collapse: separate; border-spacing: 2px;}
.table-a th{ padding:0.5em; background-color:rgba(0,0,0,.05); font-weight: normal; text-align: inherit; vertical-align: top; text-align: left; }
.table-a td{ padding:0.5em; background-color:rgba(0,0,0,.025); vertical-align: top; }

.frame-a{ border:#202020 solid 1px; background-color: #000; }
.frame-b{  background-color: #202020; }

.sep-a{ height: .133em; background-color: #e8dfcd; }

.rot-a{ position: relative; transform: rotate(3deg); }
.rot-b{ position: relative; transform: rotate(-3deg); }

.sdw-1{ filter: drop-shadow(.25em .25em 0 #e60000); }
.sdw-2{ filter: drop-shadow(0 0 .5em #d7000f); }
.sdw-3{ text-shadow:-1px 0px 0px #000,1px 0px 0px #000; filter: drop-shadow(0 0 .5em #fb00ff); }

.sdw-t1{ filter: drop-shadow(1px 1px 0 #ffe382); }
.sdw-t2{ filter: drop-shadow(1px 1px 0 #ebaffe); }

.sqr-image-box{ width: 27em; height: 27em; background-color: #FFF; position: relative; }
.sqr-image-box img{display: block; width: 100%; height: 100%; object-fit: scale-down;}


/* 1 */
.cont-entries{ padding: 0; margin: 0 auto; }
.content-entry{ padding: 0 0 1.666em 0; margin: 0 0 1.4em 0; position: relative; background-color: rgba(22, 36, 128, 0.4); }

.content-entry .entry-cont{ width: calc(2200/3000*100em); margin: 0 auto;}
.content-entry .entry-head{ height: 100%; margin: 0 auto; position: relative; padding: 0; }
.content-entry .entry-date{ width: 9em; display: block; position: relative; margin: 0; padding: .5em 0; text-align: center; font-size: 1em; font-weight: normal; line-height: 1; letter-spacing: 0.1em; color: #d4ca5f; background-color: #252737; z-index: 2; }
.content-entry .entry-date:before{ content:"- ";  }
.content-entry .entry-date:after{ content:" -";  }
.content-entry .entry-date > span{  line-height: 1; letter-spacing: .1em; margin-bottom: 0;}

.content-entry .entry-title{ width: 86%; display: block; position: relative; margin: -0.5em auto 0 4em; padding: 1em 1.2em; font-size: 1em; line-height: 1.5; letter-spacing: 0.05em; background-color: #ccd3ff; z-index: 1; }
.content-entry .entry-title > span{ font-size: 1.333em; font-weight: bold; color: #000; line-height: 1.7; }
.content-entry .entry-title [data-ruby]::before { top: -1.5em;  }
.content-entry .entry-body{ width: 86%; margin: 0.3em auto 0 3.65em; padding: 2.75em; font-size: 1.1em; color: #08090c; letter-spacing: .05em; line-height: 1.9; position: relative; background-color: #FFF; }
.content-entry .entry-body [data-ruby]::before { top: -1.5em;  }

.content-accordion .acd-check{ display: none;}
.content-accordion .acd-head .acd-label{ display: block;  margin-bottom: 0; }
.content-accordion .acd-head{ position: relative; }
.content-accordion .acd-head .acd-label::before{ content:""; display: block; padding: 0; width: 4.666em; height: 4.666em; margin-bottom: 0; text-align: center; line-height: 1; background: url("../images/common/news-open.webp") no-repeat left top; background-size: 100%; position: absolute; top:1em; right: 0; pointer-events: auto;}
.content-accordion .acd-body{ display: none; height: 0; overflow: hidden; transition: 0.5s all ease 0.5s; }
.content-accordion .acd-check:checked ~ .acd-body{ display: inherit; height: inherit; transition: 0.5s all ease 0s;}
.content-accordion .acd-check:checked ~ .acd-head .acd-label::before{ background-image: url("../images/common/news-close.webp")}

.content-link .lnk-head{ position: relative; }
.content-link .lnk-head > a::before{ content:""; display: block; padding: 0; width: 4.666em; height: 4.666em; margin-bottom: 0; text-align: center; line-height: 1; background: url("../images/common/news-link.webp") no-repeat left top; background-size: 100%; position: absolute; top:1em; right: 0; pointer-events: none;}
.content-link .lnk-head > a{ display: block; text-decoration: none; color: #000; }

.content-non .non-head{ position: relative; }
.content-non .non-head a{ display: flex; flex-wrap: nowrap; align-items: center; text-decoration: none; pointer-events: none; }


.cont-singles{ padding: 0; margin: 0 auto; padding-bottom: 3em; }
.content-single{ padding: 0; margin: 0 0 1em 0; position: relative; background: #202020; }
.content-single .entry-head{ margin-bottom: 0; position: relative; padding: 1.5em; }
.content-single .entry-title{ padding:1em ; margin-bottom: 0; position: relative; background: #fff; border:#003f63 solid 2px; border-radius: .5em; }
.content-single .entry-title > span{ color: #003f63;  font-size: 1.5em; font-weight: 800; line-height: 1.5; }
.content-single .entry-body{ padding: 1.5em; font-size: 1.2em; color: #003f63; letter-spacing: .05em; line-height: 1.8; position: relative; }

.cont-tiles{ display: flex; flex-wrap: wrap; justify-content: center;  }

.modal-data{ display: none; }
.cont-modal{ width: 100%; margin: 0 auto; }

.block-data{ display: none; }
.block-data.crt{ display: inherit; }

.cont-modal.comment{ width: 66em;  }


/* modaal */
.modaal-overlay{ background: rgba(255,255,255,.9); }
.modaal-wrapper{ overflow-x: hidden; }
.modaal-inner-wrapper{ padding: 80px 0; }
.image-typ2 .modaal-inner-wrapper{ padding: 80px 25%; }
.modaal-container{ color: inherit; background-color: transparent; box-shadow:none; max-width: inherit; }
.modaal-content-container{ padding: 0; }
.modaal-video-wrap{ margin: auto auto; }
.modaal-close{ right: 2.5em; top: 1.5em; width: 3em; height: 3em;}
.modaal-close:before,.modaal-close:after{ background-color: #003f63; border-radius: 0; top: .4em; left: 2em; width: .3em; height: 4em; }
.modaal-close:focus,.modaal-close:hover {background: transparent;}
.modaal-close:focus:before,.modaal-close:focus:after{background: #a47f39;}
.modaal-close:hover:before,.modaal-close:hover:after{background: #a47f39;}

/*
■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ 

              ■                 ■                
■             ■  ■       ■      ■               ■
■             ■                 ■               ■
■  ■■■■    ■■■■  ■ ■   ■ ■   ■■■■  ■   ■  ■■■   ■
■  ■■  ■  ■■ ■■  ■  ■  ■ ■  ■■ ■■  ■   ■  ■  ■  ■
■  ■   ■  ■   ■  ■  ■ ■  ■  ■   ■  ■   ■   ■■■  ■
■  ■   ■  ■   ■  ■  ■ ■  ■  ■   ■  ■   ■ ■■  ■  ■
■  ■   ■  ■■ ■■  ■   ■■  ■  ■■ ■■  ■  ■■ ■   ■  ■
■  ■   ■   ■■■■  ■   ■   ■   ■■■■   ■■ ■  ■■■■  ■

■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ 
*/
/* Modal */
#Modal_data{ display: none; }

/* TOP-PAGE */
/* main */
.cont-top-visual{ width: 100%; position: relative; margin: 0 auto; padding: 0; display: flex; flex-wrap: wrap; background: #1c1c1c url("../assets/top/t1/kvbg.webp?v2") no-repeat center top; background-size: 100%;  }
/* .cont-top-visual{ background-attachment: fixed; }
.tate .cont-top-visual{ background-attachment: scroll; } */

.cont-top-visual img{ width: 100%; height: auto; }

.cont-top-visual .kv-container{ width: calc(1900/3000*100em); height: calc(2600/3000*100em); margin: 0 0 0 auto; position: relative; overflow: hidden; background-color: #000; }
.kv-container > div{ position: absolute; top:0; }
.kv-container .grp{ width:100%; margin: 0 auto; position: relative; top:0em; display: none; }
.kv-container .grp.on{ display: block; }
.kv-container .grp > div{ position: absolute; top:0; }
.kv-container .grp .vis-grp{ position: relative; width: 100%; margin: 0 auto; }
.kv-container .grp .vis-grp .bg{ position: relative; }
.kv-container .grp .vis-grp .vis{ position: absolute; top:0; }

.cont-top-visual .left-cont{ width: calc(100% - 1900/3000*100em); min-height: 100%; position: relative;}
.cont-top-visual .left-cont{ }
.yoko .cont-top-visual .left-cont{ padding-bottom: 0;}

.cont-top-visual .left-cont .sticky-cont{ width: 100%; height: 100vh; padding: 5em 0 1em 0; position: sticky; top:0; left:0; background: #1c1c1c url("../assets/top/t1/kvbg.webp?v2") no-repeat left top; background-size: 100em; }
.tate .cont-top-visual .left-cont .sticky-cont{ height: inherit; position: absolute; background: none; }
.tate .cont-top-visual .left-cont .sticky-cont:before{ display: none; }

.cont-top-visual .left-cont .logo{ width: calc(834/3000*100em); position: relative; margin: 0 auto 4em auto; }
.cont-top-visual .left-cont .oa{ width: 100%; position: relative; margin: 0 auto 1.5em auto; }
/* .cont-top-visual .left-cont .catch{ width: 100%; padding: 2.5em 0; position: relative; margin: 0 auto 3em auto; }
.cont-top-visual .left-cont .catch::before{ content:""; width: 100%; height: calc(16/3000*100em); background: url("../assets/top/t1/catch-frame.webp") no-repeat center center; background-size: 100%; position: absolute; top:0; }
.cont-top-visual .left-cont .catch::after{ content:""; width: 100%; height: calc(16/3000*100em); background: url("../assets/top/t1/catch-frame.webp") no-repeat center center; background-size: 100%; position: absolute; bottom:0; transform: rotate(180deg); } */
/* .cont-top-visual .left-cont .catch span{ display: block; width: calc(898/3000*100em); position: relative; margin: 0 auto; } */

.vis-switch{ width: 100%; padding: 0; margin: 0 auto 8em auto; position: relative; }
.vis-switch{ display: flex; flex-wrap: wrap; flex-direction: row; justify-content: center; }
.vis-switch > div{ width: calc(204/3000*100em); line-height: 0; margin: 0.7em; }
.vis-switch > div a{ display: block; position: relative; background:url("../assets/top/vis-swt-off.webp") no-repeat center center; background-size: contain; }
.vis-switch > div a img{ position: relative; z-index: 1; }
.vis-switch > div.on a{ pointer-events: none; background-image:url("../assets/top/vis-swt-on.webp") }

/*
.cont-top-visual .left-cont .top-vis-bdr{ width: 100%; height: calc(600/3000*100em);  position: absolute; bottom: 0; left:0; }
.yoko .cont-top-visual .left-cont .top-vis-bdr{ display: none; } */



.kv-container .grp .vis-grp{ transform: scale(1.25); opacity: 0; transform-origin: center bottom; }
.cont-top-visual .left-cont .logo{ opacity: 0; transform: translateY(-10%); }
.cont-top-visual .left-cont .oa{ opacity: 0; transform: scale(1.1);}
.cont-top-visual .left-cont .catch{ opacity: 0; }
.vis-switch{ opacity: 0; }

.s0 .cont-top-visual .left-cont .logo{ opacity: 1; transform: translateY(0%); transition: opacity .75s ease-out 0s, transform .5s ease-out 0s; }
.s0 .cont-top-visual .left-cont .oa{ opacity: 1; transform: scale(1); transition: opacity .75s ease-out .1s, transform .25s ease-out 0s; }
.s0 .cont-top-visual .left-cont .catch{ opacity: 1; transition: opacity .75s ease-out .3s, transform .25s ease-out 0s; }
.s0 .vis-switch{ opacity: 1; transition: opacity .75s ease-out .5s, transform .25s ease-out 0s; }
.s0 .kv-container .grp .vis-grp{ transform: scale(1.0); opacity: 1; transition: all 1.25s ease .0s; }

.s1 .kv-container .grp .vis-grp{ transform: scale(1.0) translate(0,0); opacity: 1; transition: all 1.5s ease .75s; }


.s5 .vis-switch-container{ opacity: 1; visibility: visible; transition: all .9s ease .5s; }


.kv-container .grp{ transform: scale(1.1,1.1) ; transform-origin: center center; opacity: 0; }
.kv-container .grp.on{ transform: scale(1,1); opacity: 1; transition: all 1.0s ease .0s; }



/* top-movie */
.cont-top-movie{ min-height: 1em; background-color: rgba(22, 36, 128, 0.4); }
.cont-top-movie > .inner{ padding: 4em 0; }

.top-movie-list{ width: calc(1920/3000*100em); /*width: 100%;*/ position: relative; margin: 0 auto; }

.thm.youtube-thm{ width: 100%; max-width: 1920px; position: relative; text-align: center; line-height: 0; padding: 0; }
.thm.youtube-thm > a{ display: inline-block; pointer-events: auto; overflow: hidden; line-height: 0; position: relative; }
.thm.youtube-thm > a::after{ content:""; position: absolute; display: block; width:100%; height:100%; background: url("../images/common/play.webp") no-repeat center center; background-size: calc(240/3000*100em); transform-origin: center center; pointer-events: none; top:0; left: 0; right: 0; margin: 0 auto; opacity: 1; }
.thm.youtube-thm > a:hover::after{ background-size: calc(240/3000*100em*1.1); }

.top-movie-cursor{ position: absolute; width: 85em; top:25em; left: 0; right: 0; margin: 0 auto; pointer-events: none; }
.top-movie-cursor ul{ display: flex; justify-content: space-between; margin: 0; padding: 0; list-style-type: none; }
.top-movie-cursor ul li{ display: block; width:calc(198/3000*100em); height: calc(198/3000*100em); position: relative; pointer-events: all; cursor: pointer; }
.top-movie-cursor ul li span{ display: block; width:100%; height: 100%; background:  url("../images/common/cursor.webp") no-repeat center center; background-size: 100%; transform-origin: center center; }
.top-movie-cursor ul li.left span{ transform: scale(-1,1); }
.top-movie-cursor ul li:hover{ transform: scale(1.1); }

.top-movie-dots{ text-align: center; padding-top: 1em;}
.top-movie-dots ul{ display: block; list-style-type: none; padding: 0; margin: 0; }
.top-movie-dots li { display: inline-block; margin: 0 5em 0 -1em; padding: 0;}
.top-movie-dots button { margin: 0; padding: 0; background: none; border: none; border-radius: 0; outline: none; -webkit-appearance: none; -moz-appearance: none; appearance: none;}
.top-movie-dots li button { position: relative; text-indent: -9999px;}
.top-movie-dots li button:before { content: "○"; color: #a47f39; font-size: 1.8em; text-indent: 0px; position: absolute; top: 0; left: 0;}
.top-movie-dots li.slick-active button:before {content: "●";  color: #a47f39;}



/* top-news */
.cont-top-news{ min-height:1em; }
.cont-top-news > .inner{ width: 100%; padding: 5em 0 4em 0; }
.top-subtitle.news span{ width: calc(1551/3000*100em); margin-bottom: 4em; }
.top-news-container{ width: calc(1800/3000*100em); background-color: rgba(22, 36, 128, 0.4); margin: 0 auto; position: relative;  }

.news-headline{ min-height: 20em; padding: 3em 0 3em 0; }
.news-headline a{ width: 100%; display: block; margin-bottom: 0; position: relative;}
.news-headline dl{ font-size: 1.133em; margin: 0; display: block; position: relative;}
.news-headline dl dt{ width: 9em; display: block; position: relative; margin: 0; padding: .5em 0; text-align: center; font-size: 1em; font-weight: normal; line-height: 1; letter-spacing: 0.1em; color: #d4ca5f; background-color: #252737; z-index: 2; }
.news-headline dl dt::before{ content:"- ";  }
.news-headline dl dt::after{ content:" -";  }
.news-headline dl dd{ width: 93%; display: block; position: relative; margin: -0.5em 0 0 auto; padding: .8em 1em; font-size: 1em; line-height: 1.5; letter-spacing: 0.05em; background-color: #ccd3ff; z-index: 1; }
.news-headline a,
.news-headline a:visited{ text-decoration: none; color: #000; }
.news-headline a:hover{ color:#14247e; }



/* top-intro */
.cont-top-intro{ min-height: 1em; position: relative; z-index: 3; }
.cont-top-intro > .inner{ padding: 0 0 4em 0; }
.top-subtitle.intro span{ width: calc(2002/3000*100em); margin-bottom: 4em; }
.top-intro-title-bdr-l{ width: calc(530/3000*100em); height: calc(530/3000*100em); position: absolute; top:23em; left:3.3em; background-position: -5em 0; }
.top-intro-title-bdr-r{ width: calc(530/3000*100em); height: calc(530/3000*100em); position: absolute; top:10em; right:3.3em; background-position: 12em 0; }

.intro-container{  position: relative;  }
.intro-text{ padding-bottom: 3em; text-align: center; margin: 0 auto; position: relative; z-index: 3; }
.intro-text p{ font-size: 1.2em; font-weight: 300; line-height: 2.4; letter-spacing: .15em; margin-bottom: 1.5em; position: relative;  }
.intro-text p.mkw{ font-weight: bold; font-size: 1.4em; }
.intro-text p [data-ruby]::before { top: -1.5em;  }
.intro-text p span{ display: inline-block; transform: scaleX(1.1);  }
.intro-text .text-btm{ width: calc(889/3000*100em); height: calc(434/3000*100em); background: url("../images/top-intro-bd.webp") no-repeat center center; background-size: contain; position: absolute; bottom:1em; right: 20em;}



/* top-story */
.cont-top-story{ min-height: 1em; position: relative; z-index: 3; }
.cont-top-story > .inner{ padding: 0 0 4em 0; }
.top-subtitle.story span{ width: calc(1031/3000*100em); margin-bottom: 4em; }
.top-story-title-bdr-l{ width: calc(530/3000*100em); height: calc(530/3000*100em); position: absolute; top:23em; left:3.3em; background-position: -5em 0; }
.top-story-title-bdr-r{ width: calc(430/3000*100em); height: calc(430/3000*100em); position: absolute; top:3em; right:3.3em; background-position: 12em 0; }
.top-story-title-bdr-r2{ width: calc(530/3000*100em); height: calc(530/3000*100em); position: absolute; top:30em; right:3.3em; background-position: 12em 0; }

.story-container{  position: relative;  }
.story-text{ padding-bottom: 3em; text-align: center; margin: 0 auto; position: relative; z-index: 3; }
.story-text p{ font-size: 1.2em; color: #e5e4d5; font-weight: 300; line-height: 2.4; letter-spacing: .15em; margin-bottom: 1.2em; position: relative;  }
.story-text p.mkw{ font-weight: bold; }
.story-text p [data-ruby]::before { top: -1.5em;  }
.story-text p span{ display: inline-block; transform: scaleX(1.1);  }



/* top-staffcast */
.cont-top-staffcast{ min-height: 84em; position: relative; }
.cont-top-staffcast > .inner{ padding: 0; }

.staffcast-container{ position: relative;  margin:0 auto 4em auto; }
.top-subtitle.cast span{ width: calc(1022/3000*100em); margin-bottom: 2em; }
.top-subtitle.staff span{ width: calc(932/3000*100em); margin-bottom: 2em; }
.top-cast-title-bdr-l{ width: calc(800/3000*100em); height: 100%; position: absolute; top:0; left:0; background-position: -5em 3em; }
.top-cast-title-bdr-r{ width: calc(800/3000*100em); height: 100%; position: absolute; top:0; right:0; background-position: 10em -10em; }
.top-staff-title-bdr-l{ width: calc(800/3000*100em); height: 100%; position: absolute; top:0; left:0; background-position: -5em 0; }
.top-staff-title-bdr-r{ width: calc(800/3000*100em); height: 100%; position: absolute; top:0; right:0; background-position: 1em 0; }

.staffcast-list{ width: calc(1400/3000*100em); margin: 0 auto; position: relative; z-index: 3; }
.staffcast-list .list-item{ width: 100%; padding: .75em 0; margin-bottom: 0; display: flex; flex-wrap: wrap; flex-direction: row; justify-content: center; align-items: center; position: relative; background-color: rgba(22, 36, 128, 0.4); border-top:#282b3d solid 1px; }
.staffcast-list .list-item.btm{ border-bottom:#282b3d solid 1px; }
.staffcast-list .list-item > p{ margin: 0; }
.staffcast-list .sep-l{ width: 100%; height: 5em; margin-bottom: 0; }
.staffcast-list .sep{ width: 100%; height: .5em; margin-bottom: 0; }
.staffcast-list .pos{ width: 40%; text-align: right; font-size: 1.133em; letter-spacing: .1em; line-height: 1; }
.staffcast-list .pos > span{ display: inline-block; position: relative; transform: scaleX(1.1); }
.staffcast-list .name{ width: 40%; font-size: 1.4em; letter-spacing: .1em; line-height: 1.3; }
.staffcast-list .name > span{ display: inline-block; position: relative; transform: scaleX(1.1); }
.staffcast-list .cmt-cont{ width: 10%; text-align: center; }
.staffcast-list .cmt-cont > span,
.staffcast-list .cmt-cont > a{ display: inline-block; width: calc(74/3000*100em); height: calc(75/3000*100em); margin: 0 auto; position: relative; }
.staffcast-list .cmt-cont > span{ background: url("../images/common/cmt-dmy.webp") no-repeat center center; background-size: contain; }
.staffcast-list .cmt-cont > a{ background: url("../images/common/cmt-btn.webp") no-repeat center center; background-size: contain; }
.staffcast-list .cmt-cont > a:hover{ transform: scale(1.1); }

.cont-modal.comment{ width: 66em;  }
.comment-frame{ position: relative; margin: 0 auto; padding: 2em ; background-color: #FFF; border:#e8dfcd solid .333em; }



/* top-books */
.cont-top-books{ min-height: 178em; position: relative;}
.cont-top-books > .inner{ padding: 0em 0; }
.top-subtitle.books span{ width: calc(947/3000*100em); }
.top-book-title-bdr-l{ width: calc(800/3000*100em); height: 100%; position: absolute; top:0; left:0; background-position: -5em 5em; }
.top-book-title-bdr-r{ width: calc(800/3000*100em); height: 100%; position: absolute; top:0; right:0; background-position: 1em 5em; }


.books-container{ margin: 0 auto; position: relative; }

.books-title{ margin: 0 auto 1em auto; padding: 1em 0; text-align: center; background-color: rgba(22, 36, 128, 0.4); }
.books-title p{ display: inline-block; position: relative; transform: scaleX(1.1); }
.books-title .cat{ font-size: 1em; letter-spacing: .1em; margin: 0 0 .5em 0; }
.books-title .name{ font-size: 2.2em; font-weight: 900; letter-spacing: .1em; margin: 0; }

.books-text{ margin: 0 auto 2em auto; text-align: center; }
.books-text p{ display: inline-block; letter-spacing: .1em; transform: scaleX(1.1); }
.books-text .text{ font-size: 1.1em; line-height: 2; }

.books-ic.nvl{ width: calc(202/3000*100em); margin: 0 auto 2em auto; }
.books-ic.cmc{ width: calc(202/3000*100em); margin: 0 auto 2em auto; }

.books-list{ width: calc(2400/3000*100em); display: flex; flex-wrap: wrap; justify-content: flex-start; margin: 0 auto 2em auto; }
.books-list > div{ width: calc( (1 / 6 * (100% + 1em)) - 1em ); margin-bottom: 1em; margin-right: 1em; text-align: center; }
.books-list > div:nth-of-type(6n){ margin-right: 0;}
.books-list > div .thm{ display: block; margin-bottom: 0; }
.books-list > div .thm:hover{ transform: scale(1.05); }



/* SUB-PAGE */

.sub-page .cont-upper{ }
.sub-page .cont-middle{ min-height: calc(100vh - 41.5em);}
.sub-page .cont-sub-content{ min-height: calc(100vh - 41.5em);}


/* news */
.sub-subtitle.news{ width: calc(571/3000*100em); }
.cont-sub-news{ min-height: 1em; position: relative;}
.cont-sub-news > .inner{ padding: 1.666em 0; }

.sub-news-container{ width: 100%; margin: 0 auto; position: relative; }




/*
■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■      

                     ■                                                     
 ■■    ■■            ■  ■             ■■■                     ■            
 ■■    ■■            ■               ■   ■                                 
 ■■■  ■ ■   ■■■   ■■■■  ■  ■■■      ■     ■  ■   ■   ■■■  ■ ■ ■   ■■■  ■■■ 
 ■ ■  ■ ■  ■  ■  ■■ ■■  ■  ■  ■     ■     ■  ■   ■  ■  ■  ■■  ■  ■  ■  ■   
 ■ ■  ■ ■  ■   ■ ■   ■  ■   ■■■     ■     ■  ■   ■  ■   ■ ■   ■  ■   ■ ■■  
 ■  ■■  ■  ■■■■■ ■   ■  ■ ■■  ■     ■     ■  ■   ■  ■■■■■ ■   ■  ■■■■■   ■■
 ■  ■■  ■  ■     ■■ ■■  ■ ■   ■      ■  ■■   ■  ■■  ■     ■   ■  ■        ■
 ■      ■   ■■■   ■■■■  ■  ■■■■       ■■■■■   ■■ ■   ■■■  ■   ■   ■■■  ■■■ 

■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ 
*/
/* Custom 1920 ----------------------------------------------------------------------------- */
@media (max-width: 1919px) {
}
/* Custom 1400 ----------------------------------------------------------------------------- */
@media (max-width: 1399px) {

}
/* LG ----------------------------------------------------------------------------- */
@media (max-width: 1199px) {

}
/* MD ----------------------------------------------------------------------------- */
@media (max-width: 991px) {
}
/* lt768 ----------------------------------------------------------------------------- */
@media (min-width:768px) {
}
/* SM ----------------------------------------------------------------------------- */
@media (max-width: 767px) {
/* ---- Structure ---- */
html,body{ min-height:100%; position: relative; }
body{ }

/* background */
/* foreground */
.bdy-frame .upper-line,
.bdy-frame .bottom-line{ height: calc(39/3000*100em*0.5); }
.bdy-frame .left-top{ width: calc(64/3000*100em*0.5); height: calc(343/3000*100em*0.5);top:calc(39/3000*100em*0.5); }
.bdy-frame .left-middle{ width: calc(40/3000*100em*0.5); height: calc(100% - 39/3000*100em*2*0.5 - 343/3000*100em*0.5); top:calc(39/3000*100em*0.5 + 343/3000*100em*0.5); }

.top-page .bdy-frame .upper-line{ top:54.1em; }
.top-page .bdy-frame .left-top{ top:calc(39/3000*100em*0.5 + 54.1em); }
.top-page .bdy-frame .left-middle{ height: calc(100% - 39/3000*100em*2*0.5 - 343/3000*100em*0.5 - 54.1em); top:calc(39/3000*100em*0.5 + 343/3000*100em*0.5 + 54.1em);}



/* header */
.cont-global-navi{ display: block; }

.global-logo{ width: 45%; padding: 0; margin: 0; position: absolute; top:1em; left:8em; }
.global-logo > div{ width: 100%; padding: 0; margin: 0; }

.global-navi{ width: 60%; padding:10em 0 3em 0; margin: 0 auto; }
.global-navi{ background: url("../images/navi/bg-line.webp") no-repeat left top; background-size: 0.4em; }
.global-navi > ul{ padding: 0 0 0 .07em;  }
.global-navi > ul > li{ margin: 0 0 0.1em 0; letter-spacing: .15em; }
.global-navi > ul > li::before{ font-size: 1.8em; margin-right: .4em; }
.global-navi > ul > li a{ padding: .75em 0; }
.global-navi > ul > li a .label{ font-size: 1.5em; letter-spacing: .25em;  }

.global-navi > ul > li a:hover{ text-decoration: underline .133em; text-underline-offset: .333em;}
.global-navi > ul > li.gnx{ padding-top: .75em; }
.global-navi > ul > li.gnx a{ width: 1.7em;}

.header-bottom-line{ height: calc(39/3000*100em*0.5); }

.cont-sp-btn{ width: 3em; height: 3em; top:2em; right: 1em; }
.top-page .cont-sp-btn{ top:1em; }

.part-header{ background-color: rgba(0,0,0,0); background-image: none; transition: background-color .2s ease-out 0s; }
.part-header:before{ opacity: 0; transition: opacity .5s ease-out .2s; }
.part-header:before,
.part-header:after{ visibility: hidden; }
.cont-global-navi{ display: none; }

.spmenu-on .cont-global-navi{ display: block; }





/* body */
.sub-page .cont-upper{ padding: 2.5em 0 0 0; height: calc( 220/3000 * 100em );  }

.cont-top-content > .inner{ padding: 0; margin: 0 auto;}
.cont-sub-content > .inner{ padding: 0; margin: 0 auto;}

.sub-logo{ display: none; }

.top-subtitle{  }
.sub-subtitle{  }
.sub-blocktitle{ margin: 0 auto 2em auto; }
.sub-content-container{  }



/* footer */
.part-footer{ min-height:calc( 600/3000 * 100em ); background-size: 120%;  }
.cont-global-footer{ width: 100%; margin: 0 auto; padding: 3em 0; position: relative; }

.footer-pagetop{ bottom:1em; }
.footer-pagetop a{ width: calc( 170/3000 * 100em*0.5 ); height: calc( 172/3000 * 100em*0.5 ); margin: 0 1em 0 auto; }

.cont-footer{ }
.footer-copyrihgt{ margin: 0 auto 2em auto; }
.footer-copyrihgt p{ font-size: .8em; }
.footer-logo{width: 80%; }

.cont-footer-navi{ display: block; flex-wrap: wrap; justify-content: center; align-items: center; margin: 0 auto 3.5em auto; padding-left: 2em; }

.footer-navi-line-upper{ width: 80%; height: 2em; margin-bottom:3.5em; border-width:.05em; }
.footer-navi-line-upper::before{ width: .2em; height: 2em; top:-.05em; left:-.2em; }
.footer-navi-line-bottom{ width: 82%; height: 2em; margin-top:-4em; border-width:.05em; }
.footer-navi-line-bottom::before{ width: 2em; height: .2em; bottom:-.25em; right:-.08em; }
.cont-footer-navi .global-navi{ width: 59.0%; padding:1em 0 .25em 0; margin: 0 auto; }
.cont-footer-navi .global-navi{ background: none; }
.cont-footer-navi .global-navi > ul{ flex-direction: row; padding: 0 0 0 0; margin: 0;  }
.cont-footer-navi .global-navi > ul > li{ width: inherit; padding: 0; margin: 0 .5em 0.1em 0; letter-spacing: .05em; }
.cont-footer-navi .global-navi > ul > li::before{ font-size: 1.3em; margin-right: .1em; }
.cont-footer-navi .global-navi > ul > li a{ display: inline-block; padding: .25em 0; }
.cont-footer-navi .global-navi > ul > li a .label{ font-size: 1.1em; letter-spacing: .15em;  }

.cont-footer-navi .sns-navi{ width: 2.4em; padding-right: 1em; margin:0 auto; }
.cont-footer-navi .sns-navi a{ width: 100%; margin: 0 ; }
.cont-footer-navi .sns-navi a .label-image{ display: block; width:100%; }
.cont-footer-navi .sns-navi a:hover{ transform: scale(1.2); filter: brightness(0) saturate(100%) invert(96%) sepia(11%) saturate(1404%) hue-rotate(338deg) brightness(106%) contrast(94%); }


/* content */
.ptn-bdr1{ background-size: calc(359/3000*100em*0.4); }
.ptn-scr1::before{ width: calc(1059/3000*100em*0.4); height: calc(1409/3000*100em*0.4);  }
.ptn-scr2::before{ width: calc(1408/3000*100em*0.4); height: calc(1507/3000*100em*0.4);  }
.sqr-image-box{ width: 21.25em; height: 21.25em;  }

/* 1 */
.cont-entries{ padding: 0; margin: 0 auto; }
.content-entry{ padding: 0 0 1.666em 0; margin: 0 0 1.4em 0; position: relative; }
.content-entry .entry-cont{ width: 97%; margin: 0 auto 0 .7em;}
.content-entry .entry-title{ width: 87%; margin: -0.5em auto 0 1em; padding: 1em 1.2em; }
.content-entry .entry-title > span{ font-size: 1.2em; font-weight: bold; color: #000; line-height: 1.7; }
.content-entry .entry-title [data-ruby]::before { top: -1.5em;  }
.content-entry .entry-body{ width: 87%; margin: 0.3em auto 0 0.95em; padding: 1.1em; font-size: 1.1em; }
.content-entry .entry-body [data-ruby]::before { top: -1.5em;  }

.content-accordion .acd-head .acd-label::before{ width: 2.333em; height: 2.333em; top:1.4em; }
.content-link .lnk-head > a::before{ width: 2.333em; height: 2.333em;  top:1.4em;  }



.cont-modal.comment{ width: 96%;  }
.comment-container > .inner{ padding: 3em;  }
.comment-image{ margin:0 auto 2em auto; }
.comment-container .text{ font-size: 1.133em; line-height: 2; letter-spacing: .05em; }


/* modaal */
.modaal-overlay{  }
.modaal-inner-wrapper{ padding: 60px 0; }
.image-typ2 .modaal-inner-wrapper{ padding: 60px 0; }
.modaal-close{ right: 2.5em; top: 1.5em; width: 2em; height: 2em;}
.modaal-close:before,.modaal-close:after{ top: .4em; left: 2em; width: .3em; height: 3em; }



/* TOP-PAGE */
/* main */
.cont-top-visual{ width: 100%; position: relative; margin: 0 auto; padding: 5em 0 8em 0; display: block; background-size: 200%; background-position: left 30em; }
.cont-top-visual img{ width: 100%; height: auto; }

.cont-top-visual .kv-container{ width: 100%; height: calc(2600/3000*100em*0.475); margin: 0 auto;z-index: 2; }
.kv-container > div{ position: absolute; top:0; }
.kv-container .grp{ width:100%; margin: 0 auto; position: relative; top:0em; display: none; }
.kv-container .grp.on{ display: block; }
.kv-container .grp > div{ position: absolute; top:0; }
.kv-container .grp .vis-grp{ position: relative; width: 100%; margin: 0 auto; }
.kv-container .grp .vis-grp .bg{ position: relative; }
.kv-container .grp .vis-grp .vis{ position: absolute; top:0; }

.cont-top-visual .left-cont{ width: 100%; min-height: 100%; position: absolute; top:0; z-index: 1; pointer-events: none;}
.cont-top-visual .left-cont{ padding-bottom: 0;}
.yoko .cont-top-visual .left-cont{ padding-bottom: 0;}

.cont-top-visual .left-cont .sticky-cont{ width: 100%; padding: 5em 0 1em 0; position: absolute; top:0; left:0; }
.tate .cont-top-visual .left-cont .sticky-cont{ position: absolute; }
/* if(media(width > 700px): 24px; else: 16px;) */

.cont-top-visual .left-cont .logo{ width: 55%; position: absolute; top:37em; left:0; right:0; margin: 0 auto; }
.cont-top-visual .left-cont .oa{ width: 100%; position: absolute; top:.6em; left:0; }
/* .cont-top-visual .left-cont .catch{ width: 100%; padding: 1.5em 0; position: absolute; top:46em; left:0; right:0; margin: 0 auto; } */
.cont-top-visual .left-cont .catch::before{ height: calc(16/3000*100em*0.5); }
.cont-top-visual .left-cont .catch::after{ height: calc(16/3000*100em*0.5); }
.cont-top-visual .left-cont .catch span{ display: block; width: 80%; position: relative; margin: 0 auto; }

.vis-switch{  position: absolute; top:47em; left:0; right:0; margin: 0 auto; }
.vis-switch{ display: flex; flex-wrap: wrap; flex-direction: row; justify-content: center; }
.vis-switch > div{ width: calc(204/3000*100em*0.7); line-height: 0; margin: 0.75em; }
.vis-switch > div a{ pointer-events: auto; }
.vis-switch > div a img{ position: relative; z-index: 1; }
.vis-switch > div.on a{ pointer-events: none; background-image:url("../assets/top/vis-swt-on.webp") }


.cont-top-visual .left-cont .top-vis-bdr{ width: 100%; height: calc(600/3000*100em);  position: absolute; bottom: 0; left:0; display: none; }
.yoko .cont-top-visual .left-cont .top-vis-bdr{ display: none; }

/* top-movie */



/* top-news */
.cont-top-news{ min-height:32em; }
.cont-top-news > .inner{ width: 100%; padding: 3em 0 2em 0; }
.top-subtitle.news span{ width: calc(1551/3000*100em*0.4); margin-bottom: 1em; }
.top-news-container{ width: 98%; margin: 0 auto 0 .7em; }

.news-headline{ min-height: 20em; padding: 2em 0 2em 0; }
.news-headline a{ width: 100%; display: block; margin-bottom: 0; position: relative;}
.news-headline dl{ font-size: 1.133em; margin: 0; display: block; position: relative;}
.news-headline dl dt{ width: 9em; padding: .5em 0; font-size: 1em; }
.news-headline dl dd{ width: 93%; padding: .8em 1em; font-size: 1em; }




/* top-intro */
.cont-top-intro{ min-height: 52em; position: relative; z-index: 3; }
.cont-top-intro > .inner{ padding: 0 0 1em 0; }
.top-subtitle.intro span{ width: calc(2002/3000*100em*0.4); margin-bottom: 1em; }
.top-intro-title-bdr-l{ width: calc(530/3000*100em*0.4); height: calc(530/3000*100em*0.4); position: absolute; top:33em; left:1.5em; background-position: -5em 0; }
.top-intro-title-bdr-r{ width: calc(530/3000*100em*0.4); height: calc(530/3000*100em*0.4); position: absolute; top:10em; right:1.5em; background-position: 12em 0; }

.intro-text{ padding-bottom: 3em; }
.intro-text p{ font-size: 1.0em; letter-spacing: .05em; }
.intro-text p.mkw{ font-size: 1.133em; }
.intro-text p [data-ruby]::before { top: -1.5em;  }
.intro-text .text-btm{ width: calc(889/3000*100em*0.4); height: calc(434/3000*100em*0.4); bottom:3em; right: 1em;}



/* top-story */
.cont-top-story{ min-height: 49em; position: relative; z-index: 3; }
.cont-top-story > .inner{ padding: 0 0 1em 0; }
.top-subtitle.story span{ width: calc(1031/3000*100em*0.4); margin-bottom: 1em; }
.top-story-title-bdr-l{ width: calc(530/3000*100em*0.4); height: calc(530/3000*100em*0.4); position: absolute; top:23em; left:1.5em; background-position: -5em 0; }
.top-story-title-bdr-r{ width: calc(430/3000*100em*0.4); height: calc(430/3000*100em*0.4); position: absolute; top:1.5em; right:1.5em; background-position: 12em 0; }
.top-story-title-bdr-r2{ width: calc(530/3000*100em*0.4); height: calc(530/3000*100em*0.4); position: absolute; top:35em; right:1.5em; background-position: 12em 0; }

.story-container{  position: relative;  }
.story-text{ padding-bottom: 1em; text-align: center; margin: 0 auto; position: relative; z-index: 3; }
.story-text p{ font-size: 1.0em; color: #e5e4d5; font-weight: bold; line-height: 2.4; letter-spacing: .15em; margin-bottom: 1.2em; position: relative;  }
.story-text p [data-ruby]::before { top: -1.5em;  }
.story-text p span{ display: inline-block; transform: scaleX(1.1);  }


/* top-staffcast */
.cont-top-staffcast{ min-height: 49em; position: relative; }
.cont-top-staffcast > .inner{ padding: 0; }

.staffcast-container{ position: relative;  margin:0 auto 3em auto; }
.top-subtitle.cast span{ width: calc(1022/3000*100em*0.4); margin-bottom: 0em; }
.top-subtitle.staff span{ width: calc(932/3000*100em*0.4); margin-bottom: 0em; }
.top-cast-title-bdr-l{ width: calc(800/3000*100em*0.25); height: 3.4em; background-position: -5em 0; }
.top-cast-title-bdr-r{ width: calc(800/3000*100em*0.25); height: 3.4em; background-position: 1em 0; }
.top-staff-title-bdr-l{ width: calc(800/3000*100em*0.25); height: 3.4em; background-position: -5em 0; }
.top-staff-title-bdr-r{ width: calc(800/3000*100em*0.25); height: 3.4em; background-position: 1em 0; }

.staffcast-list{ width: 98%; margin: 0 auto 0 .7em; }
.staffcast-list .list-item{ padding: .5em 0; }
.staffcast-list .sep-l{ height: 3em;  }
.staffcast-list .pos{ width: 40%; text-align: right; font-size: .9em; letter-spacing: .05em; line-height: 1; }
.staffcast-list .pos > span{ display: inline-block; position: relative; transform: scaleX(1.1); }
.staffcast-list .name{ width: 40%; font-size: 1.133em; letter-spacing: .05em; line-height: 1.3; }
.staffcast-list .name > span{ display: inline-block; position: relative; transform: scaleX(1.1); }
.staffcast-list .cmt-cont{ width: 10%;  }
.staffcast-list .cmt-cont > span,
.staffcast-list .cmt-cont > a{ width: calc(74/3000*100em*0.6); height: calc(75/3000*100em*0.6);}

.cont-modal.comment{ width: 66em;  }
.comment-frame{ position: relative; margin: 0 auto; padding: 2em ; background-color: #FFF; border:#e8dfcd solid .333em; }



/* top-books */
.top-subtitle.books span{ width: calc(947/3000*100em*0.4); }
.top-book-title-bdr-l{ width: calc(800/3000*100em*0.25); height: 100%; position: absolute; top:0; left:0; background-position: -5em 0; }
.top-book-title-bdr-r{ width: calc(800/3000*100em*0.25); height: 100%; position: absolute; top:0; right:0; background-position: 1em 0; }
.cont-top-books{ min-height: 192em; position: relative;}
.cont-top-books > .inner{ padding: 0em 0; }

.books-container{ margin: 0 auto; position: relative; }

.books-title{ margin: 0 auto 1em auto; padding: 1em 0; }
.books-title .cat{ font-size: 1em; letter-spacing: .1em; margin: 0 0 .5em 0; }
.books-title .name{ font-size: 1.6em; font-weight: 900; letter-spacing: .1em; margin: 0; }

.books-text{ margin: 0 auto 2em auto; }
.books-text .text{ font-size: 1.0em; }

.books-ic.nvl{ width: calc(202/3000*100em*0.8); }
.books-ic.cmc{ width: calc(202/3000*100em*0.8);}

.books-list{ width: 90%; margin: 0 auto 2em auto; }
.books-list > div{ width: calc( (1 / 3 * (100% + 1em)) - 1em );}
.books-list > div:nth-of-type(6n){ margin-right: 1em;}
.books-list > div:nth-of-type(3n){ margin-right: 0;}



/* SUB-PAGE */

.sub-page .cont-upper{ }
.sub-page .cont-middle{ min-height: calc(100vh - 33em);}
.sub-page .cont-sub-content{ min-height: calc(100vh - 33em);}

/* news */
.sub-subtitle.news{ width: calc(571/3000*100em*0.5); }
.cont-sub-news{ min-height: 1em; }
.cont-sub-news > .inner{ padding: 1.666em 0 }

.sub-news-container{ }

/* SM ----------------------------------------------------------------------------- */
@media (orientation: portrait) and (max-width: 767px) {

}
/* XS ----------------------------------------------------------------------------- */
@media (max-width: 543px) {

}
/* pc - large ----------------------------------------------------------------------------- */
@media (min-width: 768px) {

}
/* pc - xlarge ----------------------------------------------------------------------------- */
@media (min-width: 1200px) {

}

