\*------------------------------------*/

h1, h2, h3, h4, h5, h6
{
    font-family: 'Roboto Slab', serif;
}
a {
    color: #00c002;
    text-decoration: none;
}
h1, h2, h3, h4, h5, h6
{
    margin-bottom: 1.1em;
}

.features,
.blog,
.gallery,
.clients,
.prefooter .container-fluid
{
    padding-top: 3.3em;
    padding-bottom: 4.2em;
}

span.typcn::before, i.typcn::before
{
    font-size: 2em;
}

span.x2:before, i.x2:before
{
    font-size: 3.4em;
}

span.x3:before, i.x3:before
{
    font-size: 4.4em;
}

span.x4:before, i.x4:before
{
    font-size: 6em;
}


/*------------------------------------*\
    HEADER
\*------------------------------------*/

header .container-fluid
{
    background-image: url('images/mainvisual.png');
    background-repeat: no-repeat;
    background-size: cover;
}

.hamburger
{
    font-size: 2.3em;
    color: #000;
}

.hamburger:hover
{
  color: #FFF;
  cursor: pointer;
}


.logo
{
    background: none;
    border: 0px;
}

.jumbotron
{
    background: none;
    text-align: center;
}

.jumbotron h1,
.jumbotron h2,
.jumbotron h3,
.jumbotron h4,
.jumbotron h5,
.jumbotron h6,
.jumbotron small
{
    color: #FFFFFF;
}

.jumbotron p
{
    color: #FFFFFF;
    margin-bottom: 5%;
}


/*------------------------------------*\
    SECTIONS
\*------------------------------------*/

.number .container-fluid
{
    background-image: url('https://unsplash.it/3000/2000?image=685');
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
}

.opaline
{
    padding-top: 3em;
    padding-bottom: 3em;
    background-color: rgba(128, 215, 247, 0.660);
}

.opaline h1,
.opaline h2,
.opaline h3,
.opaline h4,
.opaline h5,
.opaline h6,
.opaline p
{
    color: #FFFFFF;
}

.opaline .boxes
{
    margin-top: 30px;
    padding-top: 20px;
    padding-bottom: 5px;
    border: 1px solid #FFF;
}

.boxes .odometer.odometer-theme-default
{
  font-family: 'Roboto Slab', serif;
}

.story .container-fluid
{
    background-image: url('https://unsplash.it/3000/2000?image=531');
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
}

.gallery
{
    background-color: #dddddd;
}

.prefooter .container-fluid
{
    background: linear-gradient(
      rgba(33, 37, 43, 0.6),
      rgba(33, 37, 43, 0.6)
    ),

    url(https://unsplash.it/4000/3000?image=528);
}

.prefooter h1,
.prefooter h2,
.prefooter h3,
.prefooter h4,
.prefooter h5,
.prefooter h6,
.prefooter p
{
    color: #FFFFFF;
}

/*------------------------------------*\
    FOOTER
\*------------------------------------*/

footer
{
    background-color: rgb(255 215 0);
    padding-top: 2em;
    padding-bottom: 1.2em;
}

footer h1,
footer h2,
footer h3,
footer h4,
footer h5,
footer h6,
footer p
{
    color: #12891c;
}

.social
{
    padding-top: 50px;
}

/*Ã£Æ’ËœÃ£Æ’Æ’Ã£Æ’â‚¬Ã£Æ’Â¼Ã¥â€ºÂºÃ¥Â®Å¡*/
header#home .col-md-3 {
    width: 560px;
}

header#home .row {
    position: fixed;
    left: 0;
    padding: 0 40px;
    z-index: 9999;
}
header#home .col-md-1 {
    display: inline-block;
    width: auto;
    margin-left: 0;
    float: inherit;
    position: fixed;
    right: 0;
    top: 0;
    background: #12891b;
    z-index: 999;
}
header#home .container {
    width: auto;
    padding: 0;
}
header#home span.hamburger {
    font-size: 100px;
    color: white;
}

header#home .col-md-1 .menu-btn {
    line-height: initial;
}
header .container-fluid {
    padding-top: 0;
    height: 490px;
    position: relative;
    background-attachment: fixed;
    background-color: #e8e8e8;
}

