@charset 'UTF-8';
@font-face {
font-family: “源ノ明朝”;
src: url(“font/SourceHanSerif-Regular.woff”) format(“woff”), url(“font/SourceHanSerif-Regular.otf”) format(“opentype”);
}

body{
  color: #000A33;
  line-height: 1.5;
  font-family: 'Noto Serif JP', serif;

}
a{
  text-decoration:none;
}

a:hover{
opacity: 0.7;
}
img{
  max-width: 100%;
}
.header{
  width: 100%;
  height: 50vw;
  background-size: cover;
  background-image: url(../img/top/mv.jpg);
}

h1{
  font-size: 27px;
}

h1 span{
  display: block;
  font-size: 21px;
}

h1:after{
  content: "";
  display: block;
  width: 40px;
  height: 1px;
  background-color: #707070;
  margin: 4vh 0px;
}

.nav{
  padding: 5vh 50px 0px;
  position: fixed;
  width: 23vw;
  top: 0vh;
  height: 100vh;
  background-color: rgba(255, 255, 255, 0.9);
  overflow-y: scroll;
}



.page-template-default .nav{
  padding: 10vh 50px 0px;
  top: 0vh;
}
@media (max-width: 1100px) {
  .nav{
    padding: 5vh 10px 0px;
  }
  .page-template-default .nav{
    padding: 0px 10px 0px;
  }

}
.nav li {
  font-size: 14px;
  margin: 0px 0px 25px;
}
.nav li:last-child {
  font-size: 14px;
  margin: 55px 0px 8vh;
}
.nav li a{
  color: #000A33;
  text-decoration: none;
}

#item{
  position: fixed;
  width: 100%;
  margin: 0 auto;
  left: 0;
  bottom: 0;
  background-color: rgba(121, 22, 77, 0.8);
  color: #fff;
  padding: 50px;

}

#news_box{
  background-color: rgba(173, 173, 173, 0.9);
  width: 50px;
  height: 50px;
  border-radius: 50%;
  position: absolute;
  right: 0px;
  top: -70px;
  font-size: 30px;
  display: block;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #000A33;
}

.item_wapper{
  max-width: 1000px;
  margin: 0 auto;
display: flex;
position: relative;
}

#item p{
  font-size: 16px;
  width: 70%;
  margin-right: 10%;
}

#item .btn{
  background-color: #fff;
  padding: 10px 20px;
  font-size: 14px;
  text-align: center;
}
#item .btn a{
  color: #E4007F;
}

.main_wapper{
  padding-left: 25vw;
}


.box01{
  display: flex;
  justify-content: space-between;
  margin: 100px 0px 0px 0px;
  max-width: 80%;
}

.box01 .box01_inner{
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  position: relative;
}
.box01 .box01_inner p.sec_title{
  margin: 50px 0px 0px 0px;

}


.box01 .box01_inner h2{
  font-size: 42px;
  position: relative;
  padding: 0px 0px 20px 0px;
  z-index: -1;
}

.box01 .box01_inner h2::before{
  content: "";
  display: block;
  position: absolute;
  bottom: 0px;
  left: 0px;
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background-color: #E4007F;
}
.box01 .box01_inner h2::after{
  content: "";
  position: absolute;
  bottom: 2px;
  display: block;
  width: 100px;
  height: 1px;
  background-color: #E4007F;
}

.box01 .box01_inner .btn a{
  border: 1px solid #ADADAD;
  padding: 10px 20px;
  color: #000A33;
  min-width: 200px;
  display: inline-block;
  text-align: center;
}


footer{
  margin: 200px 0px 0px;
  padding-left: 25vw;
  font-size: 12px;
  max-width: 80%;
  font-family: "游ゴシック", "Yu Gothic", "游ゴシック体", YuGothic, sans-serif;
}

footer p{
  text-align: center;
}

footer ul{
  list-style: none;
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
}
footer ul li {
  width: 20%;
  text-align: center;
  margin: 20px 0px 0px ;
}

footer a{
  color: #000A33;
}
.copy{
  color: #ADADAD;
  text-align: center;
  font-size: 12px;
  margin: 30px 0px 10px;
}


.page-template-default .header,
.ticket-template-default .header,
.archive .header{
  height: auto;
}

.teller-template-default .header{
  height: auto;
}

.tax-teller_cat .header{
  height: auto;
}




.box02{
  margin: 50px 0px 0px;
}
.box02 h3{
  font-size: 22px;
}
.box02 p{
    margin: 20px 0px 30px;
}


