/*!
Template: cp5-t005-MODERN
Theme Name: CP5 T005-MODERN-wht
Theme URI: https://castpro-cms.com/
Author:  CASTPRO
Author URI: https://castpro-cms.com/
Description: CP5 T005-MODERN Parent Theme + White Child Theme
Version: 1.2.1
Text Domain: cp5e5000-child-001
Tags:CASTPRO,T005-MODERN,1 Column
*/
/**/
.sp-br {
  display: none;
}

.maB2 {
  margin-bottom: 2rem !important;
}

.maB3 {
  margin-bottom: 3rem !important;
}

.maB4 {
  margin-bottom: 4rem !important;
}

.maB5 {
  margin-bottom: 5rem !important;
}

.per50 {
  width: 50%;
  margin: 1rem auto !important;
}


/*Layout*/
#content-block {
  background-color: #FFF;
}

.row {
  max-width: 110rem;
}

/*Header*/
#header h1 {
  margin: 0;
}

#header #logo a {
  display: block;
  padding: 1rem 0;
}

#header #header-logo-col a img {
  width: 80%;
  height: auto;
}

#header .shop-info.address {
  color: #000;
  font-size: 1.2rem;
  padding-top: .25rem;
}

#header .shop-info.shop-tel {
  margin-left: 1rem;
}

#header .info-label {
  font-size: 1.5rem;
}

.main-navigation a {
  padding: 0.5rem 1.25rem;
}

.main-navigation ul ul {
  top: calc(4.9rem) !important;
}

@media screen and (min-width: 64em) {

  #header #header-block-col .open .num {
    font-size: 2.4rem;
    vertical-align: baseline;
  }
}

@media screen and (min-width: 48em) and (max-width: 63.9375em) {
  #header {
    padding: 0.5rem 5.8rem 0.5rem 1rem;
  }
}

body.home #header.sticking {
  top: 0;
}

body.home #header.sticking.off {
  top: 0;
}

.drawer-hamburger {
  background-color: transparent !important;
  width: 3.4rem;
  padding: 3.1rem 1rem !important;
}

.drawer-hamburger-icon {
  margin-top: 0;
}

.drawer-open .drawer-hamburger {
  background-color: #FFF !important;
}

#drawer_logo {
  max-width: 60%;
  margin: 1rem auto;
}

.drawer-menu>li {
  border-bottom: none;
  border-top: 1px solid #ddd;
}

.drawer-menu>li:last-child {
  border-bottom: 1px solid #ddd;
}

.drawer-menu>li .sub-menu>li a, .drawer-menu>li .children>li a {
  padding-left: 2rem;
}


/*Title*/
#system .system-title {
  padding-top: 4rem;
}

.top_title {
  font-size: 4.2rem;
  line-height: 1.4;
  color: #ff3d73;
  font-weight: bold;
}

.middle_title {
  font-size: 1.8rem;
  line-height: 1.8;
}

#main-content .page-title .title-name,
#main-content .widget-title .title-name {
  padding: 1rem 4rem !important;
  color: #fff !important;
  border-radius: 100vh;
  background-image: -webkit-gradient(linear, right top, left top, from(#fdd6bd), to(#ff3d73));
  background-image: -webkit-linear-gradient(right, #fdd6bd 0%, #ff3d73 100%);
  background-image: linear-gradient(to left, #fdd6bd 0%, #ff3d73 100%);
  border: none !important;
}

#single .post-title,
#main-content .profile-title .title-name,
#system .system-title, .entry-header .entry-title, .entry-title {
  font-size: 1.8rem;
  position: relative;
  padding-bottom: .5rem !important;
  margin-bottom: 1rem;
  display: inline-block;
  border: none !important;
  max-width: 100%;
}

#main-content .profile-title .title-name {
  margin-bottom: .5rem;

}

#single .post-title::after,
#main-content .profile-title .title-name::after,
#system .system-title::after,
.entry-header .entry-title::after,
.entry-title::after {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 5px;
  content: '';
  background-image: -webkit-gradient(linear, left top, right top, from(#ff3d73), to(#fdd6bd));
  background-image: -webkit-linear-gradient(left, #ff3d73 0%, #fdd6bd 100%);
  background-image: linear-gradient(to right, #ff3d73 0%, #fdd6bd 100%);
}

/*Home*/
.widget_cp5_cast_slider .horizontal .cast-section, .widget_cp5_cast_slider .vertical .cast-section, .widget_cp5_schedule_slider .horizontal .cast-section {
  padding: 0 0 0 .5rem;
}

#block-32 {
  text-align: center;
}

#block-32>.widget-block {
  display: inline-block;
}

#block-32>.widget-block a:hover img {
  opacity: .7;
}

/*Castpage*/
#profile-frame #profile-section .profile-faq-lists dd {
  padding: 0 0 1rem;
}

.cast-main-image {
  width: 100%;
  height: auto;
}

#main-content .profile-title {
  text-align: left !important;
}

