@charset "UTF-8";
/*
Theme Name: 行田市鉄剣マラソン2026
Theme URI: http://www.approad.co.jp/
Author: Approad Co., Ltd.
Author URI: http://www.approad.co.jp/
Description: Approad Co., Ltd.
Version: 1.0.0
Text Domain: tekken_2026

k2m is based on Underscores http://underscores.me/, (C) 2012-2016 Automattic, Inc.
Underscores is distributed under the terms of the GNU GPL v2 or later.

Normalizing styles have been helped along thanks to the fine work of
Nicolas Gallagher and Jonathan Neal http://necolas.github.com/normalize.css/
*/
@import url(https://fonts.googleapis.com/css?family=Lato:400,700,900,300,100|Old+Standard+TT:400,400italic,700|Roboto:400,100,100italic,300,300italic,400italic,500,500italic,700,700italic,900,900italic);
.clearfix, .container, .header-base, .header-menu-container, .banner-sponsor, .banner-link, .insta-list, .sns-button ul, .container-body .pageGallerylist, .container-body .faq-list-a-text {
  *zoom: 1; }
  .clearfix:after, .container:after, .header-base:after, .header-menu-container:after, .banner-sponsor:after, .banner-link:after, .insta-list:after, .sns-button ul:after, .container-body .pageGallerylist:after, .container-body .faq-list-a-text:after {
    content: "";
    display: table;
    clear: both; }

/* --- サイト内共通 ----------------------------------------------------------------------------------------- */
html {
  font-size: 62.5%;
  font-family: "Lato", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic Pro", "游ゴシック", YuGothic, "メイリオ", "Meiryo", sans-serif; }
  @media (min-width: 48em) {
    html {
      font-size: 125%; } }

body {
  position: relative;
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 1.625;
  color: #555; }
  @media (min-width: 48em) {
    body {
      font-size: 0.8rem; } }

a {
  position: relative;
  text-decoration: none;
  color: #183173;
  outline: none;
  -webkit-transition: 0.3s ease-in-out;
  -moz-transition: 0.3s ease-in-out;
  -o-transition: 0.3s ease-in-out;
  -ms-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out; }
  a:hover {
    color: #183173; }

.wrapper {
  overflow: hidden; }

.container {
  margin: 0 auto;
  padding-left: 0.75rem;
  padding-right: 0.75rem; }
  @media (min-width: 64em) {
    .container {
      max-width: 1230px; } }

.col-md-1,
.col-md-2,
.col-md-3,
.col-md-4,
.col-md-5,
.col-md-6,
.col-md-7,
.col-md-8,
.col-md-9,
.col-md-10,
.col-md-11,
.col-md-12 {
  float: left;
  position: relative;
  min-height: 1px;
  padding-left: 0.75rem;
  padding-right: 0.75rem;
  padding-bottom: 1.5rem; }

.col-md-1 {
  float: none; }
  @media (min-width: 48em) {
    .col-md-1 {
      float: left;
      width: 8.3333%; } }

.col-md-2 {
  float: none; }
  @media (min-width: 48em) {
    .col-md-2 {
      float: left;
      width: 16.6666%; } }

.col-md-3 {
  float: none;
  width: 100%; }
  @media (min-width: 48em) {
    .col-md-3 {
      float: left;
      width: 50%; } }
  @media (min-width: 62em) {
    .col-md-3 {
      width: 25%; } }

.col-md-4 {
  float: none;
  width: 100%; }
  @media (min-width: 48em) {
    .col-md-4 {
      float: left;
      width: 50%; } }
  @media (min-width: 62em) {
    .col-md-4 {
      width: 33.3333%; } }

.col-md-5 {
  float: none;
  width: 100%; }
  @media (min-width: 48em) {
    .col-md-5 {
      float: left;
      width: 41.6666%; } }

.col-md-6 {
  float: none;
  width: 100%; }
  @media (min-width: 30em) {
    .col-md-6 {
      float: left;
      width: 50%; } }

.col-md-7,
.col-md-8,
.col-md-9,
.col-md-10,
.col-md-11,
.col-md-12 {
  float: none;
  width: 100%; }
  @media (min-width: 62em) {
    .col-md-7,
    .col-md-8,
    .col-md-9,
    .col-md-10,
    .col-md-11,
    .col-md-12 {
      float: left;
      width: 58.3333%; } }

@media (min-width: 62em) {
  .col-md-8 {
    width: 66.6666%; } }

@media (min-width: 62em) {
  .col-md-9 {
    width: 75%; } }

@media (min-width: 62em) {
  .col-md-10 {
    width: 83.3333%; } }

@media (min-width: 62em) {
  .col-md-11 {
    width: 91.6666%; } }

@media (min-width: 62em) {
  .col-md-12 {
    float: none;
    width: 100%; } }

.pd-4px-8px {
  padding-top: 0.4rem !important;
  padding-bottom: 0.4rem !important; }

.pd-8px-16px {
  padding-top: 0.8rem !important;
  padding-bottom: 0.8rem !important; }

.pd-12px-24px {
  padding-top: 1.2rem !important;
  padding-bottom: 1.2rem !important; }

.pd-16px-32px {
  padding-top: 1.6rem !important;
  padding-bottom: 1.6rem !important; }

.pd-20px-40px {
  padding-top: 2rem !important;
  padding-bottom: 2rem !important; }

.pd-24px-48px {
  padding-top: 2.4rem !important;
  padding-bottom: 2.4rem !important; }

.pd-28px-56px {
  padding-top: 2.8rem !important;
  padding-bottom: 2.8rem !important; }

.pd-32px-64px {
  padding-top: 3.2rem !important;
  padding-bottom: 3.2rem !important; }

.pd-36px-72px {
  padding-top: 3.6rem !important;
  padding-bottom: 3.6rem !important; }

.pd-40px-80px {
  padding-top: 4rem !important;
  padding-bottom: 4rem !important; }

.pd-box-4px-8px {
  padding: 0.4rem !important; }

.pd-box-8px-16px {
  padding: 0.8rem !important; }

.pd-box-12px-24px {
  padding: 1.2rem !important; }

.pd-box-16px-32px {
  padding: 1.6rem !important; }

.pd-box-20px-40px {
  padding: 2rem !important; }

.pd-box-24px-48px {
  padding: 2.4rem !important; }

.pd-box-28px-56px {
  padding: 2.8rem !important; }

.pd-box-32px-64px {
  padding: 3.2rem !important; }

.pd-box-36px-72px {
  padding: 3.6rem !important; }

.pd-box-40px-80px {
  padding: 4rem !important; }

.mg-bottom-4px-8px {
  margin-bottom: 0.4rem !important; }

.mg-bottom-8px-16px {
  margin-bottom: 0.8rem !important; }

.mg-bottom-12px-24px {
  margin-bottom: 1.2rem !important; }

.mg-bottom-16px-32px {
  margin-bottom: 1.6rem !important; }

.mg-bottom-20px-40px {
  margin-bottom: 2rem !important; }

.mg-bottom-24px-48px {
  margin-bottom: 2.4rem !important; }

.mg-bottom-28px-56px {
  margin-bottom: 2.8rem !important; }

.mg-bottom-32px-64px {
  margin-bottom: 3.2rem !important; }

.mg-bottom-36px-72px {
  margin-bottom: 3.6rem !important; }

.mg-bottom-40px-80px {
  margin-bottom: 4rem !important; }

.w-10pc {
  width: 10% !important; }

.w-20pc {
  width: 20% !important; }

.w-30pc {
  width: 30% !important; }

.w-40pc {
  width: 40% !important; }

.w-50pc {
  width: 50% !important; }

.w-60pc {
  width: 60% !important; }

.w-70pc {
  width: 70% !important; }

.w-80pc {
  width: 80% !important; }

.w-90pc {
  width: 90% !important; }

.w-100pc {
  width: 100% !important; }

.text-center {
  text-align: center; }
.text-left {
  text-align: left; }
.text-right {
  text-align: right; }

.fo-st-italic {
  font-style: italic; }
.fo-st-normal {
  font-style: normal; }

.fo-w-normal {
  font-weight: normal; }
.fo-w-bold {
  font-weight: bold; }
.fo-w-100 {
  font-weight: 100; }
.fo-w-300 {
  font-weight: 300; }
.fo-w-400 {
  font-weight: 400; }
.fo-w-700 {
  font-weight: 700; }
.fo-w-900 {
  font-weight: 900; }

.fo-fa-Lato {
  font-family: Lato; }
.fo-fa-Roboto {
  font-family: Roboto; }
.fo-fa-Old_Standard_TT {
  font-family: Old Standard TT; }
.fo-fa-jp-go {
  font-family: "Lato", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic Pro", "游ゴシック", YuGothic, "メイリオ", "Meiryo", sans-serif; }
.fo-fa-jp-min {
  font-family: "Old Standard TT", "Times New Roman", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "游明朝", YuMincho, "HGS明朝E", "ＭＳ Ｐ明朝", serif; }

.fo-2px {
  font-size: 2px;
  font-size: 0.2rem;
  line-height: 5; }
  @media (min-width: 48em) {
    .fo-2px {
      font-size: 0.1rem; } }

.fo-4px {
  font-size: 4px;
  font-size: 0.4rem;
  line-height: 3; }
  @media (min-width: 48em) {
    .fo-4px {
      font-size: 0.2rem; } }

.fo-6px {
  font-size: 6px;
  font-size: 0.6rem;
  line-height: 2.33333; }
  @media (min-width: 48em) {
    .fo-6px {
      font-size: 0.3rem; } }

.fo-8px {
  font-size: 8px;
  font-size: 0.8rem;
  line-height: 2; }
  @media (min-width: 48em) {
    .fo-8px {
      font-size: 0.4rem; } }

.fo-10px {
  font-size: 10px;
  font-size: 1rem;
  line-height: 1.8; }
  @media (min-width: 48em) {
    .fo-10px {
      font-size: 0.5rem; } }

.fo-12px {
  font-size: 12px;
  font-size: 1.2rem;
  line-height: 1.66667; }
  @media (min-width: 48em) {
    .fo-12px {
      font-size: 0.6rem; } }

.fo-14px {
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 1.57143; }
  @media (min-width: 48em) {
    .fo-14px {
      font-size: 0.7rem; } }

.fo-16px {
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 1.5; }
  @media (min-width: 48em) {
    .fo-16px {
      font-size: 0.8rem; } }

.fo-18px {
  font-size: 18px;
  font-size: 1.8rem;
  line-height: 1.44444; }
  @media (min-width: 48em) {
    .fo-18px {
      font-size: 0.9rem; } }

.fo-20px {
  font-size: 20px;
  font-size: 2rem;
  line-height: 1.4; }
  @media (min-width: 48em) {
    .fo-20px {
      font-size: 1rem; } }

.fo-22px {
  font-size: 22px;
  font-size: 2.2rem;
  line-height: 1.36364; }
  @media (min-width: 48em) {
    .fo-22px {
      font-size: 1.1rem; } }

.fo-24px {
  font-size: 24px;
  font-size: 2.4rem;
  line-height: 1.33333; }
  @media (min-width: 48em) {
    .fo-24px {
      font-size: 1.2rem; } }

.fo-26px {
  font-size: 26px;
  font-size: 2.6rem;
  line-height: 1.30769; }
  @media (min-width: 48em) {
    .fo-26px {
      font-size: 1.3rem; } }

.fo-28px {
  font-size: 28px;
  font-size: 2.8rem;
  line-height: 1.28571; }
  @media (min-width: 48em) {
    .fo-28px {
      font-size: 1.4rem; } }

.fo-30px {
  font-size: 30px;
  font-size: 3rem;
  line-height: 1.26667; }
  @media (min-width: 48em) {
    .fo-30px {
      font-size: 1.5rem; } }

.fo-32px {
  font-size: 32px;
  font-size: 3.2rem;
  line-height: 1.25; }
  @media (min-width: 48em) {
    .fo-32px {
      font-size: 1.6rem; } }

.fo-34px {
  font-size: 34px;
  font-size: 3.4rem;
  line-height: 1.23529; }
  @media (min-width: 48em) {
    .fo-34px {
      font-size: 1.7rem; } }

.fo-36px {
  font-size: 36px;
  font-size: 3.6rem;
  line-height: 1.22222; }
  @media (min-width: 48em) {
    .fo-36px {
      font-size: 1.8rem; } }

.fo-38px {
  font-size: 38px;
  font-size: 3.8rem;
  line-height: 1.21053; }
  @media (min-width: 48em) {
    .fo-38px {
      font-size: 1.9rem; } }

.fo-40px {
  font-size: 40px;
  font-size: 4rem;
  line-height: 1.2; }
  @media (min-width: 48em) {
    .fo-40px {
      font-size: 2rem; } }

.fo-42px {
  font-size: 42px;
  font-size: 4.2rem;
  line-height: 1.19048; }
  @media (min-width: 48em) {
    .fo-42px {
      font-size: 2.1rem; } }

.fo-44px {
  font-size: 44px;
  font-size: 4.4rem;
  line-height: 1.18182; }
  @media (min-width: 48em) {
    .fo-44px {
      font-size: 2.2rem; } }

.fo-46px {
  font-size: 46px;
  font-size: 4.6rem;
  line-height: 1.17391; }
  @media (min-width: 48em) {
    .fo-46px {
      font-size: 2.3rem; } }

.fo-48px {
  font-size: 48px;
  font-size: 4.8rem;
  line-height: 1.16667; }
  @media (min-width: 48em) {
    .fo-48px {
      font-size: 2.4rem; } }

.fo-50px {
  font-size: 50px;
  font-size: 5rem;
  line-height: 1.16; }
  @media (min-width: 48em) {
    .fo-50px {
      font-size: 2.5rem; } }

.fo-52px {
  font-size: 52px;
  font-size: 5.2rem;
  line-height: 1.15385; }
  @media (min-width: 48em) {
    .fo-52px {
      font-size: 2.6rem; } }

.fo-54px {
  font-size: 54px;
  font-size: 5.4rem;
  line-height: 1.14815; }
  @media (min-width: 48em) {
    .fo-54px {
      font-size: 2.7rem; } }

.fo-56px {
  font-size: 56px;
  font-size: 5.6rem;
  line-height: 1.14286; }
  @media (min-width: 48em) {
    .fo-56px {
      font-size: 2.8rem; } }

.fo-58px {
  font-size: 58px;
  font-size: 5.8rem;
  line-height: 1.13793; }
  @media (min-width: 48em) {
    .fo-58px {
      font-size: 2.9rem; } }

.fo-60px {
  font-size: 60px;
  font-size: 6rem;
  line-height: 1.13333; }
  @media (min-width: 48em) {
    .fo-60px {
      font-size: 3rem; } }

.fo-co-base {
  color: #183173; }
.fo-co-logo {
  color: #534c4a; }
.fo-co-white {
  color: #fff; }
.fo-co-black {
  color: #1a1a1a; }
.fo-co-gray {
  color: #999999; }
.fo-co-red {
  color: #f02626; }
.fo-co-pink {
  color: #ec6d81; }
.fo-co-blue {
  color: #00aaba; }
.fo-co-green {
  color: #52cb98; }
.fo-co-orange {
  color: #fabf00; }
.fo-co-yellow {
  color: #ffff00; }

.text-lh-16px {
  line-height: 16px; }

.text-lh-24px {
  line-height: 24px; }

.text-lh-32px {
  line-height: 32px; }

.text-lh-40px {
  line-height: 40px; }

.text-lh-48px {
  line-height: 48px; }

.text-lh-56px {
  line-height: 56px; }

.img-float-l, .img-float-r {
  display: block;
  margin: 0 auto 2rem auto;
  text-align: center; }
  @media (min-width: 30em) {
    .img-float-l, .img-float-r {
      float: left;
      display: inline-block;
      margin: 0 1.875rem 1.875rem 0; } }
@media (min-width: 30em) {
  .img-float-r {
    float: right;
    margin: 0 0 1.875rem 1.875rem; } }

.border-top {
  border-top: 1px #f0f0f0 solid; }
.border-bottom {
  border-bottom: 1px #f0f0f0 solid; }
.border-1px {
  border: 1px #183173 solid; }
.border-2px {
  border: 2px #183173 solid; }
.border-3px {
  border: 3px #183173 solid; }
.border-4px {
  border: 4px #eee solid; }
.border-5px {
  border: 5px #eee solid; }
.border-co-base {
  border-color: #183173; }
.border-co-logo {
  border-color: #534c4a; }
.border-co-white {
  border-color: #fff; }
.border-co-black {
  border-color: #1a1a1a; }
.border-co-gray {
  border-color: #999999; }
.border-co-red {
  border-color: #f02626; }
.border-co-pink {
  border-color: #ec6d81; }
.border-co-blue {
  border-color: #00aaba; }
.border-co-green {
  border-color: #52cb98; }
.border-co-orange {
  border-color: #fabf00; }
.border-co-yellow {
  border-color: #ffff00; }
.border-co-spoen {
  border-color: #0092d7; }

.radius-4 {
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  -o-border-radius: 4px;
  -ms-border-radius: 4px;
  border-radius: 4px; }
.radius-8 {
  -webkit-border-radius: 8px;
  -moz-border-radius: 8px;
  -o-border-radius: 8px;
  -ms-border-radius: 8px;
  border-radius: 8px; }
.radius-16 {
  -webkit-border-radius: 16px;
  -moz-border-radius: 16px;
  -o-border-radius: 16px;
  -ms-border-radius: 16px;
  border-radius: 16px; }
.radius-24 {
  -webkit-border-radius: 24px;
  -moz-border-radius: 24px;
  -o-border-radius: 24px;
  -ms-border-radius: 24px;
  border-radius: 24px; }
.radius-32 {
  -webkit-border-radius: 32px;
  -moz-border-radius: 32px;
  -o-border-radius: 32px;
  -ms-border-radius: 32px;
  border-radius: 32px; }
.radius-40 {
  -webkit-border-radius: 40px;
  -moz-border-radius: 40px;
  -o-border-radius: 40px;
  -ms-border-radius: 40px;
  border-radius: 40px; }
.radius-100 {
  -webkit-border-radius: 100%;
  -moz-border-radius: 100%;
  -o-border-radius: 100%;
  -ms-border-radius: 100%;
  border-radius: 100%; }

.bg-co-gray-light {
  background-color: #fafafa; }
.bg-co-gray-middle {
  background-color: #f7f7f7; }
.bg-co-gray-dark {
  background-color: #f0f0f0; }
.bg-co-orange {
  background-color: #f6f5f0; }
.bg-co-black {
  background-color: #1a1a1a;
  color: #fff; }
.bg-co-white {
  background-color: #fff; }
.bg-co-paper {
  background-image: url(img/bg_brownpaper.png);
  background-color: #f6f5f0; }

#PagetopBtn {
  position: fixed;
  right: -44px;
  bottom: 12px;
  z-index: 1000;
  -ms-filter: progid:DXImageTransform.Microsoft.Alpha(Opacity = 0);
  filter: alpha(opacity = 0);
  opacity: 0;
  -webkit-transition: 0.3s ease-in;
  -moz-transition: 0.3s ease-in;
  -o-transition: 0.3s ease-in;
  -ms-transition: 0.3s ease-in;
  transition: 0.3s ease-in; }
  #PagetopBtn.visible {
    right: 16px;
    -ms-filter: progid:DXImageTransform.Microsoft.Alpha(Opacity = 100);
    filter: alpha(opacity = 100);
    opacity: 1; }
  #PagetopBtn a {
    outline: none;
    width: 40px;
    height: 40px;
    display: block;
    color: #fff;
    text-align: center;
    font-size: 16px;
    line-height: 36px;
    background-color: rgba(41, 44, 48, 0.7);
    -webkit-border-radius: 100%;
    -moz-border-radius: 100%;
    -o-border-radius: 100%;
    -ms-border-radius: 100%;
    border-radius: 100%; }
    #PagetopBtn a:hover {
      -ms-filter: progid:DXImageTransform.Microsoft.Alpha(Opacity = 60);
      filter: alpha(opacity = 60);
      opacity: 0.6; }

.tab {
  margin: 0;
  padding: 0;
  list-style: none; }
  .tab li {
    margin: 0; }

.content_wrap.disnon {
  display: none; }

.accordion-menu-btn {
  cursor: pointer; }
.accordion-menu-box {
  display: none; }
  .accordion-menu-box.visible {
    display: none; }

.accordion-menu-sp-btn {
  cursor: pointer; }
  @media (min-width: 48em) {
    .accordion-menu-sp-btn {
      cursor: auto; } }
.accordion-menu-sp-box {
  display: none; }
  .accordion-menu-sp-box.visible {
    display: none; }
  .accordion-menu-sp-box.invisible {
    display: block; }
  @media (min-width: 48em) {
    .accordion-menu-sp-box {
      display: block; }
      .accordion-menu-sp-box.invisible, .accordion-menu-sp-box.visible {
        display: block; } }

.slider {
  margin: 0;
  padding: 0;
  list-style: none; }
  .slider li {
    margin: 0; }

/* Arrows */
.slick-prev,
.slick-next {
  font-size: 0;
  line-height: 0;
  position: absolute;
  top: 50%;
  margin-top: -20px;
  display: block;
  width: 20px;
  height: 40px;
  padding: 0;
  cursor: pointer;
  border: none;
  outline: none;
  background: transparent;
  z-index: 300; }
  .slick-prev:before,
  .slick-next:before {
    content: "\f105";
    font-family: FontAwesome;
    font-size: 40px;
    position: absolute;
    top: 50%;
    right: 0;
    outline: 0;
    color: #183173;
    -webkit-transition: 0.3s ease-in-out;
    -moz-transition: 0.3s ease-in-out;
    -o-transition: 0.3s ease-in-out;
    -ms-transition: 0.3s ease-in-out;
    transition: 0.3s ease-in-out; }

.slick-prev:before {
  left: 0;
  right: auto;
  content: "\f104"; }

.slick-prev {
  left: -24px; }
  @media (min-width: 48em) {
    .slick-prev {
      left: -32px; } }

.slick-next {
  right: -24px; }
  @media (min-width: 48em) {
    .slick-next {
      right: -32px; } }

.slick-prev:hover:before,
.slick-prev:focus:before,
.slick-next:hover:before,
.slick-next:focus:before {
  color: rgba(255, 188, 0, 0.2); }

.slick-prev.slick-disabled:before,
.slick-next.slick-disabled:before {
  color: rgba(255, 188, 0, 0.2); }

/* Dots */
.slick-dots {
  position: absolute;
  left: 0;
  bottom: -32px;
  display: block;
  width: 100%;
  padding: 0;
  margin: 0;
  list-style: none;
  text-align: center; }
  @media (min-width: 48em) {
    .slick-dots {
      bottom: -32px; } }
  .slick-dots li {
    position: relative;
    display: inline-block;
    width: 20px;
    height: 20px;
    margin: 0;
    padding: 0;
    cursor: pointer;
    vertical-align: middle; }
    .slick-dots li button {
      font-size: 0;
      line-height: 0;
      display: block;
      padding: 0;
      cursor: pointer;
      color: transparent;
      border: 0;
      outline: none;
      background: transparent; }
      .slick-dots li button:hover, .slick-dots li button:focus {
        outline: none; }
      .slick-dots li button:hover:before, .slick-dots li button:focus:before {
        opacity: 1; }
      .slick-dots li button:before {
        line-height: 12px;
        position: absolute;
        top: 0;
        left: 50%;
        width: 10px;
        height: 10px;
        margin-left: -5px;
        content: '';
        background-color: rgba(255, 188, 0, 0.2);
        text-align: center;
        color: black;
        -webkit-border-radius: 100%;
        -moz-border-radius: 100%;
        -o-border-radius: 100%;
        -ms-border-radius: 100%;
        border-radius: 100%; }
    .slick-dots li.slick-active button:before {
      background-color: #183173; }

/*********************************************************************
共通（ロゴなど）
**********************************************************************/
.site-title-img {
  margin: 0;
  padding: 0.2rem 0;
  font-size: 0; }
  @media (min-width: 48em) {
    .site-title-img {
      padding: 0; } }
  .site-title-img img {
    width: 220px; }
    @media (min-width: 48em) {
      .site-title-img img {
        width: 380px; } }
    @media (min-width: 900px) {
      .site-title-img img {
        width: 500px; } }
.site-title-icon img {
  width: 56px; }
  @media (min-width: 48em) {
    .site-title-icon img {
      width: 112px; } }

/*********************************************************************
ヘッダー
**********************************************************************/
#header {
  position: relative;
  border-top: 0.4rem #183173 solid;
  z-index: 5000; }
  @media (min-width: 48em) {
    #header {
      padding: 0; } }

.header-base {
  position: relative;
  height: 90px;
  margin-bottom: 48px; }
  @media (min-width: 48em) {
    .header-base {
      height: 180px; } }
  @media (min-width: 62em) {
    .header-base {
      margin: 0; } }
.header-title {
  float: left;
  margin-left: -0.75rem;
  padding: 1.5rem 0 0;
  font-size: 0; }
  @media (min-width: 48em) {
    .header-title {
      position: absolute;
      left: 0.75rem;
      top: 50%;
      margin: auto;
      padding: 0;
      -webkit-transform: translateY(-50%);
      -moz-transform: translateY(-50%);
      -o-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
      transform: translateY(-50%); } }
  .header-title .site-title-img,
  .header-title .site-title-icon {
    display: inline-block;
    margin-right: 0.4rem;
    vertical-align: middle; }
.header-holding {
  float: right;
  margin: 0 -0.75rem 0 0;
  padding: 1.5rem 0 0;
  width: 120px;
  text-align: center; }
  @media (min-width: 48em) {
    .header-holding {
      position: absolute;
      right: 0.75rem;
      top: 50%;
      margin: auto;
      padding: 0;
      width: 316px;
      -webkit-transform: translateY(-50%);
      -moz-transform: translateY(-50%);
      -o-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
      transform: translateY(-50%); } }
  .header-holding-title {
    margin: 0 0 0.4rem;
    background-color: #183173;
    color: #fff;
    text-align: center;
    font-size: 1rem;
    line-height: 1.8;
    font-weight: normal;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    -o-border-radius: 4px;
    -ms-border-radius: 4px;
    border-radius: 4px; }
    @media (min-width: 48em) {
      .header-holding-title {
        display: inline-block;
        float: left;
        width: 4rem;
        height: 4rem;
        line-height: 4rem;
        margin-right: 0.8rem;
        font-size: 0.8rem;
        -webkit-border-radius: 100%;
        -moz-border-radius: 100%;
        -o-border-radius: 100%;
        -ms-border-radius: 100%;
        border-radius: 100%; } }
  .header-holding-date {
    margin: 0 0 0.6rem;
    font-size: 0; }
    @media (min-width: 48em) {
      .header-holding-date {
        float: left;
        width: 220px; } }
  .header-holding-count {
    margin: 0;
    line-height: 10px; }
    @media (min-width: 48em) {
      .header-holding-count {
        float: left; } }
    .header-holding-count span {
      display: inline-block;
      font-size: 10px;
      font-weight: bold;
      vertical-align: bottom; }
      @media (min-width: 48em) {
        .header-holding-count span {
          font-size: 0.7rem;
          margin-right: 0.1rem; } }
    .header-holding-count img {
      margin: 0 0.1rem;
      display: inline-block;
      height: 14px; }
      @media (min-width: 48em) {
        .header-holding-count img {
          height: 25px; } }
    .header-holding-count-title {
      color: #534c4a; }
      @media (min-width: 48em) {
        .header-holding-count-title {
          margin-bottom: 2px; } }
    .header-holding-count-text {
      color: #183173; }
      @media (min-width: 48em) {
        .header-holding-count-text {
          margin-bottom: 2px; } }
.header-sns-list {
  position: absolute;
  left: 0;
  top: 90px;
  margin: 0.8rem 0;
  padding: 0;
  list-style: none;
  text-align: center;
  font-size: 0;
  z-index: 1000; }
  @media (min-width: 48em) {
    .header-sns-list {
      position: relative;
      left: auto;
      right: auto;
      top: auto;
      margin: 0.2rem 0 0;
      float: right;
      clear: both; } }
  .header-sns-list li {
    margin: 0 0.4rem 0 0;
    display: inline-block;
    font-size: 16px;
    line-height: 1;
    text-align: center; }
    @media (min-width: 48em) {
      .header-sns-list li {
        margin: 0 0 0 0.4rem; } }
  .header-sns-list a {
    position: relative;
    display: block;
    width: 3.2rem;
    height: 3.2rem;
    background-color: #fff;
    color: #183173;
    -webkit-border-radius: 100%;
    -moz-border-radius: 100%;
    -o-border-radius: 100%;
    -ms-border-radius: 100%;
    border-radius: 100%; }
    .header-sns-list a:hover {
      background-color: #183173;
      color: #fff; }
    @media (min-width: 48em) {
      .header-sns-list a {
        width: 2rem;
        height: 2rem;
        border: 1px solid #183173; } }
  .header-sns-list i {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    margin: auto;
    width: 1.6rem;
    height: 1.6rem; }
    @media (min-width: 48em) {
      .header-sns-list i {
        width: 0.8rem;
        height: 0.8rem; } }

#menu-btn {
  position: absolute;
  top: 90px;
  right: 0;
  padding: 0;
  width: 100%;
  height: 48px;
  background-color: #183173;
  display: block;
  cursor: pointer; }
  @media (min-width: 48em) {
    #menu-btn {
      top: 180px; } }
  @media (min-width: 62em) {
    #menu-btn {
      display: none; } }
  #menu-btn .menu-btn {
    position: absolute;
    right: 0;
    bottom: 0;
    width: 11rem;
    height: 48px;
    border-left: 1px #fff solid; }
    #menu-btn .menu-btn-icon {
      display: block;
      position: absolute;
      top: 50%;
      left: 2.4rem;
      width: 2.4rem;
      height: 2px;
      margin: 0 0 0 -1.2rem;
      background-color: #fff; }
      @media (min-width: 48em) {
        #menu-btn .menu-btn-icon {
          width: 1.2rem;
          margin: 0 0 0 -0.6rem; } }
      #menu-btn .menu-btn-icon:before, #menu-btn .menu-btn-icon:after {
        content: "";
        display: block;
        position: absolute;
        top: 0;
        left: 0;
        width: 2.4rem;
        height: 2px;
        background-color: #fff;
        -webkit-transition: 0.3s ease-in-out;
        -moz-transition: 0.3s ease-in-out;
        -o-transition: 0.3s ease-in-out;
        -ms-transition: 0.3s ease-in-out;
        transition: 0.3s ease-in-out; }
        @media (min-width: 48em) {
          #menu-btn .menu-btn-icon:before, #menu-btn .menu-btn-icon:after {
            width: 1.2rem; } }
      #menu-btn .menu-btn-icon:before {
        margin-top: -0.8rem; }
        @media (min-width: 48em) {
          #menu-btn .menu-btn-icon:before {
            margin-top: -0.4rem; } }
      #menu-btn .menu-btn-icon:after {
        margin-top: 0.8rem; }
        @media (min-width: 48em) {
          #menu-btn .menu-btn-icon:after {
            margin-top: 0.4rem; } }
    #menu-btn .menu-btn-text {
      position: absolute;
      text-align: left;
      left: 4.8rem;
      top: 50%;
      margin: auto;
      -webkit-transform: translateY(-50%);
      -moz-transform: translateY(-50%);
      -o-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
      transform: translateY(-50%);
      font-size: 1.4rem;
      line-height: 22px;
      color: #fff; }
      @media (min-width: 48em) {
        #menu-btn .menu-btn-text {
          bottom: -4px;
          font-size: 0.8rem;
          line-height: 28px; } }
  #menu-btn.open .menu-btn-icon {
    background: transparent; }
    #menu-btn.open .menu-btn-icon:before {
      margin-top: 0;
      -webkit-transform: rotate(-45deg);
      -moz-transform: rotate(-45deg);
      -o-transform: rotate(-45deg);
      -ms-transform: rotate(-45deg);
      transform: rotate(-45deg); }
    #menu-btn.open .menu-btn-icon:after {
      margin-top: 0;
      -webkit-transform: rotate(-135deg);
      -moz-transform: rotate(-135deg);
      -o-transform: rotate(-135deg);
      -ms-transform: rotate(-135deg);
      transform: rotate(-135deg); }

.header-menu {
  z-index: 4000;
  width: 100%;
  border-top: 1px solid #fff;
  background-color: #183173;
  display: none;
  -webkit-transition: 0.3s ease-in-out;
  -moz-transition: 0.3s ease-in-out;
  -o-transition: 0.3s ease-in-out;
  -ms-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out; }
  @media (min-width: 62em) {
    .header-menu {
      position: relative;
      z-index: 0;
      display: block;
      opacity: 1;
      width: 100%;
      height: auto;
      background: none; }
      .header-menu::before {
        content: '';
        position: absolute;
        top: 0;
        left: 0;
        background-color: #183173;
        width: 100%;
        height: 2px; } }
  .header-menu.open {
    display: block; }
  .header-menu-container .col-md-12 {
    padding-bottom: 0; }

.menu-link-list {
  margin: 0 -1.5rem;
  padding: 0;
  list-style: none; }
  @media (min-width: 62em) {
    .menu-link-list {
      font-size: 0;
      text-align: center; } }
  .menu-link-list ul.sub-menu {
    margin: 0;
    padding: 0; }
    .menu-link-list ul.sub-menu li {
      margin: 0;
      padding: 0 0 0 2.4rem;
      border-bottom: none;
      border-top: 1px solid rgba(255, 255, 255, 0.1); }
    @media (min-width: 62em) {
      .menu-link-list ul.sub-menu {
        position: absolute;
        left: 0;
        z-index: 500;
        margin: 0;
        padding: 0;
        background-color: rgba(255, 255, 255, 0.9);
        display: none; }
        .menu-link-list ul.sub-menu li {
          padding: 0;
          display: block;
          text-align: left;
          width: 180px; }
          .menu-link-list ul.sub-menu li a {
            padding: 0.4rem 0.8rem;
            background-color: rgba(0, 0, 0, 0.05);
            color: #262626; }
            .menu-link-list ul.sub-menu li a:hover {
              background-color: #183173;
              color: #fff; } }
  .menu-link-list li {
    position: relative;
    margin: 0;
    padding: 0;
    border-bottom: 1px solid rgba(255, 255, 255, 0.3);
    list-style: none; }
    @media (min-width: 62em) {
      .menu-link-list li {
        display: inline-block;
        border-bottom: none;
        font-size: 0.8rem; }
        .menu-link-list li.menu-item-has-children {
          position: relative; }
          .menu-link-list li.menu-item-has-children > a {
            padding: 1.0rem 1.4rem 1.0rem 0.8rem; }
            .menu-link-list li.menu-item-has-children > a::before {
              content: '\f107';
              font-family: FontAwesome;
              position: absolute;
              right: 0.6rem;
              top: 50%;
              margin: auto;
              z-index: 300;
              -webkit-transform: translateY(-50%);
              -moz-transform: translateY(-50%);
              -o-transform: translateY(-50%);
              -ms-transform: translateY(-50%);
              transform: translateY(-50%); }
          .menu-link-list li.menu-item-has-children:hover .sub-menu {
            display: block; } }
  .menu-link-list a {
    position: relative;
    display: block;
    padding: 0.75rem 1.4rem;
    color: #fff; }
    .menu-link-list a::before {
      content: '\f105';
      font-family: FontAwesome;
      position: absolute;
      right: 1.5rem;
      top: 50%;
      margin: auto;
      -webkit-transform: translateY(-50%);
      -moz-transform: translateY(-50%);
      -o-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
      transform: translateY(-50%); }
    @media (min-width: 62em) {
      .menu-link-list a {
        padding: 1.0rem 0.8rem;
        color: #262626; }
        .menu-link-list a::before {
          display: none; }
        .menu-link-list a:hover {
          background-color: #183173;
          color: #fff; } }
  @media (min-width: 62em) {
    .menu-link-list .menu-item-has-children > a::before {
      display: block; } }

/*********************************************************************
フッター
**********************************************************************/
.footer-info {
  margin-bottom: 2.4rem; }
  .footer-info-contact {
    text-align: center; }
    .footer-info-contact a {
      margin: 0 auto;
      display: block;
      border: 2px solid #183173;
      height: 40px;
      max-width: 320px;
      line-height: 36px;
      background-color: #fff;
      color: #183173;
      -webkit-border-radius: 20px;
      -moz-border-radius: 20px;
      -o-border-radius: 20px;
      -ms-border-radius: 20px;
      border-radius: 20px; }
      .footer-info-contact a:hover {
        background-color: #183173;
        color: #fff; }
.footer-pagetop {
  position: relative;
  margin: 0 0.75rem 1.5rem 0.75rem;
  padding: 0;
  text-align: center;
  font-size: 20px;
  line-height: 1; }
  .footer-pagetop::before {
    content: '';
    position: absolute;
    left: 0;
    top: 50%;
    margin: auto;
    background-color: #183173;
    width: 100%;
    height: 2px;
    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    -o-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%); }
  .footer-pagetop a {
    color: #fff;
    position: relative;
    display: inline-block;
    height: 4.0rem;
    width: 4.0rem;
    background-color: #fff;
    border: 2px solid #183173;
    -webkit-border-radius: 100%;
    -moz-border-radius: 100%;
    -o-border-radius: 100%;
    -ms-border-radius: 100%;
    border-radius: 100%; }
    @media (min-width: 48em) {
      .footer-pagetop a {
        height: 2.0rem;
        width: 2.0rem; }
        .footer-pagetop a:hover {
          background-color: #183173; }
          .footer-pagetop a:hover i {
            color: #fff; } }
    .footer-pagetop a i {
      position: absolute;
      top: 0;
      left: 0;
      right: 0;
      bottom: 0;
      margin: auto;
      width: 2.1rem;
      height: 2.1rem;
      color: #183173;
      -webkit-transition: 0.3s ease-in-out;
      -moz-transition: 0.3s ease-in-out;
      -o-transition: 0.3s ease-in-out;
      -ms-transition: 0.3s ease-in-out;
      transition: 0.3s ease-in-out; }
      @media (min-width: 48em) {
        .footer-pagetop a i {
          width: 1.05rem;
          height: 1.05rem; } }
.footer-sitemap {
  float: left;
  width: 45%;
  margin: 0 0 0 5%; }
  .footer-sitemap ul {
    margin: 0;
    padding: 0;
    list-style: none; }
  .footer-sitemap li {
    margin-bottom: 0.8rem; }
    @media (min-width: 48em) {
      .footer-sitemap li {
        margin-bottom: 0.2rem; } }
    .footer-sitemap li ul {
      margin: 0.8rem 0 0 1.2rem;
      font-size: 1.4rem;
      line-height: 1.57143; }
      @media (min-width: 48em) {
        .footer-sitemap li ul {
          margin: 0.2rem 0 0 0.8rem;
          font-size: 0.7rem;
          line-height: 2.14286; } }
      @media (min-width: 48em) {
        .footer-sitemap li ul li {
          margin-bottom: 0; } }
  .footer-sitemap a {
    display: block;
    position: relative;
    padding-left: 14px;
    color: #262626; }
    .footer-sitemap a::before {
      content: '\f105';
      font-family: FontAwesome;
      position: absolute;
      top: 0;
      left: 0;
      -webkit-transition: 0.3s ease-in-out;
      -moz-transition: 0.3s ease-in-out;
      -o-transition: 0.3s ease-in-out;
      -ms-transition: 0.3s ease-in-out;
      transition: 0.3s ease-in-out; }
    .footer-sitemap a:hover {
      color: #183173; }
      .footer-sitemap a:hover::before {
        color: #183173; }
.footer-otherlink {
  background-color: #183173;
  padding: 1.6rem 0 0; }
  @media (min-width: 48em) {
    .footer-otherlink {
      padding: 0.75rem 0; }
      .footer-otherlink .col-md-6 {
        padding-bottom: 0; } }
.footer-sns-list {
  margin: 0;
  padding: 0;
  list-style: none;
  font-size: 0;
  text-align: center; }
  @media (min-width: 30em) {
    .footer-sns-list {
      text-align: left; } }
  .footer-sns-list li {
    display: inline-block;
    margin: 0 0.8rem;
    font-size: 24px; }
    @media (min-width: 48em) {
      .footer-sns-list li {
        margin: 0 0.4rem;
        font-size: 20px; } }
  .footer-sns-list a {
    color: #fff; }
.footer-copy {
  margin: 0;
  text-align: center;
  color: #fff;
  font-size: 1.2rem;
  line-height: 1.66667; }
  @media (min-width: 30em) {
    .footer-copy {
      text-align: right; } }
  @media (min-width: 48em) {
    .footer-copy {
      font-size: 0.6rem;
      line-height: 2.33333; } }

/*********************************************************************
ライトナビ / 共通バナー / その他
**********************************************************************/
@media (min-width: 48em) {
  .banner.col-md-3 {
    float: left;
    width: 100%; } }
@media (min-width: 62em) {
  .banner.col-md-3 {
    width: 20%; } }
.banner-sponsor {
  margin: 0 -0.75rem;
  padding: 0 0 1.5rem;
  list-style: none; }
  @media (min-width: 48em) {
    .banner-sponsor {
      margin: 0 -0.375rem;
      padding: 0 0 0.75rem; } }
  @media (min-width: 62em) {
    .banner-sponsor {
      margin: 0; } }
  .banner-sponsor li {
    float: left;
    width: 50%;
    margin: 0;
    padding: 0 0.75rem 1.5rem 0.75rem; }
    @media (min-width: 48em) {
      .banner-sponsor li {
        width: 25%;
        padding: 0 0.375rem 0.75rem 0.375rem; } }
    @media (min-width: 62em) {
      .banner-sponsor li {
        float: none;
        width: 100%;
        padding: 0 0  0.75rem; } }
    .banner-sponsor li img {
      min-width: 100%; }
.banner-link {
  margin: 0 -0.75rem;
  padding: 0 0 1.5rem;
  list-style: none; }
  @media (min-width: 48em) {
    .banner-link {
      margin: 0 -0.375rem;
      padding: 0 0 0.75rem; } }
  @media (min-width: 62em) {
    .banner-link {
      margin: 0 -0.75rem; } }
  .banner-link li {
    padding: 0 0.75rem 1.5rem 0.75rem; }
    @media (min-width: 30em) {
      .banner-link li {
        float: left;
        width: 50%; } }
    @media (min-width: 48em) {
      .banner-link li {
        padding: 0 0.375rem 0.75rem 0.375rem; } }
    @media (min-width: 62em) {
      .banner-link li {
        width: 50%;
        padding: 0 0.75rem 1.5rem 0.75rem; } }
  .banner-link a:hover {
    opacity: 0.6; }
  .banner-link img {
    min-width: 100%; }

.insta-list {
  margin: 0 0 1.6rem;
  padding: 0;
  list-style: none; }
  .insta-list li {
    float: left;
    margin: 0;
    padding: 0;
    width: 33.33333333%; }
    @media (min-width: 30em) {
      .insta-list li {
        width: 25%; } }
    @media (min-width: 48em) {
      .insta-list li {
        width: 16.666666666%; } }
  .insta-list a:hover {
    opacity: 0.6; }
  .insta-list img {
    min-width: 100%; }

.header-main {
  position: relative;
  margin-bottom: 1.5rem;
  padding: 0 0.75rem;
  min-height: 150px;
  background-image: url(img/bg_h_sp.png?ver=202410152);
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover; }
  @media (min-width: 48em) {
    .header-main {
      margin-bottom: 0.75rem;
      min-height: 180px; } }
  @media (min-width: 62em) {
    .header-main {
      min-height: 170px;
      background-image: url(img/bg_h_pc.png?ver=202410152); } }
  .header-main-title {
    position: absolute;
    top: 50%;
    left: 0;
    margin: auto;
    width: 100%;
    text-align: center;
    color: #fff;
    font-weight: bold;
    font-size: 2.6rem;
    line-height: 1.30769;
    -webkit-text-shadow: 0 0 3px rgba(0, 0, 0, 0.8);
    -moz-text-shadow: 0 0 3px rgba(0, 0, 0, 0.8);
    -o-text-shadow: 0 0 3px rgba(0, 0, 0, 0.8);
    -ms-text-shadow: 0 0 3px rgba(0, 0, 0, 0.8);
    text-shadow: 0 0 3px rgba(0, 0, 0, 0.8);
    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    -o-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%); }
    @media (min-width: 48em) {
      .header-main-title {
        font-size: 1.5rem; } }

#breadcrumbs {
  font-size: 1.4rem;
  line-height: 1.57143; }
  @media (min-width: 48em) {
    #breadcrumbs {
      font-size: 0.7rem; } }
  #breadcrumbs span {
    /*display: inline-block;*/
    vertical-align: middle;
    color: #999999; }
  #breadcrumbs a {
    vertical-align: middle;
    color: #262626; }
    #breadcrumbs a::after {
      content: "\f105";
      font-family: FontAwesome;
      padding: 0 7px;
      color: #999999; }
    #breadcrumbs a:hover {
      color: #183173; }

.sns-button {
  float: right; }
  .sns-button ul {
    margin: 0;
    padding: 0;
    list-style: none;
    line-height: 25px !important; }
  .sns-button li {
    float: left;
    display: block;
    margin: 0 0 10px 10px !important;
    height: 25px; }
  .sns-button .fb-share-button > span {
    vertical-align: top !important; }

.page-header-b {
  margin: 0 0 1.2rem;
  padding: 0.75rem 1.5rem;
  background-color: #183173;
  text-align: left;
  font-size: 2rem;
  line-height: 1.4;
  font-weight: bold;
  color: #fff;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  -o-border-radius: 4px;
  -ms-border-radius: 4px;
  border-radius: 4px; }
  @media (min-width: 48em) {
    .page-header-b {
      padding: 0.75rem 1.0rem;
      font-size: 1.2rem;
      line-height: 1.33333; } }
.page-header-s {
  position: relative;
  margin: 1rem 0 0.8rem;
  padding: 0 0 0 20px;
  text-align: left;
  font-size: 1.8rem;
  line-height: 1.44444;
  font-weight: bold;
  color: #2a2a2a; }
  .page-header-s::before {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    width: 8px;
    min-height: 25px;
    background-color: #183173; }
  @media (min-width: 48em) {
    .page-header-s {
      margin: 0 0 0.8rem;
      font-size: 1.1rem;
      line-height: 1.36364; }
      .page-header-s::before {
        min-height: 30px; } }

.container-body .button-base {
  margin: 0 auto;
  padding: 1.0rem;
  display: block;
  max-width: 360px;
  min-height: 48px;
  text-align: center;
  color: #fff;
  font-weight: bold;
  background-color: #183173;
  -webkit-border-radius: 24px;
  -moz-border-radius: 24px;
  -o-border-radius: 24px;
  -ms-border-radius: 24px;
  border-radius: 24px; }
  @media (min-width: 48em) {
    .container-body .button-base {
      padding: 0;
      height: 48px;
      line-height: 48px; } }
  .container-body .button-base:hover {
    color: #183173;
    background-color: #fff; }
  .container-body .button-base i {
    margin-right: 6px; }
  .container-body .button-base.w100p {
    padding: 1.6rem;
    max-width: 100%;
    -webkit-border-radius: 36px;
    -moz-border-radius: 36px;
    -o-border-radius: 36px;
    -ms-border-radius: 36px;
    border-radius: 36px; }
    @media (min-width: 48em) {
      .container-body .button-base.w100p {
        padding: 0;
        height: 72px;
        line-height: 72px; } }
  .container-body .button-base.white {
    background-color: #fff;
    color: #183173; }
    .container-body .button-base.white:hover {
      color: #fff;
      background-color: #183173; }
  .container-body .button-base.black {
    background-color: #1a1a1a; }
    .container-body .button-base.black:hover {
      color: #1a1a1a;
      background-color: #fff; }
  .container-body .button-base.red {
    background-color: #f02626; }
    .container-body .button-base.red:hover {
      color: #f02626;
      background-color: #fff; }
  .container-body .button-base.pink {
    background-color: #ec6d81; }
    .container-body .button-base.pink:hover {
      color: #ec6d81;
      background-color: #fff; }
  .container-body .button-base.blue {
    background-color: #00aaba; }
    .container-body .button-base.blue:hover {
      color: #00aaba;
      background-color: #fff; }
  .container-body .button-base.green {
    background-color: #52cb98; }
    .container-body .button-base.green:hover {
      color: #52cb98;
      background-color: #fff; }
  .container-body .button-base.yellow {
    background-color: #ffff00; }
    .container-body .button-base.yellow:hover {
      color: #ffff00;
      background: none; }
  .container-body .button-base.spoen {
    background-color: #0092d7; }
    .container-body .button-base.spoen:hover {
      color: #0092d7;
      background-color: #fff; }
.container-body .button-list {
  margin: 0 0 1.2rem;
  padding: 0;
  list-style: none;
  font-size: 0; }
  .container-body .button-list li {
    display: inline-block;
    margin: 0 0.75rem 0.75rem 0;
    padding: 0;
    font-size: 1.4rem; }
    @media (min-width: 48em) {
      .container-body .button-list li {
        margin: 0 0.375rem 0.75rem 0;
        font-size: 0.7rem; } }
  .container-body .button-list a {
    display: block;
    padding: 0 1.6rem;
    height: 40px;
    line-height: 38px;
    text-align: center;
    border: 1px solid #183173;
    background-color: #fff;
    -webkit-border-radius: 20px;
    -moz-border-radius: 20px;
    -o-border-radius: 20px;
    -ms-border-radius: 20px;
    border-radius: 20px; }
    .container-body .button-list a:hover {
      color: #fff;
      background-color: #183173;
      border: 1px solid #183173; }
    .container-body .button-list a i {
      margin-right: 6px; }
    @media (min-width: 48em) {
      .container-body .button-list a {
        padding: 0 1.0rem; } }

.container-body .table-2cal th,
.container-body .table-2cal td {
  display: block;
  text-align: left;
  vertical-align: top;
  padding: 0.75rem;
  border: none; }
  @media (min-width: 48em) {
    .container-body .table-2cal th,
    .container-body .table-2cal td {
      display: table-cell;
      border: 1px solid #183173; } }
.container-body .table-2cal th {
  background-color: #f6f5f0;
  font-weight: bold; }
.container-body .table-2cal td {
  padding-bottom: 2.25rem; }
  @media (min-width: 48em) {
    .container-body .table-2cal td {
      padding: 0.75rem; } }
.container-body .table-2cal.no-border th, .container-body .table-2cal.no-border td {
  border: none; }
.container-body .table-2cal.no-border th {
  background: none;
  border-bottom: 1px dotted #183173;
  padding: 0 0 0.75rem 0; }
  @media (min-width: 48em) {
    .container-body .table-2cal.no-border th {
      border: none;
      padding: 0 0.75rem 0.375rem 0; } }
.container-body .table-2cal.no-border td {
  padding: 0.75rem 0 2.25rem 0; }
  @media (min-width: 48em) {
    .container-body .table-2cal.no-border td {
      padding: 0 0.75rem 0.375rem 0; } }
.container-body .table-other {
  white-space: nowrap;
  overflow: auto; }
  @media (min-width: 48em) {
    .container-body .table-other {
      white-space: normal;
      overflow: visible; } }

.fo-tel-b {
  font-size: 36px;
  font-size: 3rem;
  line-height: 1.26667; }
  @media (min-width: 48em) {
    .fo-tel-b {
      font-size: 1.8rem;
      line-height: 1.22222; } }
.fo-tel-s {
  font-size: 24px;
  font-size: 2.4rem;
  line-height: 1.33333; }
  @media (min-width: 48em) {
    .fo-tel-s {
      font-size: 1.2rem; } }

.container-body .pageGallerylist {
  margin: 0 -0.75rem;
  padding: 0;
  list-style: none; }
  @media (min-width: 48em) {
    .container-body .pageGallerylist {
      margin: 0 -0.375rem; } }
  .container-body .pageGallerylist li {
    float: left;
    width: 50%;
    margin: 0;
    padding: 0 0.75rem 1.5rem 0.75rem; }
    @media (min-width: 30em) {
      .container-body .pageGallerylist li {
        width: 33.333333%; } }
    @media (min-width: 48em) {
      .container-body .pageGallerylist li {
        width: 25%;
        padding: 0 0.375rem 0.75rem 0.375rem; } }
  .container-body .pageGallerylist a {
    display: block;
    border: 4px solid #fff;
    background-color: #fff;
    -webkit-box-shadow: 0 0 6px rgba(0, 0, 0, 0.1);
    -moz-box-shadow: 0 0 6px rgba(0, 0, 0, 0.1);
    -o-box-shadow: 0 0 6px rgba(0, 0, 0, 0.1);
    -ms-box-shadow: 0 0 6px rgba(0, 0, 0, 0.1);
    box-shadow: 0 0 6px rgba(0, 0, 0, 0.1); }
    .container-body .pageGallerylist a:hover {
      border-color: #183173; }

.container-body .faq-list-q, .container-body .faq-list-a {
  position: relative;
  margin-bottom: 0.4rem;
  padding: 7px 16px 7px 46px;
  min-height: 42px;
  font-size: 1.6rem;
  line-height: 1.5; }
  .container-body .faq-list-q::before, .container-body .faq-list-a::before {
    content: '';
    position: absolute;
    top: 4px;
    left: 4px;
    width: 32px;
    height: 32px;
    background-color: #aaa;
    -webkit-border-radius: 100%;
    -moz-border-radius: 100%;
    -o-border-radius: 100%;
    -ms-border-radius: 100%;
    border-radius: 100%; }
  .container-body .faq-list-q::after, .container-body .faq-list-a::after {
    content: 'Q';
    position: absolute;
    top: 6px;
    left: 13px;
    font-size: 16px;
    color: #fff; }
  @media (min-width: 48em) {
    .container-body .faq-list-q, .container-body .faq-list-a {
      font-size: 0.8rem; } }
.container-body .faq-list-q {
  border: 1px solid #183173;
  font-weight: bold;
  -webkit-border-radius: 20px;
  -moz-border-radius: 20px;
  -o-border-radius: 20px;
  -ms-border-radius: 20px;
  border-radius: 20px; }
.container-body .faq-list-a {
  margin-bottom: 1.0rem;
  padding-top: 0;
  background-color: #f7f7f7;
  -webkit-border-radius: 20px;
  -moz-border-radius: 20px;
  -o-border-radius: 20px;
  -ms-border-radius: 20px;
  border-radius: 20px; }
  .container-body .faq-list-a::before {
    background-color: #183173; }
  .container-body .faq-list-a::after {
    content: 'A';
    top: 6px;
    left: 15px; }
  .container-body .faq-list-a-text {
    padding-top: 7px; }
    .container-body .faq-list-a-text p:last-child {
      margin-bottom: 0; }

.container-body .square-base {
  margin: 0 auto;
  padding: 1.0rem;
  display: block;
  max-width: 360px;
  min-height: 48px;
  text-align: center;
  color: #fff;
  font-weight: bold;
  background-color: #183173; }
  @media (min-width: 48em) {
    .container-body .square-base {
      padding: 0;
      height: 48px;
      line-height: 48px; } }
.container-body .square-list {
  margin: 0 0 1.2rem;
  padding: 0;
  list-style: none;
  font-size: 0; }
  .container-body .square-list ul {
    display: inline-block; }
  .container-body .square-list li {
    display: inline-block;
    margin: 0 0.75rem 0.75rem 0;
    padding: 0 1.6rem;
    height: 40px;
    line-height: 38px;
    text-align: center;
    border: 1px solid #999999;
    background-color: #fff;
    padding: 0;
    padding: 0 1.0rem;
    font-size: 1.4rem; }
    .container-body .square-list li i {
      margin-right: 6px; }
    @media (min-width: 48em) {
      .container-body .square-list li {
        margin: 0 0.375rem 0.75rem 0;
        font-size: 0.7rem; } }

.main-visual .slider {
  margin: 0 0 4.2rem; }
  @media (min-width: 48em) {
    .main-visual .slider {
      margin: 0 0 3.2rem; } }
.main-visual .slick-prev,
.main-visual .slick-next {
  margin-top: -20px;
  width: 20px;
  height: 40px; }
  .main-visual .slick-prev:before,
  .main-visual .slick-next:before {
    font-size: 48px;
    color: white;
    -webkit-text-shadow: 0 0 5px rgba(0, 0, 0, 0.1);
    -moz-text-shadow: 0 0 5px rgba(0, 0, 0, 0.1);
    -o-text-shadow: 0 0 5px rgba(0, 0, 0, 0.1);
    -ms-text-shadow: 0 0 5px rgba(0, 0, 0, 0.1);
    text-shadow: 0 0 5px rgba(0, 0, 0, 0.1); }
  @media (min-width: 48em) {
    .main-visual .slick-prev,
    .main-visual .slick-next {
      margin-top: -27px;
      width: 30px;
      height: 48px; }
      .main-visual .slick-prev:before,
      .main-visual .slick-next:before {
        font-size: 80px; } }
.main-visual .slick-prev {
  left: 0.75rem; }
  @media (min-width: 48em) {
    .main-visual .slick-prev {
      left: 0.75rem; } }
.main-visual .slick-next {
  right: 0.75rem; }
  @media (min-width: 48em) {
    .main-visual .slick-next {
      right: 0.75rem; } }
.main-visual .slick-prev:hover:before,
.main-visual .slick-next:hover:before {
  color: rgba(255, 255, 255, 0.6); }
.main-visual-img {
  height: 420px;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover; }
  .main-visual-img img {
    display: none; }
  .main-visual-img a {
    display: block;
    height: 420px;
    width: 100%; }
  @media (min-width: 30em) {
    .main-visual-img {
      height: auto;
      background-image: none; }
      .main-visual-img img {
        display: block; }
      .main-visual-img a {
        height: auto; } }

.top-point {
  margin: 0 -1.5rem 3.0rem -1.5rem;
  padding: 2.5rem 1.5rem 1.0rem 1.5rem;
  /*background-image: url( img/bg_brownpaper.png );*/
  background-color: #f6f5f0; }
  @media (min-width: 48em) {
    .top-point {
      margin: 0 -1.5rem 2.4rem -1.5rem;
      padding: 2.0rem 1.2rem; } }
  @media (min-width: 62em) {
    .top-point {
      margin: 0 0 2.4rem 0; } }
  .top-point-header {
    margin: 0 auto 2.0rem auto;
    width: 108px;
    font-size: 0; }
  .top-point-link {
    display: block;
    margin-bottom: 3.0rem;
    color: #fff; }
    @media (min-width: 48em) {
      .top-point-link {
        float: left;
        width: 33.3333333%;
        margin: 0;
        padding: 0 0.60rem;
        position: relative; }
        .top-point-link:hover {
          color: #fff; }
          .top-point-link:hover .img img {
            -webkit-transform: scale(1.08);
            -moz-transform: scale(1.08);
            -o-transform: scale(1.08);
            -ms-transform: scale(1.08);
            transform: scale(1.08); }
          .top-point-link:hover .button {
            background-color: #fff;
            color: #183173; } }
    .top-point-link .img {
      float: left;
      width: 40%;
      margin-bottom: 1.6rem;
      border: 4px solid #fff;
      overflow: hidden;
      -webkit-box-shadow: 0 0 5px rgba(0, 0, 0, 0.1);
      -moz-box-shadow: 0 0 5px rgba(0, 0, 0, 0.1);
      -o-box-shadow: 0 0 5px rgba(0, 0, 0, 0.1);
      -ms-box-shadow: 0 0 5px rgba(0, 0, 0, 0.1);
      box-shadow: 0 0 5px rgba(0, 0, 0, 0.1); }
      .top-point-link .img img {
        min-width: 100%;
        -webkit-transition: 0.3s ease-in-out;
        -moz-transition: 0.3s ease-in-out;
        -o-transition: 0.3s ease-in-out;
        -ms-transition: 0.3s ease-in-out;
        transition: 0.3s ease-in-out; }
      @media (min-width: 48em) {
        .top-point-link .img {
          float: none;
          width: 100%;
          margin-bottom: 1.2rem; } }
    .top-point-link .title {
      margin-left: 44%;
      margin-bottom: 0.75rem;
      color: #534c4a; }
      @media (min-width: 48em) {
        .top-point-link .title {
          margin: 0 0 0.80rem;
          text-align: center; } }
    .top-point-link .excerpt {
      margin-left: 44%;
      margin-bottom: 1.6rem;
      color: #837b78; }
      @media (min-width: 48em) {
        .top-point-link .excerpt {
          margin: 0 0 3.2rem; } }
    .top-point-link .button {
      margin: 0 auto;
      height: 40px;
      line-height: 40px;
      max-width: 320px;
      background-color: #183173;
      text-align: center;
      color: #fff;
      font-size: 1.4rem;
      -webkit-border-radius: 20px;
      -moz-border-radius: 20px;
      -o-border-radius: 20px;
      -ms-border-radius: 20px;
      border-radius: 20px;
      -webkit-transition: 0.3s ease-in-out;
      -moz-transition: 0.3s ease-in-out;
      -o-transition: 0.3s ease-in-out;
      -ms-transition: 0.3s ease-in-out;
      transition: 0.3s ease-in-out; }
      .top-point-link .button i {
        margin-right: 6px; }
      @media (min-width: 48em) {
        .top-point-link .button {
          position: absolute;
          bottom: 0;
          left: 0.75rem;
          right: 0.75rem;
          font-size: 0.7rem; } }

.top-alert {
  padding: 1.5rem 1.2rem;
  color: #fff;
  background-color: #f02626;
  border: 1px dotted #eee;
  box-shadow: 0 0 1px 3px #f02626;
  margin: 3px 3px 1.2rem; }
  .top-alert p {
    margin: 0 1.2em; }
    @media (min-width: 48em) {
      .top-alert p {
        margin: 0 5em; } }
    @media (min-width: 62em) {
      .top-alert p {
        margin: 0 8em; } }
  .top-alert a {
    color: #ffff00; }
    .top-alert a:hover {
      color: #fff; }
  .top-alert h2 {
    text-align: center;
    margin: 0 0 0.8rem;
    font-size: 1.8rem;
    line-height: 1.44444; }
    @media (min-width: 48em) {
      .top-alert h2 {
        font-size: 1.1rem;
        line-height: 1.36364; } }
    .top-alert h2::before {
      min-height: 30px;
      margin-right: 0.5rem;
      font-family: "FontAwesome";
      content: "\f071";
      font-weight: lighter;
      position: relative;
      display: inline-block; }

.top-info {
  padding: 1.5rem 1.2rem;
  background-image: url(img/bg_brownpaper.png);
  margin: 0 0 1.2rem;
  border-radius: 6px;
  border: 1px dotted #183173;
  border-radius: 4px; }
  .top-info p {
    color: #555;
    margin: 0 1.2em; }
    @media (min-width: 48em) {
      .top-info p {
        margin: 0 5em; } }
    @media (min-width: 62em) {
      .top-info p {
        margin: 0 8em; } }
  .top-info a {
    color: #183173; }
    .top-info a:hover {
      color: #262626; }
  .top-info h2 {
    text-align: center;
    margin: 0 0 0.8rem;
    color: #555;
    font-size: 1.8rem;
    line-height: 1.44444; }
    @media (min-width: 48em) {
      .top-info h2 {
        font-size: 1.1rem;
        line-height: 1.36364; } }
    .top-info h2::before {
      top: 0.1rem;
      color: #183173;
      min-height: 30px;
      margin-right: 0.5rem;
      font-family: "FontAwesome";
      content: "\f024";
      font-weight: lighter;
      position: relative;
      display: inline-block;
      font-size: 1.5rem; }

.top-news-header {
  position: relative;
  background-color: #183173;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  -o-border-radius: 4px;
  -ms-border-radius: 4px;
  border-radius: 4px; }
  .top-news-header-title {
    margin: 0;
    padding: 1.2rem 1.5rem;
    color: #fff;
    font-size: 1.8rem;
    line-height: 1.44444; }
  .top-news-header-video-title {
	  margin-bottom: 0.4rem; }
    @media (min-width: 48em) {
      .top-news-header-title {
        padding: 0.6rem 0.75rem;
        font-size: 1rem;
        line-height: 1.4; } }
  .top-news-header-link {
    position: absolute;
    top: 50%;
    right: 0.75rem;
    margin: auto;
    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    -o-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%); }
    .top-news-header-link a {
      padding: 0 12px;
      height: 30px;
      line-height: 30px;
      display: inline-block;
      background-color: #fff;
      color: #262626;
      font-size: 1.4rem;
      -webkit-border-radius: 15px;
      -moz-border-radius: 15px;
      -o-border-radius: 15px;
      -ms-border-radius: 15px;
      border-radius: 15px; }
      @media (min-width: 48em) {
        .top-news-header-link a {
          font-size: 0.7rem; } }
      .top-news-header-link a:hover {
        color: #183173; }

.news-list {
  margin: 0;
  padding: 0;
  list-style: none; }
  .news-list li {
    margin: 0; }
  .news-list a {
    display: block;
    padding: 1.5rem 1.0rem;
    border-bottom: 1px dotted #183173;
    color: #fff; }
    @media (min-width: 48em) {
      .news-list a {
        padding: 0.75rem 0.5rem; } }
    @media (min-width: 62em) {
      .news-list a {
        padding: 1.0rem 0.75rem; }
        .news-list a:hover .news-list-title {
          color: #183173; } }
  .news-list-date, .news-list-category {
    margin-right: 0.75rem;
    margin-bottom: 0.75rem;
    display: inline-block;
    color: #999999;
    font-size: 1.4rem;
    line-height: 1.66667; }
    @media (min-width: 48em) {
      .news-list-date, .news-list-category {
        margin-right: 0.75rem;
        margin-bottom: 0.375rem;
        font-size: 0.7rem; } }
    @media (min-width: 62em) {
      .news-list-date, .news-list-category {
        float: left;
        width: 90px;
        margin: 0; } }
  .news-list-category {
    color: #fff;
    background-color: #999;
    width: 110px;
    text-align: center;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    -o-border-radius: 4px;
    -ms-border-radius: 4px;
    border-radius: 4px; }
    .news-list-category.report {
      background-color: #00aaba; }
    .news-list-category.notice {
      background-color: #ec6d81; }
    .news-list-category.event {
      background-color: #fabf00; }
    .news-list-category.info {
      background-color: #52cb98; }
  .news-list-title {
    display: block;
    color: #262626;
    -webkit-transition: 0.3s ease-in-out;
    -moz-transition: 0.3s ease-in-out;
    -o-transition: 0.3s ease-in-out;
    -ms-transition: 0.3s ease-in-out;
    transition: 0.3s ease-in-out; }
    @media (min-width: 62em) {
      .news-list-title {
        margin-left: 220px;
        min-height: 26px; } }

.news-header {
  margin-bottom: 1.2rem;
  padding: 1.0rem 1.0rem 1.6rem 1.0rem;
  border-top: 4px solid #183173;
  border-bottom: 2px dotted #183173; }
  .news-header-title {
    margin: 0;
    color: #534c4a;
    font-size: 2.4rem;
    line-height: 1.33333; }
    @media (min-width: 48em) {
      .news-header-title {
        font-size: 1.2rem; } }
  .news-header-data {
    margin: 0 0 0.375rem; }

.news-body-categorylist {
  padding-bottom: 0.8rem;
  clear: both; }
  @media (min-width: 48em) {
    .news-body-categorylist {
      clear: none; } }
  .news-body-categorylist ul {
    display: inline;
    margin: 0;
    padding: 0;
    list-style: none;
    font-size: 0; }
    @media (min-width: 48em) {
      .news-body-categorylist ul {
        display: block;
        margin: 0 0 0 72px; } }
  .news-body-categorylist li {
    display: inline-block;
    margin: 0.4rem;
    font-size: 1.2rem;
    line-height: 1.66667; }
    @media (min-width: 48em) {
      .news-body-categorylist li {
        margin: 0.2rem;
        font-size: 0.6rem; } }
  .news-body-categorylist a {
    display: block;
    padding: 0.4rem 0.8rem;
    border: 1px #183173 solid;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    -o-border-radius: 4px;
    -ms-border-radius: 4px;
    border-radius: 4px; }
    @media (min-width: 48em) {
      .news-body-categorylist a {
        padding: 0.2rem 0.4rem; }
        .news-body-categorylist a:hover {
          border-color: #183173;
          background-color: #183173;
          color: #fff; } }
  .news-body-categorylist .post-categories-title {
    display: inline-block;
    padding: 0.4rem;
    font-size: 1.2rem;
    line-height: 1.66667; }
    @media (min-width: 48em) {
      .news-body-categorylist .post-categories-title {
        float: left;
        padding: 0.4rem 0;
        font-size: 0.6rem; } }
.news-body-button {
  text-align: center; }
  .news-body-button p {
    margin: 0 0.8rem;
    display: inline-block;
    vertical-align: top;
    font-size: 1.4rem;
    line-height: 1; }
    @media (min-width: 48em) {
      .news-body-button p {
        font-size: 0.7rem; } }
  .news-body-button .prev,
  .news-body-button .next {
    font-size: 1.8rem; }
    @media (min-width: 48em) {
      .news-body-button .prev,
      .news-body-button .next {
        font-size: 0.9rem; } }
    .news-body-button .prev a,
    .news-body-button .next a {
      display: block;
      padding: 0.6rem 0.4rem;
      color: #262626; }
      .news-body-button .prev a:hover,
      .news-body-button .next a:hover {
        color: #183173; }
  .news-body-button .back a {
    display: block;
    padding: 0.8rem;
    background-color: #262626;
    text-align: center;
    color: #fff;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    -o-border-radius: 4px;
    -ms-border-radius: 4px;
    border-radius: 4px; }
    .news-body-button .back a:hover {
      background-color: #183173;
      color: #fff; }
    @media (min-width: 48em) {
      .news-body-button .back a {
        padding: 0.6rem 1.2rem; } }

/* --- basic setting ----------------------------------------------------------------------------------------- */
.wp-caption-text {
  text-align: center; }

.alignright {
  float: none; }

.alignleft {
  float: none; }

@media (min-width: 30em) {
  .alignright {
    float: right; }

  .alignleft {
    float: left; } }
.aligncenter {
  margin-left: auto;
  margin-right: auto; }

.centered {
  margin-left: auto;
  margin-right: auto; }

.clear {
  clear: both; }

/* --- WordPress preset CSS ----------------------------------------------------------------------------------------- */
/* image */
.container-body img {
  height: auto;
  max-width: 100%; }

.container-body img.centered, div.centered {
  display: block;
  margin: 24px auto; }

.container-body img.aligncenter, div.aligncenter {
  display: block;
  margin: 24px auto; }

.container-body img.alignright, div.alignright {
  margin: 4px auto 0 auto;
  display: block;
  width: 100%; }

.container-body img.alignleft, div.alignleft {
  margin: 4px auto 0 auto;
  display: block;
  width: 100%; }

@media (min-width: 30em) {
  .container-body img.alignright, div.alignright {
    margin: 4px 0 30px 30px;
    display: inline;
    width: auto; }

  .container-body img.alignleft, div.alignleft {
    margin: 4px 30px 30px 0;
    display: inline;
    width: auto; } }
.container-body .wp-caption {
  max-width: 100%;
  padding: 0;
  margin: 24px auto; }

.container-body .wp-caption.alignright {
  margin: 4px 0 30px 30px; }

.container-body .wp-caption.alignleft {
  margin: 4px 30px 30px 0; }

.container-body .wp-caption.aligncenter {
  margin: 24px auto; }

.container-body .wp-caption img {
  display: block;
  margin: 0 auto;
  max-width: 100%; }

.container-body .wp-caption .wp-caption-text {
  padding: 8px 0 0;
  color: #999;
  font-size: 12px; }

/* icon */
.container-body i.fa {
  margin-right: 6px; }

/* hr */
.container-body hr {
  overflow: hidden;
  border-top: 1px dashed #bbb;
  border-left: none;
  border-bottom: none;
  border-right: none;
  color: #fff; }

/* table */
.container-body table {
  margin: 0 0 1.0rem 0; }

.container-body td,
.container-body th {
  border: 1px solid #183173;
  padding: 0.75rem;
  vertical-align: top; }

.container-body th {
  background: #fff2cf; }

/* list */
.container-body dt,
.container-body dd {
  margin: 0; }

.container-body ul,
.container-body ol {
  margin: 0 0 0.8rem;
  padding: 0 0 0 16px; }

.container-body ul li,
.container-body ol li {
  margin: 0 0 0.375rem 0.8rem;
  padding: 0 0 0 0.4rem; }

/* block quote */
.container-body blockquote {
  margin: 0 0 2em 0;
  padding: 30px 30px 2px;
  background: #f2f2f2;
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
  border-radius: 5px;
  position: relative; }

.container-body blockquote:before {
  content: '"';
  font-style: italic;
  font-size: 30px;
  font-weight: bold;
  line-height: 40px;
  width: 30px;
  height: 30px;
  position: absolute;
  top: 10px;
  left: 10px;
  color: #999; }

.container-body blockquote:after {
  content: '"';
  font-style: italic;
  font-size: 30px;
  font-weight: bold;
  text-align: left;
  line-height: 60px;
  width: 30px;
  height: 30px;
  position: absolute;
  bottom: 10px;
  right: 5px;
  color: #999; }

/* next-page */
.pagesprit {
  text-align: center;
  font-size: 0; }

.pagesprit .page-numbers {
  line-height: 1; }

.pagesprit a,
.pagesprit span {
  display: inline-block;
  margin: 0 2px;
  font-size: 14px;
  line-height: 14px; }

.pagesprit .numbers {
  border: 1px #183173 solid;
  width: 40px;
  height: 40px;
  line-height: 40px;
  background-color: #183173;
  color: #fff; }

.pagesprit a .numbers {
  -webkit-transition: 0.3s ease-in-out;
  -moz-transition: 0.3s ease-in-out;
  -o-transition: 0.3s ease-in-out;
  -ms-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out; }

.pagesprit a:hover .numbers {
  background-color: #183173;
  color: #fff; }

.pagesprit a .numbers {
  background-color: #fff;
  color: #183173; }

/* PageNaviプラグイン */
.wp-pagenavi {
  padding: 16px 0;
  text-align: center; }

.wp-pagenavi .pages {
  display: block;
  margin: 8px; }

.wp-pagenavi .current,
.wp-pagenavi .page,
.wp-pagenavi .nextpostslink,
.wp-pagenavi .previouspostslink {
  display: inline-block;
  margin: 8px 4px;
  border: 1px #183173 solid;
  width: 40px;
  height: 40px;
  line-height: 38px;
  font-size: 16px;
  -webkit-border-radius: 100%;
  -moz-border-radius: 100%;
  border-radius: 100%; }

.wp-pagenavi .current {
  background-color: #183173;
  color: #fff;
  border-color: #183173; }

.wp-pagenavi .page:hover,
.wp-pagenavi .nextpostslink:hover,
.wp-pagenavi .previouspostslink:hover {
  background-color: #183173;
  color: #fff;
  border-color: #183173; }

@media (min-width: 62em) {
  .wp-pagenavi .current,
  .wp-pagenavi .page,
  .wp-pagenavi .nextpostslink,
  .wp-pagenavi .previouspostslink {
    width: 32px;
    height: 32px;
    line-height: 30px; } }

/* 大会の特徴部分の調整 */
@media (min-width: 48em) {
  .feature_image_div {
    display: flex;
    justify-content: center; /* 子要素（figure）の中央寄せ */
    gap: 40px; /* figure間のスペース */
  }
  .feature_image_div figure {
    display: flex;
    flex-direction: column;
    justify-content: center; /* 縦方向でも中央に揃える */
    text-align: center; /* キャプションを中央揃え */
  }

  .feature_image_div img {
    align-self: center; /* 画像を中央に揃える */
    width: 100%;
    height: auto; /* 画像のアスペクト比を維持 */
  }

  .feature_image_div figcaption {
    margin-top: 10px; /* 画像とキャプションの間隔を調整 */
    min-height: 50px; /* figcaptionの最小高さを設定し統一 */
  }

  .custom-container {
    display: flex; /* 左右を並べるためのflexbox設定 */
    align-items: flex-start; /* 上揃え */
  }

  .feature_left-content {
    margin-right: 20px; /* 左右の間隔を調整 */
  }

  .feature_left-content img {
    height: 250px;
    width: auto; /* 幅を自動に設定して元のサイズを維持 */
  }
	.feature_left-content img.feature_point3 {
		height: auto !important;
		width: auto; /* 幅を自動に設定して元のサイズを維持 */
	}

  .feature_left-content figcaption {
    white-space: nowrap; /* テキストを1行にまとめる */
    overflow: hidden; /* 溢れた部分を非表示にする */
    text-overflow: ellipsis; /* 溢れた場合の表示を省略記号にする */
  }

  .feature_right-content {
    flex-grow: 1; /* 残りのスペースを埋める */
  }
}
@media (max-width: 48em) {
  .feature_image_div {
    text-align: center;
  }

  .feature_image_div img {
    width: 80%;
    height: auto; /* 画像のアスペクト比を維持 */
  }

  .feature_left-content img {
    width: 60% !important; /* 幅を自動に設定して元のサイズを維持 */
    text-align: center;
  }

  .feature_left-content figure {
    text-align: center;
  }
}

/* 大会のゲスト紹介部分の調整 */

/* test */
.guest-profile {
    margin: 20px auto;
    text-align: center;
    border: 1px solid #ddd;
    padding: 20px;
    border-radius: 8px;
    background-color: #f9f9f9;
}

.guest-image img {
    display: block;
    margin: 0 auto;
    width: 150px;
    height: auto;
    border-radius: 50%;
    box-shadow: 0 4px 8px rgba(0,0,0,0.1);
}

.guest-title {
    font-size: 1em;
    color: #666;
    margin-top: 10px;
}

.guest-details-wrapper {
    display: flex;
    flex-direction: column;
    gap: 20px;
    margin-top: 20px;
    text-align: left;
}

.guest-bio ul {
    padding-left: 20px; /* リストのインデントを調整 */
    list-style-type: disc; /* リストのスタイルを変更（デフォルトは円） */
}

.guest-bio li {
    margin-bottom: 10px; /* 各リスト項目の下に余白を追加 */
}

@media (min-width: 768px) {
    .guest-details-wrapper {
        flex-direction: row;
        justify-content: space-between;
        align-items: flex-start;
    }

    .guest-bio, .guest-media {
        flex: 1;
        padding: 10px;
    }
}
/* test */

.guest-image img {
    width: 150px;
    height: auto;
    border-radius: 50%;
    box-shadow: 0 4px 8px rgba(0,0,0,0.1);
}

.guest-details {
    max-width: 600px;
}

.guest-title {
    font-weight: bold;
    margin-bottom: 10px;
    color: #666;
}

.guest-bio, .guest-media {
    margin-top: 10px;
}

.guest-bio p, .guest-media p {
    margin: 6px 0;
}


.guest_flex{
  display:flex;
  flex-direction: row;
}

.guest_flex_image{
  width: 520px;
  margin: 0;
  padding: 0;
}

@media (max-width: 62em) {
  .guest_flex{
    flex-direction: column;
  }
  .guest_flex_image{
    text-align: center;
  }
  .result_past{
    text-align: center;
  }
    .banner-sponsor-div {
        display: flex;
        flex-direction: column;
        align-items: center; /* 1行目を中央に */
    }

    .banner-sponsor-div .banner-sponsor {
        display: flex;
        flex-wrap: wrap; /* 2行目を2列で並べる */
        justify-content: center; /* 2行目を中央寄せ */
        padding: 0;
        margin: 0;
        list-style: none;
    }

    .banner-sponsor-div .first-row-item {
        width: 51%; /* 1行目の画像を横幅いっぱいに */
        text-align: center; /* 1行目の画像を中央に */
    }

    .banner-sponsor-div .second-row-item {
        flex: 0 0 50%; /* 2行目の各画像を50%幅に */
		max-width: 50%;
	}
}

/*# sourceMappingURL=style.css.map */