.box02 .box02_list{
  display: flex;
  border-left: 1px solid #ADADAD;
  margin: 0px 0px 0px 0px ;
  padding: 20px 0px 10px 0px ;
}
.box02 .box02_list dt{
  font-size: 18px;
  margin: 0px 30px 0px 0px;
  padding: 0px 0px 0px 10px;
}
.box02 .box02_list dd{
  font-size: 14px;
  margin: 0px 0px 0px 0px;
}
.box02 .box02_list dd a{
  color: #000A33;
  border-bottom: 1px solid #E4007F;
}
.list_btn{
  max-width: 700px;
  margin: 0px 0px 0px 0px;
  padding: 0px 0px 0px 0px ;
  display: flex;
  flex-wrap:wrap;
  justify-content: space-between;
}

.list_btn li{
  width: 48%;
  margin: 20px 0px 0px 0px;
  padding: 0px 0px 0px 0px ;
  text-align: center;
}
.list_btn li a{
  display: block;
  border: 1px solid #ADADAD;
  padding: 10px 20px;
  color: #000A33;
}
.list_btn li a:hover{
border: 1px solid #E4007F;
}
.list_btn li.bank {
  position: relative;
}
.list_btn li.bank #olb_paypal_form{
  text-indent: -9999px;
}
.list_btn li.bank::before{
  content: "銀行決済でのお支払い";
  position: absolute;
      top: 10px;
      width: 100%;
      text-align: center;
      left: 0%;
}

.company_list01{
  display: flex;
  flex-wrap: wrap;
  width: 60%;
  margin: 0px 0px 20px 0px;
}
.company_list01 dt{
  width: 25%;
  margin: 15px 0px 0px 0px;
  padding: 0px 0px 0px 0px;
}
.company_list01 dd{
  width: 75%;
  margin: 15px 0px 0px 0px;
  padding: 0px 0px 0px 0px;
}

.company_list02{
  display: flex;
  flex-wrap: wrap;
  width: 60%;
  margin: 0px 0px 20px 0px;
}
.company_list02 dt{
  width: 25%;
  margin: 15px 0px 0px 0px;
  padding: 0px 0px 0px 0px;
}
.company_list02 dd{
  width: 75%;
  margin: 15px 0px 0px 0px;
  padding: 0px 0px 0px 0px;
}



.ticket_list{
  width: 80%;
  display: flex;
  flex-wrap:wrap;
  margin: 30px 0px 0px 0px;
  padding: 0px 0px 0px 0px;

}

.ticket_list li{
  background-color: #F7F7F7;
  width: 48%;
  margin: 0 1%;
}


.single .ticket_list li{
  background-color: #F7F7F7;
  width: 58%;
  margin: 0 1%;
}



.ticket_list li .btn{
  margin: 20px 0px 0px 0px ;
  padding: 0px;
}

.ticket_list li a{
  background-color: #fff;
  width: 100%;
  text-align: center;
  display: block;
  border-bottom: 2px solid #E4007F;
  padding: 10px 0px;
 color: #000A33;
}

.ticket_list_inner{
  display: flex;
  padding: 20px 0px;
  width: 90%;
  margin: 0 auto;
  border-bottom: 2px solid #ADADAD;
  box-sizing: border-box;
}

.ticket_list_inner figure{
}

.ticket_list_inner figure img{
  width: 100px;
  height: 100px;
  overflow: hidden;
  border-radius: 50%;
  object-fit: cover;
}

.ticket_list_txt{
  margin: 0px 0px 0px 20px;
  padding: 0px 0px 0px 0px;
}
.ticket_list_txt p{
  margin: 0px 0px 10px 0px;
  padding: 0px 0px 0px 0px;
}

.box02 p.fee{
  text-align: right;
  margin: 10px auto 0px;
  padding: 0px 0px 0px 0px;
  width: 90%;
}

.single .box02 p.fee{
  text-align: right;
  margin: 10px auto 0px;
  padding: 0px 0px 10px 0px;
  width: 90%;
}
.box02 p.purchase{
  margin: 10px 0px 0px 0px;
  padding: 0px 0px 0px 0px;
}
.purchase a{
  display: block;
  width: 100%;
  background-color: #fff;
  text-align: center;
  color: #000A33;
  padding: 10px 0px;
  border-bottom: 2px solid #E4007F;
}


.terms_box{
  margin: 60px 0px 0px 0px ;
  padding: 0px 0px 0px 0px;
  max-width: 70%;
}

.terms_list{
  margin: 20px 0px 0px 0px ;
  padding: 0px 0px 0px 0px;
}