#profile-frame #profile-detail #profile-name .name {
  font-size: 2.4rem;
}

#profile-frame #profile-detail #profile-icons {
  margin: 0 0 3rem;
}

#profile-frame .profile-frame {
  margin: 0 0 3rem;
}

#profile-frame .profile-title .title-name {
  font-size: 2rem;
}

#profile-frame #profile-section .profile-faq-lists {
  display: flex;
  flex-wrap: wrap;
}

#profile-frame #profile-section .profile-faq-lists dt {
  width: 40%;
  border-bottom: 1px solid #d4d4d4;
  float: left;
  padding: 0.5rem;
  font-size: 1.6rem;
}

#profile-frame #profile-section .profile-faq-lists dd {
  width: 60%;
  float: right;
  padding: 0.5rem;
  font-size: 1.6rem;
  border-bottom: 1px solid #d4d4d4;
}

.profile-weekly-schedule-list li .weekly-date.head, .weekly-schedule-list li .weekly-date.head {
  padding: .5rem;
}

.profile-weekly-schedule-list li .weekly-date, .profile-weekly-schedule-list li .weekly-time, .weekly-schedule-list li .weekly-date, .weekly-schedule-list li .weekly-time {
  padding: .5rem;
}

/*Map*/
.map_wrap {
  position: relative;
  width: 100%;
  padding: calc(400 / 1200 * 100%) 0 0;
  margin: 2rem auto;
}

@media screen and (max-width: 897px) {
  .map_wrap {
    padding: calc(350 / 500 * 100%) 0 0;
  }
}

@media screen and (max-width: 481px) {
  .map_wrap {
    padding: calc(700 / 500 * 100%) 0 0;
  }
}

.map_wrap iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

/*Table*/
thead th, thead td, tfoot th, tfoot td {
  padding: 2rem 1rem;
}

thead th {
  font-size: 1.6rem;
}

tbody th, tbody td {
  padding: 2rem 1rem;
}

.recruit-table, .access-table {
  width: 100%;
  margin: 2rem 0 1rem;
}

.recruit-table th, .recruit-table td, .access-table th, .access-table td {
  border-width: 1px;
  border-style: solid;
}

.recruit-table th, .access-table th {
  border-left: 1px solid transparent !important;
  border-right: 1px solid transparent !important;
  padding: 2rem 1rem 2rem;
  font-size: 1.6rem;
  position: relative;
}

.recruit-table th::after, .access-table th::after {
  position: absolute;
  content: "";
  width: 1px;
  height: calc(100% - 3rem);
  background: #d4d4d4;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
}

.recruit-table td, .access-table td {
  border-right: 1px solid transparent !important;
  padding: 2rem;
}

/*Footer*/
.pre-footer-widget a:hover img {
  opacity: .7;
}

#footer {
  text-align: center;
  background-image: linear-gradient(-20deg, #fdd6bd 0%, #ff3d73 100%);
  padding: 5rem 0 0;
}

#footer a {
  text-decoration: none;
}

#f_logo {
  width: 60%;
  max-width: 300px;
  margin: 0 auto 3rem;
}

#f_logo>a {
  display: block;
}

#f_logo>a>img {
  max-width: 100%;
  height: auto;
}

#f_logo>a:hover>img {
  opacity: 0.7;
}

#footer_info {
  font-size: 2rem;
  margin: 0 0 3rem;
}

#footer_info .info_title {
  font-size: 1rem;
  margin: 0 .5rem 0;
}

#footer #footer-widget-col .widget_nav_menu ul {
  padding: 1rem 0;
}

