@charset "utf-8";
/*
Theme Name:ボートレースチケットショップ養老リニューアル2020
Author:JIMOTOPAGE
Author URI:http://jimotopage.com/
*/
/*------------------------------------------------------------
     common
------------------------------------------------------------ */
body {
  padding-top: 80px;
}
.webfont, time {
  font-family: 'Assistant', sans-serif;
}
a {
  opacity: 1;
  text-decoration: none;
  color: #000;
  -webkit-transition: 0.3s;
  -moz-transition: 0.3s;
  -o-transition: 0.3s;
  -ms-transition: 0.3s;
  transition: 0.3s;
}
a:hover {
  opacity: 0.8;
  filter: alpha(opacity=80);
  -moz-opacity: 0.8;
}
img, video {
  max-width: 100%;
  height: auto;
  vertical-align: bottom;
}
figure a {
  display: inline-block;
}
.bold {
  font-weight: bold;
}
.underline {
  text-decoration: underline;
}
.ment {
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 1.8;
}
.middle_ment {
  font-size: 15px;
  font-size: 1.5rem;
}
.large_ment {
  font-size: 16px;
  font-size: 1.6rem;
}
.mini_ment {
  font-size: 13px;
  font-size: 1.3rem;
}
.attention_txt {
  margin-left: 1em;
  text-indent: -1em;
}
/* h2 */
.h2_title {
  text-align: center;
  color: #FFF;
  font-size: 20px;
  font-size: 2.0rem;
  font-weight: 300;
  line-height: 1.1;
}
.h2_title span {
  display: block;
  font-family: 'Assistant', sans-serif;
  font-size: 36px;
  font-size: 3.6rem;
  font-weight: 800;
  letter-spacing: -.05em;
}
.h2_title.light {
  color: #000;
}
/* btn */
.more2 {
  text-align: center;
}
.more2 a {
  display: inline-block;
  width: 160px;
  padding: 10px;
  border: 2px solid #FFF;
  border-radius: 24px;
  margin-top: 48px;
  color: #FFF;
  font-size: 16px;
  font-size: 1.6rem;
  font-weight: 500;
}
.more2 a:hover {
  background-color: #FFF;
  color: #000;
  opacity: 1.0;
}
/* bg */
.bg_dark01 {
  background-color: #132547;
}
.bg_dark02 {
  background-color: #0F1F3B;
}
/* page top */
#pageTop {
  position: fixed;
  bottom: 64px;
  right: 48px;
  z-index: 500;
  -webkit-transition: 0s;
  -moz-transition: 0s;
  -o-transition: 0s;
  -ms-transition: 0s;
  transition: 0s;
}
/* ancher link */
.ancher {
  padding-top: 100px;
  margin-top: -100px;
  position: absolute;
  pointer-events: none;
}
/* header
------------------------------------------------------------ */
#header {
  width: 100%;
  background-color: #FFF;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 9999;
}
#header .container {
  width: 96%;
  margin-bottom: auto;
}
#header .container::after {
  content: "";
  display: block;
  clear: both;
}
/* logo */
#header .logo {
  float: left;
  padding: 14px 0 14px;
}
#header .logo a {
  height: 52px;
  line-height: 52px;
}
#header .logo img {
  vertical-align: middle;
}
/* nav */
#header #nav {
  float: right;
}
#nav ul::after {
  content: "";
  display: block;
  clear: both;
}
#nav ul li {
  float: left;
  background-image: url("img/common/hover.png");
}
#nav ul li a {
  display: block;
  height: 80px;
  padding: 15px;
  background-color: rgba(255, 255, 255, 1.0);
  position: relative;
  line-height: 50px;
}
#nav ul li a img {
  vertical-align: middle;
  -webkit-transition: 0.3s;
  -moz-transition: 0.3s;
  -o-transition: 0.3s;
  -ms-transition: 0.3s;
  transition: 0.3s;
}
#nav ul li a img.hover {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  opacity: 0;
}
#nav ul li.current a, #nav ul li a:hover {
  background-color: rgba(255, 255, 255, 0);
  opacity: 1.0;
}
#nav ul li.current a img.normal, #nav ul li a:hover img.normal {
  opacity: 0;
}
#nav ul li.current a img.hover, #nav ul li a:hover img.hover {
  opacity: 1.0;
}
.sp_nav {
  display: none;
}
/* container
------------------------------------------------------------ */
#contents {
  width: 100%;
}
.inner {
  overflow: hidden;
}
.container {
  width: 96%;
  max-width: 1080px;
  margin-left: auto;
  margin-right: auto;
}
.p_title {
  background-color: #a485b6;
  color: #FFF;
  font-size: 20px;
  font-size: 2.0rem;
  font-weight: bold;
  text-align: center;
}
/* side
------------------------------------------------------------ */
/* footer
------------------------------------------------------------ */
#footer .banner_area {
  padding: 55px 0 40px;
  background-color: #F6F6F6;
  font-size: 0;
  letter-spacing: 0;
}
.banner_area .va_t li {
  vertical-align: top;
}
.banner_area .va_m li {
  vertical-align: middle;
}
.banner_area .va_b li {
  vertical-align: bottom;
}
.banner_area li a {
  display: inline-block;
}
.banner_area ul::after {
  content: "";
  display: block;
  clear: both;
}
.banner_area .big_banners li {
  float: left;
  width: 45%;
  margin: auto 2.5%;
}
.banner_area .big_banners li:nth-child(2n-1) {
  text-align: right;
}
.banner_area .big_banners li:nth-child(2n) {
  text-align: left;
}
.banner_area .common_banners {
  margin: 50px auto -15px;
}
.banner_area .event_banners {
  margin: 15px auto -15px;
}
.banner_area .common_banners li, .banner_area .event_banners li {
  display: inline-block;
  width: 20%;
  margin: auto 2.5% 15px;
  text-align: center;
}
.banner_area .common_banners li a, .banner_area .event_banners li a, .banner_area .common_banners li img, .banner_area .event_banners li img {
  width: 100%;
}
.banner_area .common_banners li p {
  margin-top: 5px;
  text-align: left;
  font-size: 12px;
  font-size: 1.2rem;
}
.footer_info {
  padding: 30px 0;
  background-color: #FFF;
}
.footer_info .container::after {
  content: "";
  display: block;
  clear: both;
}
.footer_info .mini_logo {
  float: left;
  width: 45%;
}
.footer_info .ment {
  float: right;
  width: 55%;
  margin-top: 10px;
  text-align: right;
  font-size: 14px;
  font-size: 1.4rem;
}
.footer_info .copyright {
  margin-top: 10px;
  font-size: 12px;
  font-size: 1.2rem;
}
.footer_info .inner .box {
  float: left;
}
.footer_area .inner .ment {
  float: right;
  text-align: right;
  margin-top: 10px;
}
.footer_area .inner .box .webfont.copyright {
  font-size: 12px;
  font-size: 1.2rem;
}
.c-footer-row {
  display: flex;
  flex-direction: row-reverse;
  align-items: flex-end;
  float: left;
  margin-top: 10px;
}
.c-footer-nav {
  padding: .25em 0;
  margin-left: 40px;
}
.c-footer-nav__group {
  display: flex;
  flex-wrap: wrap;
  margin: -5px -20px;
}
.c-footer-nav__group-item {
  padding: 5px 20px;
}
.c-footer-nav__link {
  padding-left: 1em;
  position: relative;
  color: #004897;
  font-size: 12px;
  font-size: 1.2rem;
  line-height: 1;
}
.c-footer-nav__link::before {
  content: "";
  display: block;
  width: .5em;
  height: .5em;
  border-top: 1px solid #004897;
  border-right: 1px solid #004897;
  position: absolute;
  top: .75em;
  left: 0;
  transform: rotate(45deg);
}
/*------------------------------------------------------------
     index
------------------------------------------------------------ */
/* メインイメージ */
.main_image .main_video video {
  width: 100%;
  height: auto;
}
.main_image .main_banners {
  overflow: hidden;
}
.main_image .main_banners .bx-wrapper {
  border: none;
  margin-bottom: auto;
}
.main_image .main_banners a {
  display: block;
}
.main_image .main_banners img {
  width: 100%;
}
@media screen and (min-width: 768px) {
  .main_image .main_banners ul::after {
    content: "";
    display: block;
    clear: both;
  }
  .main_image .main_banners ul li {
    float: left;
    width: 50%;
  }
}
@media screen and (min-width: 1023px) {
  .main_image .main_banners ul li {
    width: 25%;
  }
}
/* 本日の発売 */
.todays_race {
  padding: 45px 0 75px;
}
.todays_race .h2_title {
  margin-bottom: 25px;
}
.todays_race .start_time_wrap {
  margin-bottom: 45px;
  text-align: center;
}
.todays_race .start_time {
  display: inline-block;
  padding: 0 10px;
  background-color: #FFF;
  color: #132547;
  font-size: 20px;
  font-size: 2.0rem;
  font-weight: 400;
}
.todays_race .start_time dl {
  display: table;
  background-color: #FFF;
  color: #132547;
  font-size: 20px;
  font-size: 2.0rem;
  font-weight: 400;
}
.todays_race .start_time dl dt, .todays_race .start_time dl dd {
  display: table-cell;
  padding: 5px;
  vertical-align: middle;
}
.todays_race .start_time dl dd {
  font-size: 36px;
  font-size: 3.6rem;
  font-weight: 700;
}
.todays_table {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  text-align: center;
  border: 1px solid #FFF;
}
.todays_table dl {
  width: 34%;
}
.todays_table dl + dl {
  border-left: 1px solid #FFF;
}
.todays_table dl dt {
  border-bottom: 1px solid #FFF;
  font-size: 20px;
  font-size: 2.0rem;
  font-weight: 700;
  line-height: 60px;
}
.todays_table dl dt.morning {
  background-color: #FFFF00;
}
.todays_table dl dt.day {
  background-color: #B3D465;
}
.todays_table dl dt.night {
  background-color: #7ECEF4;
}
.todays_table dl dt span {
  display: inline-block;
  position: relative;
}
.todays_table dl dt span img {
  position: absolute;
  right: 110%;
  top: 0;
  bottom: 0;
  margin: auto;
}
.todays_table dl dd {
  min-height: 60px;
  color: #FFF;
}
.todays_table dl dd ul {
  margin-bottom: -1px;
}
.todays_table dl dd ul li {
  padding: 13px 10px;
  border-bottom: 1px solid #FFF;
  font-size: 22px;
  font-size: 2.2rem;
}
.todays_race .prepa {
  text-align: center;
  color: #FFF;
  font-size: 22px;
  font-size: 2.2rem;
}
/* 新着情報・イベント */
.top_information {
  padding: 45px 0 75px;
}
.top_information .h2_title {
  margin-bottom: 45px;
}
.top_information .wrap {
  position: relative;
}
.top_information .blog_lists {
  padding-right: 37.037%;
}
.top_information .blog_lists li {
  padding: 10px;
  background-color: #FFF;
}
.top_information .blog_lists li::after {
  content: "";
  display: block;
  clear: both;
}
.top_information .blog_lists li + li {
  margin-top: 15px;
}
.top_information .blog_lists figure {
  float: left;
}
.top_information .blog_lists .blog_data {
  padding: 5px 0;
  margin-left: 220px;
}
.top_information .blog_data time {
  display: inline-block;
  margin-right: 15px;
  font-size: 17px;
  font-size: 1.7rem;
  font-weight: 600;
  letter-spacing: -.025em;
  vertical-align: middle;
}
.top_information .blog_data .cat {
  display: inline-block;
  vertical-align: middle;
}
.top_information .blog_data .cat a {
  display: inline-block;
  min-width: 78px;
  padding: 1px 10px;
  background-color: #132547;
  text-align: center;
  color: #FFF;
  font-size: 12px;
  font-size: 1.2rem;
  font-weight: 700;
}
.top_information .blog_data h3 {
  margin-top: 5px;
  font-size: 16px;
  font-size: 1.6rem;
  font-weight: 700;
}
.top_information .blog_data .ment {
  margin-top: 10px;
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 1.5714;
}
.top_information .twitter_wrap {
  position: absolute;
  top: 0;
  right: 0;
}
.top_information .twitter_wrap a {
  color: #FFF;
}
.top_information .info_banner {
  margin-top: 65px;
  text-align: center;
}
/* 今月の発売日程 */
.top_schedule {
  padding: 45px 0 90px;
}
.top_schedule .h2_title {
  margin-bottom: 35px;
}
.top_schedule .post {
  padding: 10px 0;
  background-color: #FFF;
}
table.style01 {
  width: 100%;
  border-collapse: collapse;
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 1.5;
  border-top: 1px solid #000;
  border-left: 1px solid #000;
  margin: 0 auto;
  vertical-align: middle;
}
/* thの指定 */
table.style01 th {
  background-color: #f7f7f7;
  border-right: 1px solid #000;
  border-bottom: 1px solid #000;
  padding: 10px 16px;
  width: 30%;
  font-weight: normal;
  text-align: center;
  vertical-align: middle;
}
/* tr tdの指定 */
table.style01 td {
  width: 70%;
  background-color: #EEEEEE;
  border-right: 1px solid #000;
  border-bottom: 1px solid #000;
  text-align: left;
  font-weight: bold;
  vertical-align: middle;
}
table.style01 td ul li {
  padding: 10px 16px;
  border-bottom: 1px solid #000;
}
table.style01 td ul li:last-child {
  border-bottom: none;
}
.type_yellow {
  background-color: #fff100;
}
.type_green {
  background-color: #adcc66;
}
.type_orange {
  background-color: #efb051;
}
.type_red {
  background-color: #d71618;
  color: #FFF;
}
.type_pink2 {
  background-color: #f4b4d0;
}
.type_blue2 {
  background-color: #7dc5e8;
}
.cal_box {
  width: 980px;
}
.cal_box table {
  width: 100%;
}
.cal_box table, .cal_box table td, .cal_box table th {
  border: 1px solid #595959;
  border-collapse: collapse;
  vertical-align: middle;
  font-size: 16px;
  font-size: 1.6rem;
  text-align: center;
}
.cal_box table td, .cal_box table th {
  font-weight: bold;
}
.cal_box table th {
  padding: 5px 0;
}
.cal_box table td {
  min-width: 22px;
  padding: 5px 0;
  font-size: 20px;
}
.cal_box table td img, .kasou_cal_box table td img {
  padding: 10px 0 5px;
}
.cal_box table tr:nth-child(3) td img, .kasou_cal_box table tr:nth-child(3) td img {
  padding: 40px 0 35px;
}
#archive_list li .box .desc table td:first-child p {
  margin-bottom: 0;
}
.cal_box table .c_img_t {
  padding: 0;
  width: 15px;
}
.cal_box table .odd {
  background: #fefcf9;
}
.cal_box table tr th.ym {
  background-color: #003d8c;
  color: #fff;
  padding: 5px 2px 5px 7px;
  text-align: left;
  font-weight: bold;
  line-height: 1.1;
  font-size: 20px;
}
.cal_box table tr th.ym span {
  font-size: 40px;
}
/*------------------------------------------------------------
     kasou
------------------------------------------------------------ */
/* common
------------------------------------------------------------ */
/* kasou title */
.kasou_title {
  padding: 105px 0;
  background-size: cover;
  background-position: center;
}
.kasou_title.kt_info {
  background-image: url("img/kasou/kt_img_info.jpg");
}
.kasou_title.kt_schedule {
  background-image: url("img/kasou/kt_img_schedule.jpg");
}
.kasou_title.kt_guide {
  background-image: url("img/kasou/kt_img_guide.jpg");
}
.kasou_title.kt_access {
  background-image: url("img/kasou/kt_img_access.jpg");
}
.kasou_title h1 {
  color: #FFF;
  text-align: center;
  font-size: 36px;
  font-size: 3.6rem;
  font-weight: 100;
  line-height: 1.1;
}
.kasou_title h1 span {
  display: block;
  font-family: 'Assistant', sans-serif;
  color: rgba(255, 255, 255, .5);
  font-size: 60px;
  font-size: 6.0rem;
  font-weight: 700;
  letter-spacing: -.025em;
}
/* pankuzu */
#pankuzu {
  width: 96%;
  max-width: 1080px;
  margin: auto auto 80px;
  color: #FFF;
  font-size: 11px;
  font-size: 1.1rem;
  font-weight: 300;
}
#pankuzu a {
  color: #FFF;
}
#pankuzu a:hover {
  text-decoration: underline;
}
/* main */
#main.kasou {
  padding: 10px 0 160px;
  background-color: #132547;
}
/* content */
.content_box {
  padding: 1.85%;
  background-color: #FFF;
}
.content_box + .content_box {
  margin-top: 45px;
}
/* title */
.subtitle {
  display: block;
  padding-left: 20px;
  border-left: 10px solid #132547;
  margin: 20px auto;
  color: #132547;
  font-size: 18px;
  font-size: 1.8rem;
  font-weight: bold;
}
/* guide
------------------------------------------------------------ */
#guide .floormap ul::after {
  content: "";
  display: block;
  clear: both;
}
#guide .floormap ul li {
  float: left;
  width: 50%;
  padding: 0 3%;
  margin-bottom: 40px;
}
#guide .floormap ul li > * {
  max-width: 300px;
  margin-left: auto;
  margin-right: auto;
}
#guide .floormap ul li h3 {
  padding-left: 52px;
  position: relative;
  margin-bottom: 12px;
  font-size: 20px;
  font-size: 2.0rem;
  font-weight: 700;
}
#guide .floormap ul li h3 span {
  display: block;
  width: 36px;
  height: 36px;
  line-height: 36px;
  background-color: #132547;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  text-align: center;
  font-family: 'Assistant', sans-serif;
  color: #FFF;
}
#guide .floormap ul li figure figcaption {
  display: block;
  margin-top: 15px;
  font-size: 15px;
  font-size: 1.5rem;
}
.p-guid-floor__vip-note {
  display: block;
  margin-top: .5em;
  font-size: 12px;
  font-size: 1.2rem;
}
#guide .floormap ul li .ment {
  padding: 45px 20px 50px 40px;
  background-color: #132547;
  color: #FFF;
  font-size: 16px;
  font-size: 1.6rem;
  font-weight: 700;
}
/* table */
.style2 {
  width: 100%;
  border-collapse: collapse;
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 1.5;
  margin: 0 auto;
}
/* thの指定 */
.style2 th {
  border-bottom: 2px solid #132547;
  padding: 16px;
  width: 20%;
  text-align: left;
  font-weight: normal;
}
/* tr tdの指定 */
.style2 td {
  width: 80%;
  font-weight: normal;
  background-color: #FFFFFF;
  border-bottom: 2px solid #132547;
  text-align: left;
  padding: 16px;
  padding-left: 24px;
}
/* access
------------------------------------------------------------ */
#access .access .subtitle2 {
  margin: 10px auto;
  font-size: 18px;
  font-size: 1.8rem;
  font-weight: 700;
}
#access .access .ment {
  margin-bottom: 20px;
  font-size: 15px;
  font-size: 1.5rem;
  letter-spacing: .1em;
}
#access .access iframe {
  max-width: 100%;
  margin-bottom: 30px;
  vertical-align: bottom;
}
#access .access .inner::after {
  content: "";
  display: block;
  clear: both;
}
#access .access .inner .box {
  float: left;
}
#access .access .inner figure {
  float: right;
  max-width: 50%;
}
#access .access .inner .ment + .subtitle {
  margin-top: 40px;
}
#access .access .inner .ment {
  line-height: 2.2;
}
/* ------------------------------------------------------
    archive 
--------------------------------------------------------- */
.archive_lists > li + li {
  margin-top: 45px;
}
/*  ページャー
------------------------------------------------------------*/
.wp-pagenavi {
  margin-top: 30px;
  clear: both;
  font-size: 12px;
  font-size: 1.2rem;
  line-height: 1.5;
  overflow: hidden;
}
.wp-pagenavi span, .wp-pagenavi a {
  display: block;
  float: left;
  margin: 2px 4px 2px 0;
  padding: 6px 10px 5px 10px;
  text-decoration: none;
  width: auto;
  color: #132547;
  background-color: #FFF;
  line-height: 1.5;
  font-weight: 600;
  vertical-align: middle;
  border: 2px solid #FFF;
  font-size: 1.3rem;
}
.wp-pagenavi a:hover {
  color: #fff;
  background-color: #132547;
  opacity: 1;
}
.wp-pagenavi .current {
  padding: 6px 10px 5px 10px;
  background-color: #132547;
  color: #fff;
}
/*------------------------------------------------------------
     404
------------------------------------------------------------ */
#page404 h1 {
  color: #FFF;
  font-size: 30px;
  font-size: 3.0rem;
  letter-spacing: .05em;
}
#page404 p {
  margin-top: 30px;
  color: #FFF;
  font-size: 16px;
  font-size: 1.6rem;
  letter-spacing: .05em;
}
#page404 p a {
  color: #FFF;
  text-decoration: underline;
}

/*------------------------------------------------------------
     個人情報保護方針
------------------------------------------------------------ */
.p-privacy-post {
  padding: 10px 20px 0;
  border-top: 1px solid #BDBDBD;
}
.p-privacy-post.post h2 {
  margin-bottom: 10px;
  color: #004897;
  font-size: 18px;
  font-size: 1.8rem;
  font-weight: 700;
  text-decoration: underline;
}.p-privacy-post.post h2:not(:first-child) {
  margin-top: 30px;
}
.p-privacy-post.post h3 {
  margin-bottom: 5px;
  font-size: 16px;
  font-size: 1.6rem;
  font-weight: 700;
}