.terms_list dt{
  margin: 50px 0px 0px 0px ;
  padding: 0px 0px 0px 0px;
  font-size: 24px;
}

.terms_list dd{
  margin: 30px 0px 0px 0px ;
  padding: 0px 0px 0px 0px;
  font-size: 14px;
  line-height:2;
}

.terms_list dd ul{
  margin: 0px 0px 0px 0px ;
  padding: 0px 0px 0px 0px;
}
.terms_list dd ul li{
  list-style: initial;
  list-style-position: inside;
  margin: 0px 0px 0px 5px ;
  padding: 0px 0px 0px 0px;
}

.terms_list dd ol{
  margin: 0px 0px 0px 5px ;
  padding: 0px 0px 0px 0px;
  list-style: decimal;
  list-style-position: inside;
}

.terms_list dd ol li ol{
  margin: 0px 0px 0px 20px ;
  padding: 0px 0px 0px 0px;
  list-style: decimal;
  list-style-position: inside;
}

.teller_box_title{
  font-size: 22px;
  margin: 30px 0px;
}



.specified_list{
  display: flex;
  flex-wrap: wrap;
}
.specified_list dt{
  width: 20%;
    margin: 20px 0px 0px 0%;
}
.specified_list dd{
  width: 75%;
  margin: 20px 0px 0px 5%;
}

.specified_list dd p a{
  color: #000A33;
  border-bottom: 1px solid #E4007F;
}



.teller_list{
  display: flex;
  flex-wrap: wrap;
}
.teller_list dt{
  width: 20%;
    margin: 20px 0px 0px 0%;
}
.teller_list dd{
  width: 75%;
  margin: 20px 0px 0px 5%;
}


.teller_cat_list{
  display: flex;
  flex-wrap: wrap;
  width: 100%;
  list-style: none;
}

.teller_cat_list li{
  width: 31%;
  margin: 40px 1% 0;
}
.teller_cat_list li a{
  color: #000A33;
}
.teller_cat_list li p.list_name{
  margin: 10px auto 5px;
  width: 90%;
  border-bottom: 1px solid #ADADAD;
}
.teller_cat_list li p.list_txt{
  margin: 0px auto;
  width: 90%;
}

.sp{
  display: none;
}
@media (max-width: 768px) {
  .box01 {
    display: flex;
    justify-content: space-between;
    margin: 30px 0px 0px 0px;
}

.sp_mv{
  padding: 65px 0px 0px;
}
.pc{
  display: none;
}
.sp{
  display: block;
}
.nav li:last-child{
  margin: 0px 0px 25px;
}
.header{
  background-image: none;
  height: auto;
}
.main_wapper{
  padding-left:20px;
  padding-right: 20px;
}

h1{
  font-size: 16px;
      display: flex;
      width: 100%;
      height: 60px;
      text-align: center;
      justify-content: center;
      align-items: center;
}
h1::after{
  display: none;
}
.nav {
    padding: 0px 50px 0px;
    position: fixed;
    width: 100vw;
    height: auto;
    background-color: rgba(255, 255, 255, 0.9);
}
.box01{
  flex-direction: column-reverse;
}

#nav-toggle {
  position: fixed;
  top: 15px;
  right: 25px;
  height: 32px;
  cursor: pointer;
}
#nav-toggle > div {
  position: relative;
  width: 36px;
}
#nav-toggle span {
  width: 100%;
  height: 1px;
  left: 0;
  display: block;
  background: #333;
  position: absolute;
  transition: transform 0.6s ease-in-out, top 0.5s ease;
}
#nav-toggle span:nth-child(1) {
  top: 0;
}
#nav-toggle span:nth-child(2) {
  top: 14px;
}
#nav-toggle span:nth-child(3) {
  top: 28px;
}
#nav-toggle:hover span:nth-child(1) {
  top: 4px;
}
#nav-toggle:hover span:nth-child(3) {
  top: 23px;
}

.open #nav-toggle span {
  background: #fff;
}
.open #nav-toggle span:nth-child(1) {
  top: 15px;
  transform: rotate(45deg);
}
.open #nav-toggle span:nth-child(2) {
  top: 15px;
  width: 0;
  left: 50%;
}
.open #nav-toggle span:nth-child(3) {
  top: 15px;
  transform: rotate(-45deg);
}

/* z-index */
#nav-toggle {
  z-index: 1000;
}

#container {
  z-index: 900;
}