#footer #footer-widget-col .widget_nav_menu ul li {
  border-bottom-style: none;
  display: inline-block;
  margin: 0 0 .25rem;
  height: auto;
  padding: .25rem 0;
  border-right: 0 solid transparent;
  border-right-color: transparent;
  letter-spacing: 0.08em;
}

#footer-widget-col .widget_nav_menu .menu li a {
  padding: .25rem 1rem;
  border-right: 1px solid #000;
}

#footer-widget-col .widget_nav_menu .menu li:last-child a {
  border-right: none;
}

#footer .ban {
  font-size: 1rem;
  margin-bottom: 2rem;
}

#footer #footer-copy {
  padding: 1rem 0;
  border-top: none;
  background-color: #ff3d73;
  margin: 0;
  max-width: 100%;
  color: #FFF;
}

#footer #footer-copy a {
  color: #FFF;
}

#footer #footer-copy a:hover {
  opacity: 0.7;
}

/*ScrollTop*/
.material-scrolltop {
  bottom: 40px;
  border-width: 0 !important;
}

.material-scrolltop.reveal {
  width: 48px;
  height: 48px;
  border-width: 2px !important;
  color: #FF93B1;
  border-color: #FF93B1;
}

#bottom_info {
  visibility: hidden;
}

#bottom_info {
  position: fixed;
  width: 100%;
  bottom: -100px;
  transition: all .5s ease;
  z-index: 999;
  border-top: 1px solid #ECECEC;
  width: 100%;
  height: 4rem;
  padding: 0;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
}

#bottom_info.view {
  bottom: 0;
}

#bottom_info p {
  text-align: center;
  height: 4rem;
  font-size: 1.1rem;
  font-weight: bold;
  width: 33.3%;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-justify-content: center;
  -ms-justify-content: center;
  justify-content: center;
  line-height: 1.3;
}

#bottom_info p a {
  display: block;
  width: 100%;
  height: 100%;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-justify-content: center;
  -ms-justify-content: center;
  justify-content: center;
}

.footer_open {
  background-color: #FFF;
  color: #FF3D73;
}

.footer_tel {
  background-color: #FF93B1;
}

.footer_tel a {
  background-color: #FF93B1;
  color: #FFF;
}

.footer_tel a:hover {
  color: #FFF;
  opacity: 0.7;
}

.footer_line {
  background-color: #06c755;
}

.footer_line a {
  background-color: #06c755;
  color: #FFF;
}

.footer_line a:hover {
  color: #FFF;
  opacity: 0.7;
}

/*Breadcrumb*/
#breadcrumb ul.breadcrumb-list {
  font-size: 1.4rem;
}



@media (min-width: 600px) {
  a[href^="tel:"] {
    pointer-events: none;
  }

  .pc_none {
    display: none;
  }

  #footer .ban {
    font-size: 1.2rem;
  }

}

@media screen and (max-width: 600px) {
  .top_title {
    font-size: 2.2rem;
  }

  .middle_title {
    font-size: 1.6rem;
  }

  .sp-br {
    display: inline-block;
  }

  #breadcrumb ul.breadcrumb-list {
    font-size: 1.2rem;
  }

  #profile-frame #profile-section .profile-faq-lists dt {
    padding: 0.5rem 0.5rem 0.5rem 0;
  }

  #profile-frame .profile-title .title-name {
    font-size: 1.8rem;
  }

  #profile-frame #profile-section .profile-faq-lists dt {
    font-size: 1.4rem;
  }

  #profile-frame #profile-section .profile-faq-lists dd {
    font-size: 1.4rem;
  }

  #profile-frame #profile-detail #profile-icons {
    margin: 0 0 2rem;
  }

  #profile-frame .profile-frame {
    margin: 0 0 2rem;
  }

  #footer-widget-col .widget_nav_menu .menu li a {
    padding: .5rem 1rem;
    border-right: none;
    display: inline-block;
  }

  #footer {
    margin-bottom: 4rem;
  }

  #bottom_info {
    visibility: visible;
  }

}


.swiper-button-next.swiper-button-black, .swiper-container-rtl .swiper-button-prev.swiper-button-black {
  border-radius: 100px;
}

.swiper-button-prev.swiper-button-black, .swiper-container-rtl .swiper-button-next.swiper-button-black {
  border-radius: 100px;
}