


.top_service .inner .inner_text{
  padding-left: 24px;
  padding-right: 16px;
}

.page-template-page-top .top_what{
  margin-top: 140px;
}


.top_voice .inner .inner_text .text{
width: 41vw !important;
max-width: 560px;
}
@media screen and (max-width: 768px) {
  .top_voice .inner .inner_text .text{
    width: 100% !important;
    max-width: 500px;
    }
    .top_service .inner .inner_text{
      padding: 0;
    }
    .page-template-page-top .top_what{
      margin-top: 80px;
    }
}

header div.menu nav .gnav{
  width: 97%;
  gap: 2%;
}
header div.menu nav .lang{
  width: 15%;
}
header div.menu nav ul li a{
  letter-spacing: 0.1em;
}

@media screen and (max-width: 768px) {
  .top_voice .inner .inner_text .text{
    width: 100% !important;
    }
    header div.menu nav .gnav{
      width: 100%;
    }
    header div.menu nav .lang{
      width: 100%;
    }
}


.page-id-2395 header .inner .menu nav .lang li:not(:last-child):after {
  color: #fff;
  margin-top: -2px;
  margin-right: 4px;
}

.header div.menu{
  max-width: 690px;
}

section{
  padding: 0 24px;
  box-sizing: border-box;
}
.home .main_visual .slickslider .slider .slick-slide figure figcaption{
  padding: 0 16px;
}

.top_profile .inner .inner_text dl dt{
  margin-left: 1em;
}

.top_profile .inner .inner_text dl dd{
  display: flex;
  flex-direction: column;
  align-items: flex-end;
}
.top_profile .inner .inner_text dl dd .name_en{
  margin-right: 1em;
  margin-bottom: 1.4em;
}
.page-template-page-top .top_profile .btn{
  font-size: 1.6rem;
  width: 196px;
}
.page-id-2734 .top_profile .btn{
  margin: 44px 0 0;
}

@media screen and (max-width: 768px){
 .top_profile .inner .inner_text dl dt{
    margin-left: 0em;
  }
  .top_profile .inner .inner_text dl dd{
    align-items: flex-start;
  }
  .top_profile .inner .inner_text dl dd .name_en{
    margin-right: 0em;
    margin-bottom: 1.4em;
  }
  .page-template-page-top .top_profile .inner .inner_text dl dd .name_ja{
    font-size: 2.4rem;
    padding: 0;
  }
  .page-id-2734 .top_profile .btn{
    margin: 44px auto 0;
  }
}

.en{
  font-family: "Marcellus", serif !important;
}

.info-btn{
  margin: 0 auto;
}


.home footer{
  margin-top: 0;
}
.home picture{
  display: block;
}
.home picture img{
  width: 100%;
}

.home .main_visual{
  position: relative;
}
.home .main_visual h2{
  position: absolute;
  /* inset: 0;
  margin: auto; */
  width: 10%;
  height: 22%;
  top: 30%;
  left: 50%;
  transform: translate(-50%,0);
  
}

.nav__list{
  position: absolute;
  bottom: 30%;
  left: 50%;
  transform: translate(-50% , 0);
  display: flex;
  justify-content: center;
  gap: 50px;
  width: 100%;
}
.nav__list a{
  color: #fff;
  font-size: 1.8rem;
  font-family: 'Marcellus', serif;
  letter-spacing: 0.1em;
}

.nav__list a:hover{
  color: #000;
}
.page-template-page-top header{
  background-color: transparent;
}

.page-template-page-top .main_visual{
  padding-top: 0;
}

.page-template-page-top .main_visual .slickslider{
  margin-top: 0;
}
.page-template-page-top .inner .inner_text .ttl{
  border:none;
  text-align: left;
  display: block;
}
.page-template-page-top .inner .inner_text .ttl span{
  font-size: 3.8rem;
}

.page-template-page-top .top_mission .inner .inner_text .text{
  text-align: left;
}
.page-template-page-top .top_service .inner .inner_text h3{
  text-align: left;
}
.page-template-page-top .top_service .inner .inner_text .top_service_list{
  text-align: left;
}
header div.menu .sub-menu{
  position: absolute;
  display: block;
  font-size: 1.2rem;
  left: 0;
  top: 22px;
  z-index: 4;
  width: 190px;
  visibility: hidden;
  opacity: 0;
  transition: all .3s;
}

.bogo-language-switcher{
  header div.menu .sub-menu{
    position: relative;
    display: none;
    top: 0;
    transition: none;
    width: 100%;
    background-color: transparent;
    opacity: 1;
    visibility: inherit;
  }
}

.bogo-language-switcher{
  display: flex;
  align-items: center;
  font-family: 'Optima','Roman',sans-serif;
  font-size: 1.4rem;
  width: 20%;
}

@media screen and (max-width: 768px){
  .home .main_visual h2{
    width: 28%;
    
  }
  .bogo-language-switcher{
    width: 100%;
    font-size: 2rem;
    justify-content: center;
    gap: 4px;
  }
  header div.menu{
    justify-content: flex-start;
    gap: 7%;
  }
}
.bogo-language-switcher li{
  display: flex;
  align-items: center;
  gap: 2px;
}