#gloval-nav {
  background: rgba(0,0,0,0.8);
  color: #fff;
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 990;
  text-align: center;
  display: flex;
  visibility: hidden;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  font-size: 29px;
  opacity: 0;
  transition: opacity 0.6s ease, visibility 0.6s ease;
}

#gloval-nav a {
  display: block;
  color: #fff;
  text-decoration: none;
  padding: 10px 0;
  transition: color 0.6s ease;
}
#gloval-nav a:hover {
  color: #666;
}
#gloval-nav ul {
  list-style: none;
}
#gloval-nav ul li {
  opacity: 0;
  transform: translateX(200px);
  transition: transform 0.6s ease, opacity 0.2s ease;
}
#gloval-nav ul li:nth-child(2) {
  transition-delay: 0.15s;
}
#gloval-nav ul li:nth-child(3) {
  transition-delay: 0.3s;
}
#gloval-nav ul li:nth-child(4) {
  transition-delay: 0.45s;
}
#gloval-nav ul li:nth-child(5) {
  transition-delay: 0.6s;
}
#gloval-nav ul li:nth-child(6) {
  transition-delay: 0.75s;
}
#gloval-nav ul li:nth-child(7) {
  transition-delay: 0.9s;
}

/* open */
.open {
  overflow: hidden;
}
.open #gloval-nav {
  visibility: visible;
  opacity: 1;
}
.open #gloval-nav li {
  opacity: 1;
  transform: translateX(0);
  transition: transform 1s ease, opacity 0.9s ease;
}

.box01 .box01_inner h2{
  font-size: 24px;
  padding: 0px 0px 10px 0px;
    margin: 0px 0px 20px 0px;
}
.box01 .box01_inner p{
  margin: 10px 0px 0px;
}
.box01 .box01_inner .btn a{
  width: 100%;
  margin: 20px 0px 0px;
}
footer{
  margin: 20px 0px 0px;
    padding-left: 0vw;
    font-size: 12px;
    max-width: 100%;
}
footer ul li{
  width: 100%;
}

.box01 .box01_inner p.sec_title{

}
.page-template-default .nav{
  padding: 0px 50px 0px
}
.page-template-default .main_wapper{
  padding-top: 80px;
}
.list_btn li{
  width: 100%;
}
.list_btn li a{
  padding: 10px 8px;
}
}




.mb20{
  margin-bottom: 20px;
}



.modal{
    display: none;
    height: 100vh;
    position: fixed;
    top: 0;
    width: 100%;
}
.modal__bg{
    background: rgba(0,0,0,0.8);
    height: 100vh;
    position: absolute;
    width: 100%;
}
.modal__content{
    background: #fff;
    left: 50%;
    padding: 40px;
    position: absolute;
    top: 50%;
    transform: translate(-50%,-50%);
    width: 60%;
}


.page-id-61 legend{
  display: none;
}
#wpmem_login fieldset, #wpmem_reg fieldset{
  display: flex;
  flex-wrap: wrap;
}
#wpmem_login fieldset{
  width: 100% !important;
}
#wpmem_login label{
  width: 35%;
}
#wpmem_login .div_text,
#wpmem_reg .div_text{
  width: 48% !important;
  margin-left: 2% !important;
}
.button_div{
  display: flex;
  flex-direction: column;
}

.button_div #rememberme{
  display: none !important;
}

.button_div label{
  display: none !important;
}
.button_div input{
  background-color: #fff;
  border: 1px solid #ADADAD;
  max-width: 300px !important;
  padding: 10px;
}

.req-text{
  display: none;
}

.pass_none a{
  color:#000A33;
  border-bottom: 1px solid #E4007F;
}

.touroku{
  margin: 20px 0px 0px 0px;
  padding: 0px 0px 0px 0px;
}
.touroku a{
  color:#000A33;
  border-bottom: 1px solid #E4007F;
}


.registration_txt{
  margin: 40px 0px 0px;
}


.registration-box legend{
  display: none;
}
#wpmem_reg label{
  width: 30% !important;
}

.wpmem_msg{
  background-color: #fff;
  margin: 20px auto;
  padding: 20px 0 20px 0;
}

.finish_login{
  margin: 50px 0px 0px 0px;
}
.finish_login a{
  border: 1px solid #ADADAD;
  padding: 10px 100px;
  color: #000A33;
}

#wpmem_login legend{
  display: none;
}


.wpmem_msg{
  width: 100% !important;
  background-color: #fff !important;
  padding: 20px !important;
}

#olb_paypal_form{
  position: relative;
  border: 1px solid #ADADAD;
    padding: 10px 20px;
    color: #000A33;
}