/*Ã£Æ’Â¡Ã£â€šÂ¤Ã£Æ’Â³Ã£Æ’â€œÃ£â€šÂ¸Ã£Æ’Â¥Ã£â€šÂ¢Ã£Æ’Â«*/
header .container .jumbotron {
    text-align: left;
    padding: 0;
    margin-bottom: 0;
    position: absolute;
    bottom: 0;
    left: 100px;
}

header .container .jumbotron p {
    font-size: 30px;
    font-family: "Sawarabi Mincho";
    letter-spacing: 0.1em;
    color: rgb(255 255 255 / 86%);
    font-weight: 500;
    height: 130px;
 
}
p.fadein.inview {
    display: block;
}
/*Ã¦Å“â‚¬Ã¥Ë†ÂÃ£ÂÂµÃ£â€šâ€œÃ£â€šÂÃ£â€šÅ Ã¨Â¡Â¨Ã§Â¤Âº*/
header#home {
 display:none;
 height: auto !important;
 overflow: hidden;
}

/*Ã£â€šÂ¿Ã£â€šÂ¤Ã£Æ’Ë†Ã£Æ’Â«*/
.catch-intro {
    margin-bottom: 30px;
    font-weight: bold;
    font-size: 1.8em;
    text-align: left;
    line-height: 1.8em;
    /* font-family: 'Zen Kurenaido', sans-serif; */
    /* -webkit-text-stroke: 1px #000; */
    text-stroke: 1px #000;
}

/*Ã¥â€¦Â±Ã©â‚¬Å¡Ã£â€šÂ³Ã£Æ’Â¼Ã£Æ’â€°*/
.absolete {
    position: absolute;
}
.wrap {width: 1000px;margin: auto;}

.center {
    text-align: center;
}
.fadein_4000 {
    display: none;
}