.bogo-language-switcher li a{
  color: #4B158A;
}
.bogo-language-switcher li:not(:nth-child(2)):after {
  content: "/";
  display: block;
  color: #4B158A;
  margin-right: 4px;
}
.bogo-language-switcher .ja{
  order: 4;
}
.bogo-language-switcher .en-US{
  order: 1;
}

.bogo-language-switcher .zh-CN{
  order: 2;
}
.bogo-language-switcher .th{
  order: 3;
}
.bogoflags{
  display: none !important;
  
}
@media screen and (max-width: 768px){
  .bogo-language-switcher{
    width: 100%;
    font-size: 2rem;
    justify-content: center;
    gap: 4px;
  }
  header div.menu{
    justify-content: flex-start;
    gap: 4%;
  }
  .bogo-language-switcher li{
   
    gap: 4px;
  }
  .page-template-page-top header div.burger > div{
background-color: #fff;
  }
  .bogo-language-switcher li a{
    color: #fff;
  }
  .bogo-language-switcher li:not(:last-child):after {
    color: #fff;
  }
  .page-template-page-top .top_profile .inner{
    flex-direction: column;
  }
  .page-template-page-top .top_profile .inner figure{
    width: 100%;
  }
  .page-template-page-top .top_profile .inner figure iframe{
    width: 100%;
    aspect-ratio: 16 / 9;
    height: auto;
  }
  .page-template-page-top .top_profile .inner .inner_text dl{
    writing-mode: horizontal-tb;
    margin-right: 0;
  }
  .page-template-page-top .top_profile .inner .inner_text{
    align-items: center;
    gap: 4px;
  }
  
}

.page-template-page-top .bogo-language-switcher li:not(:nth-child(2))::after {
  
  color: #fff;
 
}

.page-template-page-top .bogo-language-switcher li a{
  color: #fff;
}

.page-template-page-top header .inner .menu nav ul li a{
  color: #fff;
  font-family: "Marcellus", serif;
}

header div.menu{
  max-width: 642px;
  width: 100%;
}

.btn a{
  display: block !important;
}

.press__img{
  width: 100%;
  img{
    width: 300px;
    height: 180px;
    object-fit: contain;
  }
}
.page-template-page-top .main_visual .news a{
  gap: 24px;
}

.top__news{
  margin-top: 80px;
  .ttl__area{
    text-align: center;
  }
  .news{
    width: calc((100% - 64px) / 3);
    
  }
  .ttl{
    text-align: center;
    border-bottom: 1px solid #000;
    display: inline-block;
    padding: 0 16px;
  }
}

@media screen and (max-width: 768px){
  .page-template-page-top .main_visual .news{
    padding: 0;
  }
  .press__img{
    width: 100%;
  }
}




.name__area{
  display: flex;
  justify-content: flex-start;
  gap: 5px;
}

.bogo-language-name a{
  font-family: "Marcellus", serif;
}


.news__wrap{
  max-width: 1200px;
  width: 100%;
  display: flex;
  justify-content: center;
  gap: 32px;
  margin: 40px auto 0;
  .slick-prev{
    left: 4px;
    z-index: 9;
  }
  .slick-next{
    right: 4px;
    z-index: 9;
  }
  .slick-slide{
    margin: 0 8px;
  }
  .slick-dots{
    bottom: -38px;
    li button:before{
      color: #4B158A;
    }
  }
}
.event__wrap{
  max-width: 620px;
  width: 100%;
  margin: 40px auto;
}
.news__toptext2{
  display: flex;
  gap: 16px;
}
.event{
  margin-bottom: 24px;
}

.news__toptext2 .text{
  text-align: left;
}



.page-template-page-top .top_what .inner{
  max-width: 846px;
  width: 100%;
  margin: 60px auto 0;
  p{
    text-align: justify;
    @media screen and (max-width: 768px){
      text-align: left;
      word-break: break-all;
    }
  }
}

@media screen and (max-width: 768px){
  .news__wrap{
    flex-direction: column;
  }
  .top__news{
    .news{
      width: 100%;
      margin: 0 auto;
    }
  }
  .news__toptext2{
    flex-direction: column;
    gap: 4px;
  }
  .event{
    text-align: left;
  }
  header .inner{
    padding-left: 24px;
    box-sizing: border-box;
  }
}


.page-template-page-top .top_profile .inner .inner_text dl dd .name_en{
  font-size: 1.4rem;
}
.page-template-page-top .top_profile .inner .inner_text dl dt{
  text-align: left;
  margin-left: 0;
  /* font-family: "Optima", "Roman", sans-serif; */
}

 .side_text dl {
    writing-mode:horizontal-tb !important;
    dd {
      align-items: flex-start !important;
      .name_ja{
        font-size: 2.4rem;
      }
      .name_en{
        text-align: left;
      }
    }
  }
.side__flex{
  align-items: center !important;
}

.page header .inner .menu nav ul li a{
  font-family: "Marcellus", serif;
  letter-spacing: 0.1em;
}

