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

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

■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ ■■■ 
*/
/* ---- Structure ---- */
html,body{ min-height:100%; position: relative; }
body{ color: #15182e; background:#f7f7f6 url("../images/common/background.webp") repeat-y center top; background-size: 100%; }
body{ font-family: YakuHanMPs, "Noto Serif JP", serif; }
.fnt-bsc{font-family: YakuHanMPs, "Noto Serif JP", serif;}
.fnt-bsc.noyh{font-family: "Noto Serif JP", serif;}
.fnt-dsp1{  }
.fnt-ac0{ color:#15182e; }
.fnt-ac1{ color:#a47f39; }

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: 500; }
.part-body{ position: relative; }
.part-footer{ position: relative; }

/* lazyestload */
img { transition: filter 0.3s;}
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; }

/* header */
.part-header{ width: 100%; height: 100vh; position: fixed; top:0; left:0; background: rgba(255, 255, 255, 1);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") no-repeat center top; background-size: cover; }
.cont-global-logo{ width: calc(700/3000*100em); padding: 3em 0 2em 0; margin: 0 auto; z-index: 2; }

.cont-global-navi{ position: relative; padding: 0; margin: 0 auto; z-index: 2; }
.global-navi{ width: 100%; padding:1em 1em; margin: 0 auto; position: relative; pointer-events: auto; text-align: center; }
.global-navi > ul{ display: flex; flex-wrap: wrap; justify-content: center; align-items: center; list-style-type: none; padding: 0; margin: 0; position: relative; }
.global-navi > ul > li{ width: 100%; display: block; padding: 0; margin: 0 0 0.1em 0; letter-spacing: .15em; position: relative; }
.global-navi > ul > li a{ color: #15182e; text-decoration: none; position: relative; display: inline-block; padding: .5em 0; }
.global-navi > ul > li a .label{ font-size: 1.7em; letter-spacing: .25em;  }
.global-navi > ul > li a:hover{ color: #a47f39; text-decoration: none;}
.global-navi > ul > li.gnx{ padding-top: 1em; }
.global-navi > ul > li.gnx a{ width: 2.0em; margin: 0 auto; }
.global-navi > ul > li.gnx a .label-image{ display: block; width:100%; }
.global-navi > ul > li.gnx a:hover{ transform: scale(1.1); }
.global-navi > ul > li.crt a{ opacity: 1; pointer-events: none; color: #a47f39; }
.global-navi > ul > li.cs a{ opacity: 1; pointer-events: none; color: #CCC; }
.global-navi > ul > li a.hdn{ display: none; }

.cont-sp-btn{ display: block; width: 4.7em; height: 4.7em; position: absolute; top:2em; right: 2em; 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(255,255,255,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,
.cont-global-logo{ 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(255, 255, 255, 1); pointer-events: auto; }
.spmenu-on .part-header:before{ opacity: .5; }
.spmenu-on .part-header:before,
.spmenu-on .part-header:after{ visibility: visible; }
.spmenu-on .cont-global-navi,
.spmenu-on .cont-global-logo{ display: block; }


/* 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; }
.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;}

.top-subtitle{ font-size: 1em; margin: 0 auto; z-index: 2; 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-logo{ width: calc(1100/3000*100em); margin: 0 auto; padding: 3em 0 3em 0; }
.sub-content-container{  }


/* footer */
.part-footer{ position: relative; background: rgba(255, 255, 255, 0.5) url("../images/common/footer-border.webp") no-repeat center top; background-size: auto 4em; }
.cont-global-footer{ width: 100%; margin: 0 auto; padding: 3em 0; position: relative; }
.footer-pagetop{ width: calc( 198/3000 * 100em ); height: calc( 198/3000 * 100em ); position: fixed; bottom:2em; right: 2em; z-index: 10; margin: 0 auto; }
.footer-pagetop a{ display: block; position: relative; width: 100%; min-height: 100%; background:url("../images/navi/pagetop.webp") 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 p{ color: #333; font-size: .9em; margin: 0; }

.footer-logo{width: calc(443/3000*100em); margin: 0 auto 2em auto; padding: .5em;}


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

.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; }

.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; padding-bottom: 3em; }
.content-entry{ padding: 0; margin: 0; position: relative; background-color: rgba(255, 255, 255, 0.5); }
.content-entry:nth-child(even){ background-color: rgba(164, 127, 57, 0.1);}
.content-entry .entry-head{ width: calc(2000/3000*100em); height: 100%; min-height: 7.333em; margin: 0 auto; position: relative; padding: 0; }
.content-entry .entry-date{ width: 8.5em; padding: 0; font-size: 1em; margin: 0; padding-left: 1em; text-align: left; pointer-events: none; position: relative;/*position: absolute; top:2.8em; left:9em;*/ }
.content-entry .entry-date:after{ content:"−"; position: absolute; top:0; right: 0; }
.content-entry .entry-date > span{ color: #15182e; line-height: 1; letter-spacing: .1em; margin-bottom: 0;}

.content-entry .entry-title{ width: 50em; padding: 0 0 0 1em; margin: 0; position: relative; text-align: left; position: relative;  }
.content-entry .entry-title > span{ color: #15182e;  font-size: 1.333em; line-height: 1.7; }
.content-entry .entry-title [data-ruby]::before { top: -1.5em;  }
.content-entry .entry-body{ padding: 2em 18%; font-size: 1.1em; color: #15182e; letter-spacing: .05em; line-height: 1.9; position: relative; border-top:#b4aea2 solid 1px; }
.content-entry .entry-body [data-ruby]::before { top: -1.5em;  }

.content-accordion .acd-check{ display: none;}
.content-accordion .acd-head .acd-label{ display: flex; flex-wrap: nowrap; align-items: center; margin-bottom: 0; }
.content-accordion .acd-head{ position: relative; }
.content-accordion .acd-head .acd-label::before{ content:""; display: block; padding: 0; width: 7.333em; height: 7.333em; margin-bottom: 0; text-align: center; line-height: 1; background: url("../images/common/news-open.webp") no-repeat left top; background-size: 7.333em; position: relative;  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: 7.333em; height: 7.333em; margin-bottom: 0; text-align: center; line-height: 1; background: url("../images/common/news-link.webp") no-repeat left top; background-size: 7.333em; position: relative; pointer-events: none;}
.content-link .lnk-head > a{ display: flex; flex-wrap: nowrap; align-items: center; text-decoration: none; color: #FFF; }

.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;  }
.comment-title{ width: calc(304/3000*100em); margin: 0; position: absolute; top:-3em; right:-3em; z-index: 3; }
.comment-container > .inner{ padding: 3em;  }
.comment-image{ margin:-5em -6.5em 3em 2em; }
.comment-container .text{ font-size: 1.2em; line-height: 2; letter-spacing: .05em; }


/* 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; overflow: hidden; }
.cont-top-visual img{ width: 100%; height: auto; }
.cont-top-visual .kv-container{ width:100%; min-height: 106em; position: relative; margin: 0 auto; }
.kv-container > div{ position: absolute; top:0; }
.kv-container .grp{ width: calc(2400/3000*100%); margin: 0 auto; position: relative; top:19.4em; 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; }

.kv-container .logo{ width: calc(1733/3000*100em); position: absolute; top:3em; left:0; right: 0; margin: 0 auto; }
.kv-container .oa{ width: calc(882/3000*100em); position: absolute; top:19em; left:0; right: 0; margin: 0 auto; }


.kv-container .grp .vis-grp{ transform: scale(1.25); opacity: 0; transform-origin: center bottom; }
.kv-container .logo{ opacity: 0; transform: translateY(-10%); }
.kv-container .oa{ opacity: 0; }

.s0 .kv-container .grp .vis-grp{ transform: scale(1.2); opacity: 1; transition: all .75s ease .0s; }
.s1 .kv-container .grp .vis-grp{ transform: scale(1.0) translate(0,0); opacity: 1; transition: all 1.5s ease .75s; }
.s2 .kv-container .logo{ opacity: 1; transform: translateY(0%); transition: opacity .75s ease-out 0s, transform .5s ease-out 0s; }
.s3 .kv-container .oa{ opacity: 1; transition: opacity .75s ease-out .5s, transform 0s ease-out 0s; }

.s5 .cont-top-twitter{ display: block; }
.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: 51em; padding: 5em 0; background-color: rgba(164, 127, 57, 0.1); }
.cont-top-movie > .inner{ padding: 1em 0; }

.top-movie-list{ width: calc(2000/3000*100em); /*width: 100%;*/ position: relative; margin: 0 auto; }
.top-movie-list .thm{ width: 100%; max-width: 1920px; position: relative; text-align: center; line-height: 0; padding: 0; border: #a47f39 solid 1px; }
.top-movie-list .thm > a{ display: inline-block; pointer-events: auto; overflow: hidden; line-height: 0; position: relative; }
.top-movie-list .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(190/3000*100em); transform-origin: center center; pointer-events: none; top:0; left: 0; right: 0; margin: 0 auto; opacity: 1; }
.top-movie-list .thm > a:hover::after{ background-size: calc(190/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: #fff;}



/* top-news */
.cont-top-news{ min-height:34em; background-color: rgba(255, 255, 255, 0.5); }
.cont-top-news > .inner{ width: 100%; margin: 0 auto; padding: 3em 0 0 0; }
.top-subtitle.news{ width: calc(755/3000*100em); margin-bottom: 4em; }
.top-news-container{ width: calc(1600/3000*100em); margin: 0 auto; position: relative;  }

.news-headline{ min-height: 20em; padding: 2em; }
.news-headline a{ width: 100%; display: inline-block; margin-bottom: 2em;}
.news-headline dl{ font-size: 1.133em; display: flex; flex-wrap: wrap; }
.news-headline dl:last-child{ margin: 0;}
.news-headline dl dt{ width: 20%; display: block; position: relative; margin: 0; padding: 0; font-size: 1em; font-weight: normal; line-height: 1.5; letter-spacing: 0.1em; }
.news-headline dl dt::after{ content:""; width: .6em; height: 1px; background-color: #000; position: absolute; top:.65em; left:7.0em; }
.news-headline dl dd{ width: 80%; display: block; position: relative; margin: 0; padding: 0; font-size: 1.0em; line-height: 1.5; letter-spacing: 0.1em;  }
.news-headline a,
.news-headline a:visited{ text-decoration: none; color: #000; }
.news-headline a:hover{ color:#ed3657; }






/* top-intro */
.cont-top-intro{ min-height: 67em; position: relative; z-index: 3; }
.cont-top-intro > .inner{ width: 100%; margin: 0 auto; padding: 3em 0; }
.top-subtitle.intro{ width: calc(1455/3000*100em); margin-bottom: 4em; }
.top-intro-container{ width: calc(2000/3000*100em); margin: 0 auto; position: relative;  }

.intro-text{ text-align: center; margin: 0 auto; position: relative; z-index: 3; }
.intro-text p{ font-size: 1.333em; line-height: 2.6; letter-spacing: .15em; margin-bottom: 1.9em; }
.intro-text p.mkw{ font-style: italic; font-weight: bold; font-size: 1.4em; }
.intro-text p [data-ruby]::before { top: -1.5em;  }



/* top-staffcast */
.cont-top-staffcast{ min-height: 30em; position: relative; background-color: rgba(255, 255, 255, 0.5); }
.cont-top-staffcast > .inner{ width: 100%; margin: 0 auto; padding: 3em 0 0 0; }
.top-subtitle.staff{ width: calc(755/3000*100em); margin-bottom: 4em; }
.staffcast-container{ width: calc(2000/3000*100em); margin: 0 auto; position: relative;  }

.staffcast-list{ width: 70%; margin:0 auto 3em auto;  text-align: center; display: flex; flex-wrap: wrap; justify-content: center; position: relative; z-index: 3; }
.staffcast-list > div{ width: 25%; margin-bottom: 3em; position: relative; }
.staffcast-list.cs > div{ width: 25%;  }
.staffcast-list > div.sep{ width: 100%; height: 1px; margin-bottom: 0; }
.staffcast-list > div.nmgb{ margin-bottom: .5em; }
.staffcast-list > div.full{ width: 100%; }
.staffcast-list > div.p60{ width: 60%; }
.staffcast-list > div.p50{ width: 50%; }
.staffcast-list > div.p40{ width: 40%; }
.staffcast-list > div.p33{ width: 30%; }
.staffcast-list > div.p30{ width: 30%; }
.staffcast-list > div.p25{ width: 25%; }
.staffcast-list > div.p20{ width: 20%; }
.staffcast-list > div > div{ margin-bottom: 3em; position: relative; }
.staffcast-list .pos{ display: block; font-size: 1.2em; letter-spacing: .1em;  margin-bottom: .5em; line-height: 1; }
.staffcast-list .name{ display: block; font-size: 1.6em; letter-spacing: .1em; margin-bottom: 0; line-height: 1.3; }
.staffcast-list .exname{ display: block; font-size: 1em; letter-spacing: .1em; padding-top: .5em; margin-bottom: 0; line-height: 1.2; }
.staffcast-list .comment{ display: inline-block; width: 2.4em; position: absolute; top:-0.1em; left:calc(50% + 2.0em); text-decoration: none; pointer-events: auto; transition: all .25s ease-out 0s; }
.staffcast-list .comment .cmt{ display: block; position: relative;}
.staffcast-list .comment .cmt:hover{transform: scale(1.1); text-decoration: none; cursor: pointer; }
.staffcast-list .comment.ch2{ left:calc(50% + 1.5em); }
.staffcast-list .comment.ch4{ left:calc(50% + 2.5em); }
.staffcast-list .comment.ch5{ left:calc(50% + 3.0em); }
.staffcast-list .comment.ch6{ left:calc(50% + 3.5em); }
.staffcast-list .comment.ch7{ left:calc(50% + 4em); }
.staffcast-list .comment.ch8{ left:calc(50% + 4.5em); }
.staffcast-list .comment.ch9{ left:calc(50% + 5em); }
.staffcast-list .comment.ch10{ left:calc(50% + 5.5em); }
.staffcast-list .comment.ch11{ left:calc(50% + 6em); }
.staffcast-list .comment.ch12{ left:calc(50% + 6.5em); }
.staffcast-list .comment.ch13{ left:calc(50% + 7em); }
.staffcast-list .comment.ch14{ left:calc(50% + 7.5em); }

.cont-modal.comment{ width: 66em;  }
.comment-frame{ position: relative; margin: 0 auto; padding: 3em ; border-radius: 3em; background: url("../images/common/ptn-w1.webp") repeat center top; background-size: calc(58/3000*100em); }



/* top-books */
.cont-top-books{ min-height: 66em; position: relative;}
.cont-top-books > .inner{ padding: 3em 0; }
.top-subtitle.books{ width: calc(755/3000*100em); margin-bottom: 4em; }
.books-container{ width: calc(2400/3000*100em); margin: 0 auto; position: relative; }

.books-text{ margin: 0 auto 3em auto; text-align: center; }
.books-text > p{ letter-spacing: .1em;  }

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

.books-link{ display: flex; flex-wrap: wrap; justify-content: center; margin: 0 auto 2em auto; }
.books-link > div{ width: calc(580/3000*100em); margin: 0 2em; text-align: center; }
.books-link a{ display: inline-block; }
.books-link a:hover{ transform: scale(1.05); }



/* SUB-PAGE */

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


/* news */
.cont-sub-news{ min-height: 1em; position: relative;}
.cont-sub-news > .inner{ padding: 3em 0; }
.sub-subtitle.news{ width: calc(755/3000*100em); margin-bottom: 4em; }
.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 */

/* header */
.part-header{}
.cont-global-logo{ width: calc(600/3000*100em*0.55); padding: 2em 0 0 0;  }
.cont-global-navi{ }
.global-navi{ padding:1em 1em; }
.global-navi > ul > li{ margin: 0 0 0em 0; letter-spacing: .15em;}
.global-navi > ul > li a{ padding: .75em 0; }
.global-navi > ul > li a:before{ width: 3em; height: .18em; bottom:.6em; }
.global-navi > ul > li a .label{ font-size: 1.5em; letter-spacing: .2em; }

.global-navi > ul > li.gnx{ padding-top: 1em; }
.global-navi > ul > li.gnx a{ width: 2.0em; }

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



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

.top-subtitle{  }
.sub-subtitle{  }
.sub-blocktitle{ margin: 0 auto 2em auto; }
.sub-content-container{  }
.sub-logo{ width: calc(1100/3000*100em*0.4); margin: 0 auto; padding: 2em 0 2em 0; }


/* footer */
.part-footer{ position: relative; }
.cont-global-footer{ padding: 2em 0 2em 0; }
.footer-pagetop{ width: calc( 198/3000 * 100em * 0.6 ); height: calc( 198/3000 * 100em * 0.6 ); bottom:2em; right: 1em; }

.footer-copyrihgt p{  font-size: .6em; }
.footer-logo{width: calc(443/3000*100em*0.7); margin: 0 auto 1.5em auto; padding: .5em;}


/* content */
.sqr-image-box{ width: 21.25em; height: 21.25em;  }

/* 1 */
.cont-entries{ padding: 0; margin: 0 auto; padding-bottom: 3em; }

.content-entry .entry-head{ width: 100%; height: 100%; min-height: 4em; margin: 0 auto; position: relative; padding: 0 0 0 4em; }
.content-entry .entry-date{ width: inherit; padding: 0; font-size: 1em; margin: 0; padding: .25em 0 0 1em; text-align: left; pointer-events: none; position: relative;/*position: absolute; top:2.8em; left:9em;*/ }
.content-entry .entry-date:after{ display: none; }

.content-entry .entry-title{ width: inherit; padding: 0 0 0 1em; }
.content-entry .entry-title > span{ font-size: 1.2em; }
.content-entry .entry-title [data-ruby]::before { top: -1.5em;  }
.content-entry .entry-body{  font-size: 1em; padding: 1em 5% 1em 5% ;}
.content-entry .entry-body [data-ruby]::before { top: -1.5em;  }


.content-accordion .acd-check{ display: none;}
.content-accordion .acd-head .acd-label{ display: flex; flex-wrap: nowrap; align-items: stretch; flex-direction: column; }
.content-accordion .acd-head{ position: relative; }
.content-accordion .acd-head .acd-label::before{ width: 4em; height: 4em; background-size: 4em; position: absolute; top:0; left:0; }

.content-link .lnk-head{ position: relative; }
.content-link .lnk-head > a::before{ width: 4em; height: 4em; background-size: 4em; position: absolute; top:0; left:0; }
.content-link .lnk-head > a{ display: flex; flex-wrap: nowrap; align-items: stretch; flex-direction: column; }

.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{ }
.content-single{ }
.content-single .entry-head{  padding: 1.0em; }
.content-single .entry-title{ padding:1em ; border-width: 2px; border-radius: .5em; }
.content-single .entry-title > span{ font-size: 1.2em; }
.content-single .entry-body{ padding: 0 1.25em 1.25em 1.25em; font-size: 1.1em; }


.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{ padding: 0; }
.cont-top-visual .kv-container{ min-height: 52em; }
.kv-container > div{ position: absolute; top:0; }
.kv-container .grp{ width: 105%; margin: 0 auto; position: relative; top:18em; left:inherit; right:-1em; display: none; }

.kv-container .logo{ width: 80%; position: absolute; top:5.5em; left:0; right: 0; margin: 0 auto; }
.kv-container .oa{ width: 60%; position: absolute; top:12em; left:0; right: 0; margin: 0 auto; }

.kv-container .grp .vis-grp{ transform: scale(1.45) translateX(10%); opacity: 0; transform-origin: center bottom; }
.kv-container .logo{ opacity: 0; transform: translateY(-10%); }
.kv-container .oa{ opacity: 0; }

.s0 .kv-container .grp .vis-grp{ transform: scale(1.4) translateX(10%); opacity: 1; transition: all .75s ease .0s; }
.s1 .kv-container .grp .vis-grp{ transform: scale(1.0)  translateX(0%); opacity: 1; transition: all 1.5s ease .75s; }



/* top-movie */
.cont-top-movie{ min-height: 20em; padding: 1.5em 0; }
.cont-top-movie > .inner{ padding: 1em 0; }

.top-movie-list{ width: 25em; }
.top-movie-list .thm > a::after{ background-size: calc(190/3000*100em*0.5); }
.top-movie-list .thm > a:hover::after{ background-size: calc(190/3000*100em*1.1*0.5); }



/* top-news */
.cont-top-news{ min-height:30em;  }
.cont-top-news > .inner{ padding: 3em 0 0 0; }
.top-subtitle.news{ width: calc(755/3000*100em*0.5); margin-bottom: 2em; }
.top-news-container{ width: 80%; margin: 0 auto; position: relative;  }

.news-headline{ min-height: 20em; padding: 0; }
.news-headline a{ margin-bottom: 1.5em;}
.news-headline dl{ font-size: 1.0em; }
.news-headline dl dt{ width: 100%; }
.news-headline dl dt::after{ display: none; }
.news-headline dl dd{ width: 100%; }



/* top-intro */
.cont-top-intro{ min-height: 68em; }
.cont-top-intro > .inner{ padding: 3em 0 0 0; }
.top-subtitle.intro{ width: calc(1455/3000*100em*0.5); margin-bottom: 2em; }
.top-intro-container{ width: 90%; }

.intro-text p{ font-size: 1.133em;  }



/* top-staffcast */
.cont-top-staffcast{ min-height: 27em; }
.cont-top-staffcast > .inner{  padding: 3em 0 0 0; }
.top-subtitle.staff{ width: calc(755/3000*100em*0.5); margin-bottom: 4em; }
.staffcast-container{ width: 90%;  }

.staffcast-list > div.p20{ width: 30%; }
.staffcast-list .pos{ font-size: 1.0em;  }
.staffcast-list .name{ font-size: 1.2em; }
.staffcast-list .exname{ font-size: 0.9em;  }



/* top-books */
.cont-top-books{ min-height: 55em; position: relative;}
.cont-top-books > .inner{ padding: 2em 0 0 0; }
.top-subtitle.books{ width: calc(755/3000*100em*0.5); margin-bottom: 2em; }
.books-container{ width: 90%; margin: 0 auto; position: relative; }

.books-list > div{ width: calc( (1 / 3 * (100% + 1em)) - 1em ); margin-bottom: 1em; margin-right: 1em; text-align: center; }
.books-list > div:nth-of-type(5n){ margin-right: 1em;}
.books-list > div:nth-of-type(3n){ margin-right: 0;}

.books-link{ display: flex; flex-wrap: wrap; justify-content: center; margin: 0 auto 2em auto; }
.books-link > div{ width: 11em; margin: 0 .5em; text-align: center; }




/* SUB-PAGE */

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

/* news */
.cont-sub-news{ min-height: 1em; }
.cont-sub-news > .inner{ padding: 3em 0 0 0; }
.sub-subtitle.news{ width: calc(755/3000*100em*0.5); margin-bottom: 3em; }
.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) {

}