/*h2*/
h2 {text-align: center;/* font: 2em/2em 'Kosugi Maru', sans-serif; */line-height: 1.2em;font-size: 50px;color: #646464;font-weight: bold;font-family: 'Gloock', serif;letter-spacing: 0.05em;}

h2 span.txt-s {
    font-size: 0.4em;
    letter-spacing: 1.1em;
}






/*pushy*/
  body .pushy {
  background: none !important;
  box-shadow: none !important;
  width: 32vw !important;
  display: flex;
  align-items: end;
}

.pushy a {
    border: none !important;
    line-height: 1.2em;
    color: white !important;
    padding-left: 3vw !important;
}

  .pushy a:hover {
    background: #ffe000;
    color: #000 !important;
}

.pushy-active .site-overlay {
    background-color: rgb(0 0 0 / 35%);
    mix-blend-mode: multiply;
}
/*pushy*/


section.banana_bg:after {
    content: "";
    position: absolute;
    z-index: 2;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    background-color: white;
    opacity: 0.7;
}


/*news*/
section.banana_bg {
    padding: 60px 0;
    /* margin-bottom: 60px; */
    background-image: url(images/banana_kusa01.png),url(images/banana_kusa02.png);
    background-position: -114px 370px,right top;
    background-size: 460px;
    background-repeat: no-repeat;
    background-attachment: fixed;
    position: relative;
    z-index: 1;
}

section.news:after {
    content: "";
    position: absolute;
    z-index: 2;
    width: 100%;
    height:100%;
    top: 0;
    left: 0;
    background-color: white;
    opacity: 0.7;
}

section.news .wrap {
    position: relative;
    z-index: 3;
}
section.news .twitter {
    padding-bottom: 60px;
}
section.news {
    padding: 60px 0;
    /* margin-bottom: 60px; */
    background-image: url(images/banana_kusa01.png),url(images/banana_kusa02.png);
    background-position: -114px 370px,right top;
    background-size: 460px;
    background-repeat: no-repeat;
    background-attachment: fixed;
    position: relative;
    z-index: 1;
}

section.news ul.review {text-align: left;}

section.news ul.review a {
    /* text-decoration: none; */
    /* color: inherit; */
    /* border-bottom: 1px solid #ffe700; */
}

section.news p.text_left {
    text-align: left;
}

section.news p.big_txt {font-family: 'Zen Kurenaido', sans-serif;font-size: 30px;font-weight: bold;margin-bottom: 50px;}

/*Ã£Æ’â€žÃ£â€šÂ¤Ã£Æ’Æ’Ã£â€šÂ¿Ã£Æ’Â¼Ã¦Å¾Â Ã§Â·Å¡*/
.twitter-timeline.twitter-timeline-rendered {
    border: 7px solid #0aa400;
    border-radius: 10px;
    height: 400px;
    overflow: scroll;
}



/*intro*/
section.intro .box .catch-intro {
    /* font-family: 'Zen Maru Gothic', sans-serif; */
    /* color: black; */
    font-size: 2em;
    /* font-family: "Sawarabi Mincho"; */
    font-family: 'Noto Serif JP', serif;
}
section.intro {
    padding: 60px 0;
    background-image: url(images/intro_bg.png);
    background-position: top right;
    background-attachment: fixed;
    background-size: 100%;
    /* background-repeat: no-repeat; */
}

section.intro .box {
    background: rgb(255 255 255 / 87%);
    padding: 70px 70px;
    /* border-radius: 10px; */
    background-color: rgb(255 255 255 / 86%);
}
section.intro .box p {
    font-weight: normal;
    /* font-family: 'Zen Maru Gothic', sans-serif; */
    font-size: 18px;
    /* font-family: "Sawarabi Mincho","Ã£Æ’â€™Ã£Æ’Â©Ã£â€šÂ®Ã£Æ’Å½Ã¦ËœÅ½Ã¦Å“Â ProN W6", "HiraMinProN-W6", "HGÃ¦ËœÅ½Ã¦Å“ÂE", "Ã¯Â¼Â­Ã¯Â¼Â³ Ã¯Â¼Â°Ã¦ËœÅ½Ã¦Å“Â", "MS PMincho", "MS Ã¦ËœÅ½Ã¦Å“Â", serif; */
    font-family: 'Noto Serif JP', serif;
}

/*discription*/
section.discription .center {
    margin-bottom: 90px;
}
section.discription .catch-intro {
    text-align: center;
    margin-bottom: 60px;
    line-height: 1.8em;
    font-family: 'Zen Kurenaido', sans-serif;
}
section.discription {padding: 100px 0;background-image: url(images/note_bg.jpg);background-size: 60px;position: relative;}

section.discription p {
    font-family: 'Zen Kurenaido', sans-serif;
    font-weight: 700;
    font-size: 18px;
}
section.discription .box02 .img {
    transform: rotateZ(2deg);
}

section.discription .box03 .img {
    transform: rotateZ(-2deg);
    transition: all 0.5s 1s ease-in-out;
}
section.discription .img {
    width: 200px;
    height: 190px;
    float: left;
    padding: 10px;
    background: white;
    display: inline-block;
    margin-right: 20px;
}

section.discription .img img {
    width: 200px;
    height: 140px;
    object-fit: cover;
}

section.discription .box {
    width: 800px;
    margin: auto;
    margin-bottom: 50px;
}

section.discription .box.box01 {
}

section.discription .box:after {
    content: "";
    display: block;
    clear: both;
}

section.discription .box.box01 .img {
    transform: rotateZ(-1deg);
}
section.discription p b {
    font-size: 1.1em;
}
section.discription .absolete {
    right: 0;
    bottom: 0;
    width: 330px;
    transform: scale(-1, 1);
    opacity: 0.4;
}






/*comment*/
section.comment .comment_box {
    border: 1px solid #eee;
    padding: 60px 60px;
    margin-bottom: 30px;
    margin: 30px;
    background: #fffee8;
    font-family: 'Noto Serif JP', serif;
    line-height: 2.1em;
    width: 800px;
    margin: auto;
    margin-bottom: 50px;
    box-shadow: 0 0 20px #cecece;
}

section.comment {
    padding: 60px 0;
    background-image: url(images/note_bg.jpg);
    background-size: 60px;
    position: relative;
}

section.comment {}

section.comment .comment_box .name {
    display: block;
    text-align: right;
    font-size: 25px;
    line-height: 1.2em;
    margin-top: 20px;
}

section.comment .comment_box .name span.job {
    display: block;
    font-size: 0.7em;
}

section.director {
    padding: 60px 0;
    position: relative;
    z-index: 3;
    border-bottom: 1px dashed #cacaca;
}
section.director .wrap {
    width: 800px;
    margin: auto;
}
section.director .box {
    padding: 5%;
}
section.director .box .img {
    /* width: 268px; */
    /* height: 197px; */
    background: border-box;
    display: flex;
    margin-right: 40px;
    align-items: center;
    margin-bottom: 40px;
    margin: auto;
    overflow: hidden;
    margin-bottom: 30px;
    width: 50%;
}

section.director .box:after {
    content: "";
    display: block;
    clear: both;
}
.archive {
    margin: 30px 0;
    padding: 21px;
    border: 1px solid #eee;
    background: #f6f6f6;
}

section.director ul {
    list-style: none;
    padding-left: 0;
    padding: 0 20px;
    margin: 20px 0;
    padding-left: 0;
}
section.staff .staff_box {
    margin: 40px 0;
    width: 48%;
    display: inline-block;
    vertical-align: top;
}
section.director ul li {
    margin-bottom: 10px;
    line-height: 1.5em;
    border-bottom: 1px solid #c9c9c9;
    padding: 2px 0;
    font-size: 13px;
    padding-bottom: 10px;
}
section.staff span.name {
    position: relative;
}

section.staff span.name b {
    position: absolute;
    width: 100%;
    font-size: 9px;
    top: -5px;
    left: 0;
    transform: translate(0px, -50%);
    letter-spacing: 0.2em;
    text-align: center;
}
section.director h4 {
    margin-bottom: 0.5em;
    text-align: center;
}





/*cast_intro*/
section.cast_intro .cast_box h4 {
    font-size: 1.3em;
}

section.cast_intro {
    position: relative;
    z-index: 3;
}
section.cast_intro .cast_box p {
    width: 100%;
    height: 140px;
    background: #eeeeee;
    overflow: hidden;
    margin-bottom: 22px;
}
section.cast_intro .cast_box {
    width: 32%;
    text-align: center;
    overflow: hidden;
    /* margin-bottom: 30px; */
    padding: 30px 10px;
}
section.cast_intro .display_flex {
    display: flex;
    justify-content: left;
    flex-wrap: wrap;
    gap: 2%;
}
section#Cast {
    padding: 60px 0;
    background: #ffd602;
    text-align: center;
}