#olb_paypal_form:hover{
  border: 1px solid #E4007F;
}

#olb_paypal_form input{
  width: 100%;
  display: block;
      border: 0px solid #ADADAD;
      padding: 10px 20px;
      color: #000A33;
      background-color: transparent;
      height: 100%;
      font-size: 0px;
      top: 0px;
      left: 0px;
      position: absolute;
}


.ticket_txt01{
    margin: 0px 0px 30px 0px ;
}
.ticket_details{
  margin: 100px 0px 0px 0px ;
}
/* モーダルCSS */
.modalArea {
display: none;
position: fixed;
z-index: 10; /*サイトによってここの数値は調整 */
top: 0;
left: 0;
width: 100%;
height: 100%;
}

.modalBg {
width: 100%;
height: 100%;
background-color: rgba(30,30,30,0.9);
}

.modalWrapper {
position: absolute;
top: 50%;
left: 50%;
transform:translate(-50%,-50%);
width: 70%;
max-width: 650px;
padding: 10px 30px;
background-color: #fff;
padding: 100px;
border-radius: 20px;
text-align: center;
}

.closeModal {
position: absolute;
top: 0.5rem;
right: 1rem;
cursor: pointer;
}


.modal_txt01{
  font-size: 14px;
  margin: 0px 0px 50px 0px;
  padding: 0px 0px 0px 0px;
}

.modal_txt02{
  font-size: 14px;
  margin: 0px 0px 20px 0px;
  padding: 0px 0px 0px 0px;
}

.modal_tel{
  font-size: 42px;
  margin: 0px 0px 10px 0px;
  padding: 0px 0px 5px 0px;

}
a[href^="tel:"] {
    pointer-events: none;
}
.modal_tel a{
  border-bottom: 1px solid #E4007F;
  padding: 0px 0px 5px 0px;
  color: #000A33;
}

.modal_txt03{
  font-size: 14px;
  margin: 0px 0px 0px 0px;
  padding: 0px 0px 0px 0px;
}


.none{
    display: none;
}


.recruit_box{
  max-width: 60%;
}

.recruit_title{
  display: flex;
  font-size: 20px;
  margin: 20px 0px 0px 0px;
}

.recruit_title::before{
  content: "・";
  color: #E4007F;
  margin: 0px 0px 0px 0px;
  padding: 0px 0px 0px 0px;
}
#openModal02{
  display: block;
    border: 1px solid #ADADAD;
    padding: 10px 20px;
    color: #000A33;
    max-width: 300px;
    text-align: center;
}

#openModal02:hover{
  border: 1px solid #E4007F;
}


#openModal03{
}

#openModal03:hover{
}


.page-id-56 .box01_inner{
  width: 80%;
}
.mypage_box{
  margin: 30px 0px 0px 0px;
}

.top_icon{
  font-size: 12px;
  text-align: center;
  margin: 150px 0px 0px;
}

.mypage_list{
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.mypage_list li a{
  display: block;
    border: 1px solid #ADADAD;
    padding: 10px 20px;
    color: #000A33;
}

.mypage_list li a:hover{
border: 1px solid #E4007F;
}

#plugin_delete_me_shortcode_form input[type="submit" i] {
  display: block;
    border: 1px solid #ADADAD;
    padding: 10px 20px;
    color: #000A33;
    background-color: #fff;
    margin: 50px 0px 0px;
}
.me_txt{
  display: block;
  margin: 0px 0px 30px;

}
.schedulebox{
  margin: 100px 0px 0px 0px;
  max-width: 80%;
}


form#edit_schedule input.submit{
  display: block;
    border: 1px solid #ADADAD;
    padding: 10px 100px;
    color: #000A33;
    background-color: #fff;
    margin: 30px auto;
}

.wh_100{
  width: 100%;
}

.sc_box{
  width: 100%;
  margin: 50px 0px 0px 0px;
}

table.weekly_schedule th br{
  display: none;
}

.list_pagenavi .list_datenavi{
  margin: 20px 0px;
  display: flex;
  justify-content: center;
}
.list_datenavi a:first-child{
  font-size: 0px;
}
.list_datenavi a:first-child::before{
  content: "";
  display: block;
  width: 15px;
  height: 15px;
  background-size: contain;
  background-image: url(/img/teller/iconleft.png);
}

.list_datenavi a:last-child{
  font-size: 0px;
}
.list_datenavi a:last-child::before{
  content: "";
  display: block;
  width: 15px;
  height: 15px;
  background-size: contain;
  background-image: url(/img/teller/iconright.png);
}