.top_profile figure iframe{
  width: 100%;
}
.page-id-2931 .inner_text .name_ja,
.page-id-2890 .inner_text .name_ja,
.page-id-2734 .inner_text .name_ja{
  font-family: "Optima", "Roman", sans-serif;
  text-align: left;
  margin-top: 4px;
  letter-spacing: 0.4em !important;
  white-space: nowrap;
  @media screen and (max-width: 768px){
    font-size: 2rem !important;
  }
}

.page-template-page-top .top_profile-en{
  max-width: 1280px;
  width: 100%;
  .inner{
    max-width: 100%;
  }
}
.page-template-page-top .top_profile-en .inner .inner_text dl dd .name_ja{
  font-size: clamp(2rem , 2vw , 3rem);
}

/* .page-id-2734 .top_profile .inner figure{
  width: 59.2%;
  @media screen and (max-width: 768px){
    width: 100%;
  }
} */


.page-id-2734 .inner_text dl{
  margin-right: 0 !important;
}

.cat-area h3{
  text-transform: capitalize;
}

.p-chinatsu__float{
  position: fixed;
  bottom: 50px;
  right: -100%;
  transition: all .8s;
  z-index: 4;
  .p-chinatsu__float-bg{
      background-color: rgba(0,0,0,.8);
      padding: 30px;
      max-width: 460px;
      width: 100%;
    }
}
.p-chinatsu__float.active{
  right: 0;
}

.toggle_btn{
  position: absolute;
  top: 15px;
  right: 15px;
  cursor: pointer;
  /* border: 2px solid #fff;
  width: 40px;
  height: 40px;
  border-radius: 50%; */
}

.openbtn-area{
  transform: rotate(133deg);
  position: relative;
    span{
      width: 37px;
      height: 3px;
      display: block;
      position: absolute;
      background-color: #fff;
      
    }
}
.openbtn-area span:first-of-type{
   top: 0;
   transform: rotate(-90deg);
}
 .openbtn-area span:last-of-type{
        top: 0;
      }

.p-chinatsu__btn{
  font-size: 1.4rem;
  font-family: "Marcellus", serif;
  /* border: 2px solid #000; */
  background-color: rgba(0,0,0,.4);
  color: #fff;
  text-align: center;
  max-width: 200px;
  width: 100%;
  padding: 12px 16px;
  position: fixed;
  border-radius: 5px;
  right: 24px;
  bottom: 64px;
  cursor: pointer;
  /* border: 1px solid rgba(99, 50, 142, 0.5); */
}
.p-chinatsu__btn.active{
  display: none;
}

.p-chinatsu__btn::before, .p-chinatsu__btn::after {
  content: '';
  position: absolute;
  width: 100%;
  height: 100%;
  bottom: 0;
  left: 0;
  z-index: 1;
  transition: all 0.3s;
  border: 2px solid rgba(99, 50, 142, 0.5);
  /* background-color: rgb(99, 50, 142); */
}

.p-chinatsu__btn:hover::after {
  animation-name: rotatecw;
  animation-duration: 2s;
}
.p-chinatsu__btn:hover::before {
  animation-name: rotateccw; 
  animation-duration: 3s;
}
.p-chinatsu__btn:hover::after, .p-chinatsu__btn:hover::before {
  left: 40px;
  width: 120px;
  
  animation-iteration-count: infinite;
  animation-timing-function: linear;
}

@keyframes rotatecw {
    from {transform: rotate(0deg);}
    to {transform: rotate(360deg);}
}

@keyframes rotateccw {
    from {transform: rotate(0deg);}
    to {transform: rotate(-360deg);}
}
@media screen and (max-width: 768px){

.p-chinatsu__float{
  right: -140%;
}
.p-chinatsu__btn{
  bottom: 2px;
  right: auto;
  left: 0;
  width: 74%;
  max-width: 100%;
}

}

.th .lang{
  /* font-family: "Sarabun", sans-serif !important; */
  font-family: "Noto Sans Thai", sans-serif !important;
}


  .th.page-template-page-top .top_what .inner{
  p{
    text-align: left;
    }
  }

  .th .biography .biography_profile .profile_box_01 .inner .inner_text .text{
        word-break: normal;
  }


  .th.page .contents .inner p{
    font-family: "Noto Sans Thai", sans-serif !important;
  }
   .th .single .single_contents{
     font-family: "Noto Sans Thai", sans-serif !important;
   }

   .th .biography .biography_profile .profile_box_01 .inner .inner_text{
    max-width: 503px;
   }
   .th .event .event__list li h2{
     font-family: "Noto Sans Thai", sans-serif !important;
   }

   .th .contact .contents .inner_form form{
    font-family: "Noto Sans Thai", sans-serif !important;
   }

   .mb-1em{
    margin-bottom: 1em;
   }

   .biography .biography_profile .profile_box_01 .inner .inner_text .text{
    word-break: normal;
   }
   sup{
    color: red;
   }

   .contact__caution{
    text-align: right;
   }

   .biography .biography_profile .profile_box_02 .inner .inner_text ul{
    text-align: left;
   }