section.cast_intro .cast_box:nth-child(odd) span.name {
    transform: rotate(2deg);
}
section.cast_intro .cast_box span.name {
    position: relative;
    min-inline-size: 130px;
    display: inline-block;
    background: #ffef90;
    padding: 5px 0px;
    transform: rotate(-2deg);
}

section.cast_intro .cast_box span.name b {
    position: absolute;
    width: 100%;
    font-size: 9px;
    top: -5px;
    left: 0;
    transform: translate(0px, -50%);
    letter-spacing: 0.2em;
    text-align: center;
}









/* staff */



section.staff {
    padding: 60px 0;
    position: relative;
    z-index: 3;
    border-bottom: 1px dashed #cacaca;
}
section.staff .display_flex {
    display: flex;
    gap: 40px;
}



/*Ã£â€šÂ¢Ã£Æ’Â³Ã£Æ’â‚¬Ã£Æ’Â¼Ã£Æ’Â©Ã£â€šÂ¤Ã£Æ’Â³*/
/* Ã£â€šÂ¢Ã£Æ’â€¹Ã£Æ’Â¡Ã£Æ’Â¼Ã£â€šÂ·Ã£Æ’Â§Ã£Æ’Â³Ã¥â€°ÂÃ£ÂÂ®Ã£â€šÂ¹Ã£â€šÂ¿Ã£â€šÂ¤Ã£Æ’Â« */
.js-marker {
  display: inline;
  position: relative;
  background-image: linear-gradient(90deg, #ffff66, #ffff66); /* Ã¥ÂËœÃ¨â€°Â²Ã£ÂÂ®Ã¥Â Â´Ã¥ÂË†Ã£ÂÂ¯Ã¥ÂÅ’Ã£ÂËœÃ¨â€°Â²Ã£â‚¬ÂÃ£â€šÂ°Ã£Æ’Â©Ã£Æ’â€¡Ã£Æ’Â¼Ã£â€šÂ·Ã£Æ’Â§Ã£Æ’Â³Ã£Ââ€¢Ã£Ââ€ºÃ£â€šâ€¹Ã¥Â Â´Ã¥ÂË†Ã£ÂÂ¯Ã¥Ë†Â¥Ã£â‚¬â€¦Ã£ÂÂ®Ã¨â€°Â² */
  background-repeat: no-repeat;
  background-position: bottom left;
  background-size: 0 40%; /* '30%'Ã£ÂÂ®Ã©Æ’Â¨Ã¥Ë†â€ Ã£ÂÂ«Ã£Æ’Å¾Ã£Æ’Â¼Ã£â€šÂ«Ã£Æ’Â¼Ã£ÂÂ®Ã¥Â¤ÂªÃ£Ââ€¢Ã£â€šâ€™Ã¨Â¨ËœÃ¥â€¦Â¥ */
  transition: all 3s ease-out; /* Ã£Æ’Å¾Ã£Æ’Â¼Ã£â€šÂ«Ã£Æ’Â¼Ã£â€šâ€™Ã¥Â¼â€¢Ã£ÂÂÃ©â‚¬Å¸Ã¥ÂºÂ¦Ã£â€šâ€™Ã¨ÂªÂ¿Ã¦â€¢Â´ */
  font-weight: bold; /* Ã£ÂÂ¤Ã£Ââ€žÃ£ÂÂ§Ã£ÂÂ«Ã¥Â¤ÂªÃ¥Â­â€”Ã£ÂÂ«Ã£Ââ€”Ã£ÂÅ¸Ã£Ââ€žÃ¥Â Â´Ã¥ÂË† */
}

/* Ã£â€šÂ¢Ã£Æ’â€¹Ã£Æ’Â¡Ã£Æ’Â¼Ã£â€šÂ·Ã£Æ’Â§Ã£Æ’Â³Ã§â„¢ÂºÃ§ÂÂ«Ã¦â„¢â€š */
.js-marker.inview {
  background-size: 100% 40%; /* '30%'Ã£ÂÂ®Ã©Æ’Â¨Ã¥Ë†â€ Ã£ÂÂ¯Ã¤Â¸Å Ã£ÂÂ§Ã¨Â¨Â­Ã¥Â®Å¡Ã£Ââ€”Ã£ÂÅ¸Ã¥Â¤ÂªÃ£Ââ€¢Ã£ÂÂ«Ã¥ÂË†Ã£â€šÂÃ£Ââ€ºÃ£â€šâ€¹ */
}

.marker01, .marker02, .marker03 {
    background-image: linear-gradient(90deg, #70da76, #70da76);
}







/*Ã¥â€¹â€¢Ã§â€Â»Ã£Æ’Â¢Ã£Æ’Â¼Ã£Æ’â‚¬Ã£Æ’Â«*/
.modal {
  display: flex;
  align-items: center;
  justify-content: center;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.5);
}

.modal-content {
  /* max-width: 90%; */
  /* max-height: 90%; */
  width: 80%;
  height: 70%;
}

#close {
  display: block;
  position: absolute;
  top: 0;
  right: 0;
  padding: 8px 12px;
  background-color: #ddd;
  border: none;
  cursor: pointer;
}
/*modal*/







@media screen and (min-width:600px) {
    .sp {
    display: none;
}

}

/*Ã£â€šÂ¿Ã£Æ’â€“Ã£Æ’Â¬Ã£Æ’Æ’Ã£Æ’Ë†*/
@media screen and (min-width:600px) and (max-width:1140px){

.wrap {
    width: auto;
    margin: 3%;
}

    header .container-fluid {
    background-size: contain;
}

}



/*Ã£â€šÂ¹Ã£Æ’Å¾Ã£Æ’Â¼Ã£Æ’Ë†Ã£Æ’â€¢Ã£â€šÂ©Ã£Æ’Â³*/
@media screen and (max-width: 600px){

    p.text_left {
    text-align: left;
}
  h2 {
    font-size: 8vw;
}
section.news ul.review {
    padding-left: 6vw;
    font-size: 0.9em;
}

ul.review li {
    text-align: left;
}

ul.review li a {
    /* color: inherit; */
}



.wrap {
    width: auto;
}
section.discription .box {width: auto;margin-bottom: 0;}

.wrap {
    margin: 0 4%;
}

header#home span.hamburger {
    font-size: 9vw;
}

header#home .col-md-1 {
    text-align: center;
    top: 0;
    z-index: 99999;
}

header#home .col-md-3 {
    width: 100%;
    height: 14vw;
}

header#home .row {
    width: 100vw;
    top: 0vw;
    padding: 0;
    margin: 0;
}

header#home .col-md-3 .logo {
    height: 13vw;
    display: inline-block;
    right: 50%;
    position: absolute;
    transform: translate(50%, 0px);
}

header#home .col-md-3 .logo img {
    height: 12vw;
}

header .container .jumbotron {padding: 0;margin-top: 0;position: absolute;bottom: 0;left: 0;}

header .container .jumbotron p {
    font-size: 4.7vw;
    margin-left: 3vw;
}

header#home {
    height: 85vw !important;
}

header .container-fluid {
    height: auto;
    background-size: 150vw;
    background-position: -26vw top;
    padding: 0;
}

header#home .container {
    height: 90vw;
    position: relative;
    margin: 0;
    padding: 0;
}

section.news p.big_txt {
    font-size: 6vw;
}

section.intro .box .catch-intro {
    font-size: 1.4em;
}

section.intro .box {
    padding: 10vw 5vw;
}
section.intro {
    background-attachment: fixed;
    background-size: 280%;
}
section.intro .box p {
    /* font-size: 4vw; */
}

section.discription .catch-intro {
    font-size: 1.11em;
    text-align: left;
}

section.discription {
    padding-top: 14vw;
    padding-bottom: 60vw;
}

section.discription .img {
    float: inherit;
    margin: auto;
    display: block;
    width: 70vw;
    height: 55vw;
    margin-bottom: 4vw;
}

section.director .wrap {
    width: auto;
}
  section.banana_bg {
    background-position: -60vw 90vw,37vw -20vw;
    height: auto;
}
section.director .box .img {
    float: inherit;
    margin: auto;
    width: 62vw;
    margin-bottom: 10vw;
}


  
section.news {
    background-position: -60vw 50vw,50vw 0vw;
    height: auto;
}

section.staff .staff_box {
    width: auto;
    margin: 5vw 0;
}
section.discription .img img {width: 100%;height: 44vw;
}

section.comment .comment_box {
    width: 90%;
    padding: 4vw;
    font-size: 3.3vw;
}



  section.staff .display_flex {
    flex-wrap: wrap;
}


/* cast_intro */
section.cast_intro .cast_box {
    width: 49%;
}
section.cast_intro .cast_box p {
    height: 27vw;
}
  
/*  Ã£Æ’Â¡Ã£Æ’â€¹Ã£Æ’Â¥Ã£Æ’Â¼  */


.pushy li {}

.pushy a {
    border: none !important;
    line-height: 1.2em;
    color: white !important;
    padding-left: 3vw !important;
}

  .pushy a:hover {
    background: #ffe000;
    color: #000 !important;
}

.pushy-active .site-overlay {
    background-color: rgb(0 0 0 / 35%);
    mix-blend-mode: multiply;
}

}




@media screen and (max-width: 768px){
  body .pushy {
  background: none !important;
  box-shadow: none !important;
  width: 32vw !important;
  display: flex;
  align-items: end;
}
  
}


img.img-responsive {
    margin: auto;
}

.slider {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    justify-content: space-between;
}

.slider .box {
    width: 48%;
    margin-bottom: 30px;
}


a.btn {
    background: #12891c;
    color: white;
    border-radius: 10pc;
    /* padding: 20px 30px; */
    font-size: 0.9em;
    font-weight: bold;
    /* min-width: 330px; */
    /* width: 60%; */
    margin-bottom: 30px;
    margin-top: 30px;
    padding: 1em 2em;
}



a {}

.news_comment {
    background: green;
    border-radius: 100px;
    text-align: center;
    padding: 1px;
    display: block;
    display: flex;
    justify-content: center;
    align-items: center;
    /* line-height: 1em; */
}

.news_comment a {
    color: white;
    font-weight: bold;
}

.news_comment p {
    margin: 0;
}
