@charset "UTF-8";
/* Responsive
============================================================= */
/* font */
.hide {
  display: none; }

/* color
   ========================================================================== */
/* レイアウト
   ========================================================================== */
.head-logo,
#head {
  background: #d2d8ff !important; }

@media screen and (min-width: 768px), print {
  .pg-cmn-wrap {
    margin-top: 73px; } }

body {
  background: #d2d8ff !important; }

body::before {
  content: "";
  position: fixed;
  width: 100%;
  height: 100%;
  background: #d2d8ff !important;
  z-index: 100;
  top: 0;
  left: 0;
  transition: 0.2s 0s ease-out;
  opacity: 0;
  pointer-events: none; }

/* その他
   ========================================================================== */
.bgArea {
  background-repeat: repeat;
  background-position: center; }
  @media screen and (min-width: 768px), print {
    .bgArea {
      background-image: url(img/bg.png);
      background-size: 1200px auto; } }
  @media screen and (max-width: 767px) {
    .bgArea {
      background-image: url(img/bg@sp.png);
      background-size: 100% auto; } }
@media screen and (min-width: 768px), print {
  .hs-cta-wrapper a {
    transition: 0.2s 0s ease-out; } }

@media screen and (min-width: 768px), print {
  .hs-cta-wrapper a:hover {
    opacity: 0.65; } }

/* メインビジュアル
   ========================================================================== */
.main-block {
  position: relative; }
  @media screen and (min-width: 768px), print {
    .main-block {
      margin-left: 100px;
      padding: 10px 0px 0px 0; } }
  @media screen and (max-width: 767px) {
    .main-block {
      padding: 0; } }
  @media screen and (min-width: 768px), print {
    .main-block .main-block-ttl {
      display: flex;
      align-items: center; } }
  .main-block .main-nav-att {
    margin-top: 50px;
    font-family: "YakuHanJP", itc-avant-garde-gothic-pro, dnp-shuei-gothic-gin-std, sans-serif, sans-serif;
    font-style: normal;
    font-weight: 500;
    background-color: #fff;
    border: solid 2px #ff563b;
    border-radius: 5px;
    padding: 20px;
    line-height: 1.6; }
    .main-block .main-nav-att .small-att {
      font-family: "YakuHanJP", itc-avant-garde-gothic-pro, dnp-shuei-gothic-gin-std, sans-serif, sans-serif;
      font-style: normal;
      font-weight: 500;
      font-size: 12px;
      font-size: 1.2rem; }
      @media screen and (max-width: 767px) {
        .main-block .main-nav-att .small-att {
          font-size: 10px;
          font-size: 1rem; } }
    @media screen and (max-width: 767px) {
      .main-block .main-nav-att {
        margin: 4vw 5.33vw 0 5.33vw; } }
  @media screen and (min-width: 768px), print {
    .main-block .main-nav-att {
      margin-top: 30px;
      margin-right: 20px;
      white-space: nowrap;
      line-height: 2.125; }
      .main-block .main-nav-att span {
        font-size: 15px;
        font-size: 1.5rem;
        display: inline-block;
        line-height: 1.7; } }
  @media screen and (max-width: 767px) {
    .main-block .main-nav-att {
      font-size: 3.2vw;
      line-height: 1.75; }
      .main-block .main-nav-att span {
        font-size: 3.47vw;
        margin-top: 1.33vw; } }
  .main-block .oc-logo {
    position: absolute;
    bottom: 80px;
    left: 0; }
  .main-block .pg-main-img-wrap {
    position: relative; }
    @media screen and (min-width: 768px), print {
      .main-block .pg-main-img-wrap {
        min-width: 600px;
        margin-right: 10px;
        padding-bottom: 46px; } }
    @media screen and (max-width: 767px) {
      .main-block .pg-main-img-wrap {
        margin-top: 0vw; }
        .main-block .pg-main-img-wrap .pg-main-img {
          text-align: center;
          max-width: 100%;
          margin: 0 auto;
          padding: 0; } }
/* ページ内リンク
   ========================================================================== */
.pg-nav-wrap {
  background-color: #3159E4;
  display: flex;
  justify-content: center; }

.pg-nav-list {
  display: inline-flex;
  justify-content: center;
  align-items: center; }
  @media screen and (min-width: 768px), print {
    .pg-nav-list {
      padding: 30px 0;
      margin-right: -20px;
      margin-left: -20px; } }
  @media screen and (max-width: 767px) {
    .pg-nav-list {
      flex-wrap: wrap;
      padding-top: 0;
      padding-bottom: 0; } }
.pg-nav-item a {
  color: #fff;
  position: relative;
  transition: opacity 0.2s ease-out; }
  .pg-nav-item a:hover {
    opacity: 0.65; }
  .pg-nav-item a .menu_txts {
    font-size: 1.07vw !important; }

@media screen and (min-width: 768px), print {
  .pg-nav-item {
    padding: 0 30px; }
    .pg-nav-item a {
      font-size: 16px;
      font-size: 1.6rem; } }

@media screen and (max-width: 767px) {
  .pg-nav-item {
    text-align: center;
    padding: 0vw;
    padding-bottom: 5.33vw;
    width: 32%; }
    .pg-nav-item:nth-child(3n) {
      border-right: none; }
    .pg-nav-item:nth-child(n + 4) {
      border-bottom: none;
      margin-top: 0; }
    .pg-nav-item a {
      font-size: 3.47vw;
      padding-left: 0;
      white-space: nowrap; } }
    @media screen and (max-width: 767px) and (max-width: 767px) {
      .pg-nav-item a {
        font-size: 2.93vw; } }
@media screen and (max-width: 767px) {
      .pg-nav-item a span::after {
        font-size: 3.47vw; }
      .pg-nav-item a .menu_txts {
        font-size: 2.4vw !important; } }

.icon-pg-link {
  position: relative; }
  .icon-pg-link.-textCenter {
    display: block;
    text-align: center; }
  @media screen and (min-width: 768px), print {
    .icon-pg-link {
      padding-left: 0px; } }
  .icon-pg-link span {
    font-family: "YakuHanJP", itc-avant-garde-gothic-pro, heisei-kaku-gothic-std, sans-serif;
    font-style: normal;
    font-weight: 700; }
    .icon-pg-link span::after {
      content: "\e902";
      position: absolute;
      display: block;
      width: 1em;
      height: 1em;
      left: 50%;
      top: auto;
      bottom: -1em;
      transform: translateX(-50%) rotate(90deg);
      font-size: 17px;
      font-size: 1.7rem;
      color: #fff; }

.oc-wrap.-bus {
  background-color: #f8ff93; }
  @media screen and (min-width: 768px), print {
    .oc-wrap.-bus {
      margin-top: 0;
      padding: 40px 0 64px; } }
  @media screen and (max-width: 767px) {
    .oc-wrap.-bus {
      padding: 9.07vw 8vw 14.67vw; } }
.oc-wrap .bus-inner {
  text-align: center; }
  .oc-wrap .bus-inner .pg-nav-bus__img {
    margin: 40px 0; }
    @media screen and (min-width: 768px), print {
      .oc-wrap .bus-inner .pg-nav-bus__img ul {
        display: flex;
        justify-content: center;
        align-items: center; } }
    @media screen and (min-width: 768px), print {
      .oc-wrap .bus-inner .pg-nav-bus__img ul li:first-child {
        margin-right: 40px; } }
    @media screen and (max-width: 767px) {
      .oc-wrap .bus-inner .pg-nav-bus__img ul li {
        margin-bottom: 2.67vw; } }
.pg-nav-bus-ttl {
  color: #3159E4;
  font-weight: 600; }
  @media screen and (min-width: 768px), print {
    .pg-nav-bus-ttl {
      font-size: 28px;
      font-size: 2.8rem; } }
  @media screen and (max-width: 767px) {
    .pg-nav-bus-ttl {
      font-size: 5.87vw; } }
.cmn-pgnav-btm-btn {
  text-align: center; }
  .cmn-pgnav-btm-btn .btn03 {
    display: inline-block; }
    .cmn-pgnav-btm-btn .btn03:hover {
      background-color: #3159E4;
      color: #fff;
      opacity: 0.65 !important; }
  @media screen and (min-width: 768px), print {
    .cmn-pgnav-btm-btn {
      margin-top: 25px; }
      .cmn-pgnav-btm-btn .btn03 {
        min-width: 441px;
        padding: 25.5px 40px; } }
  @media screen and (max-width: 767px) {
    .cmn-pgnav-btm-btn {
      width: 100%;
      margin-top: 8vw; }
      .cmn-pgnav-btm-btn .btn03 {
        width: 100%;
        padding: 4vw 0; }
        .cmn-pgnav-btm-btn .btn03 span::before {
          right: -15px !important; } }
.pg-nav-bus-subTx {
  padding: 0 4%;
  text-align: center;
  line-height: 120%; }
  @media screen and (min-width: 768px), print {
    .pg-nav-bus-subTx {
      margin-top: 4px;
      font-size: 12px;
      font-size: 1.2rem; } }
  @media screen and (max-width: 767px) {
    .pg-nav-bus-subTx {
      margin-top: 4px;
      text-align: left;
      font-size: 11px;
      font-size: 1.1rem;
      padding-left: 1em;
      text-indent: -1em; } }
.bus-white {
  font-family: "YakuHanJP", itc-avant-garde-gothic-pro, heisei-kaku-gothic-std, sans-serif;
  font-style: normal;
  font-weight: 700;
  font-weight: 400;
  color: #3159E4;
  font-size: 20px;
  font-size: 2rem; }
  @media screen and (min-width: 768px), print {
    .bus-white {
      padding: 1.33vw 0 0.53vw !important; } }
  @media screen and (max-width: 767px) {
    .bus-white {
      font-size: 16px;
      font-size: 1.6rem;
      padding: 6.67vw !important; } }
@media screen and (min-width: 768px), print {
  .pg-nav-bus-item {
    height: 106.5px; } }

@media screen and (max-width: 767px) {
  .pg-nav-bus-item {
    height: 18.67vw;
    margin: 0 3%; }
    .pg-nav-bus-item:last-child {
      height: 18.67vw; } }

@media screen and (min-width: 768px), print {
  .pg-nav-bus-item + .pg-nav-bus-item {
    margin-left: 40px; } }

@media screen and (max-width: 767px) {
  .pg-nav-bus-item + .pg-nav-bus-item {
    margin-top: 5.6vw; } }

@media screen and (min-width: 768px), print {
  .pg-nav-bus-item:nth-child(2) a {
    font-size: 25px;
    font-size: 2.5rem; } }

.pg-nav-bus-item span:not(.sub-ttl) {
  display: inline-block;
  position: relative;
  font-weight: 600; }
  @media screen and (min-width: 768px), print {
    .pg-nav-bus-item span:not(.sub-ttl) {
      padding-right: 44px; } }
  @media screen and (max-width: 767px) {
    .pg-nav-bus-item span:not(.sub-ttl) {
      padding-right: 6.67vw; } }
  .pg-nav-bus-item span:not(.sub-ttl)::after, .pg-nav-bus-item span:not(.sub-ttl)::before {
    content: "";
    display: block;
    position: absolute;
    background-color: #f8ff93;
    top: 0;
    bottom: 0;
    right: 0;
    margin: auto;
    border-radius: 20px; }
    @media screen and (min-width: 768px), print {
      .pg-nav-bus-item span:not(.sub-ttl)::after, .pg-nav-bus-item span:not(.sub-ttl)::before {
        width: 6px;
        height: 20px; } }
    @media screen and (max-width: 767px) {
      .pg-nav-bus-item span:not(.sub-ttl)::after, .pg-nav-bus-item span:not(.sub-ttl)::before {
        width: 1.33vw;
        height: 4vw; } }
  .pg-nav-bus-item span:not(.sub-ttl)::before {
    transform: rotate(45deg); }
  .pg-nav-bus-item span:not(.sub-ttl)::after {
    transform: rotate(-45deg); }
    @media screen and (min-width: 768px), print {
      .pg-nav-bus-item span:not(.sub-ttl)::after {
        right: 10px; } }
    @media screen and (max-width: 767px) {
      .pg-nav-bus-item span:not(.sub-ttl)::after {
        right: 2vw; } }
.slide-wrap {
  overflow: hidden;
  display: flex;
  align-items: center; }
  @media screen and (min-width: 768px), print {
    .slide-wrap {
      margin: 80px 0; } }
  @media screen and (max-width: 767px) {
    .slide-wrap {
      margin: 13.33vw 0; } }
  @media screen and (min-width: 768px), print {
    .slide-wrap .content {
      width: 500px; } }
  @media screen and (max-width: 767px) {
    .slide-wrap .content {
      width: 80vw; } }
  .slide-wrap .slideshow {
    display: flex;
    -webkit-animation: loop-slide 90s infinite linear 1s both;
    animation: loop-slide 90s infinite linear 1s both; }

@-webkit-keyframes loop-slide {
  from {
    transform: translateX(0); }
  to {
    transform: translateX(-100%); } }

@keyframes loop-slide {
  from {
    transform: translateX(0); }
  to {
    transform: translateX(-100%); } }

/* セクション(共通)
   ========================================================================== */
@media screen and (min-width: 768px), print {
  .box-center {
    margin-bottom: 80px; } }

@media screen and (max-width: 767px) {
  .box-center {
    margin-bottom: 5.33vw; } }

.box-center .-ttl {
  text-align: center;
  margin-bottom: 0; }
  @media screen and (max-width: 767px) {
    .box-center .-ttl {
      max-width: 80%;
      margin: 0 auto; } }
.box-center .-inner {
  border: 2px solid #3159E4;
  background-color: #fff; }
  @media screen and (min-width: 768px), print {
    .box-center .-inner {
      padding: 60px 40px 60px 60px; } }
  @media screen and (max-width: 767px) {
    .box-center .-inner {
      padding-bottom: 10.67vw;
      margin-right: 5.33vw;
      margin-left: 5.33vw;
      padding: 5.33vw; } }
@media screen and (min-width: 768px), print {
  .box-center.pg-cmn {
    padding-bottom: 80px;
    margin-bottom: 0px; } }

.txt-xs {
  margin-top: 10px;
  font-family: "YakuHanJP", itc-avant-garde-gothic-pro, dnp-shuei-gothic-gin-std, sans-serif, sans-serif;
  font-style: normal;
  font-weight: 500;
  font-size: 12px;
  font-size: 1.2rem; }
  @media screen and (max-width: 767px) {
    .txt-xs {
      margin-top: 2.67vw;
      font-size: 10px;
      font-size: 1rem; } }
@media screen and (max-width: 767px) {
  .reservation-box-btn {
    width: 100%;
    margin-top: 8vw; }
    .reservation-box-btn .btn03 {
      width: 100%;
      padding: 4vw 0; } }

.list-notice {
  color: #818181;
  font-family: "YakuHanJP", itc-avant-garde-gothic-pro, dnp-shuei-gothic-gin-std, sans-serif, sans-serif; }
  .list-notice .notice-item {
    line-height: 1.7692307692; }
  @media screen and (min-width: 768px), print {
    .list-notice {
      font-size: 13px;
      font-size: 1.3rem; } }
  @media screen and (max-width: 767px) {
    .list-notice {
      font-size: 3.47vw;
      margin-top: 5.33vw; } }
.sub-ttl {
  font-family: "YakuHanJP", itc-avant-garde-gothic-pro, heisei-kaku-gothic-std, sans-serif;
  font-style: normal;
  font-weight: 700;
  text-align: center;
  color: #3159E4; }
  @media screen and (min-width: 768px), print {
    .sub-ttl {
      font-size: 28px;
      font-size: 2.8rem;
      padding-left: 0; } }
  @media screen and (max-width: 767px) {
    .sub-ttl {
      font-size: 5.33vw;
      padding-left: 0;
      text-align: left;
      line-height: 1.5; }
      .sub-ttl span {
        margin-top: 2.67vw;
        font-size: 3.2vw;
        color: #0058e9; } }
  .sub-ttl.-red {
    color: #ff563b !important; }

.sub-ttl02 {
  font-family: "YakuHanJP", itc-avant-garde-gothic-pro, heisei-kaku-gothic-std, sans-serif;
  font-style: normal;
  font-weight: 700;
  text-align: center;
  color: #ff563b !important;
  font-weight: bold; }
  @media screen and (min-width: 768px), print {
    .sub-ttl02 {
      font-size: 28px;
      font-size: 2.8rem;
      padding-left: 0; } }
  @media screen and (max-width: 767px) {
    .sub-ttl02 {
      font-size: 5.33vw;
      line-height: 1.5; } }
.btn03 {
  background-color: #3159E4; }
  .btn03:hover {
    background-color: #f8ff93;
    color: #fff; }
    .btn03:hover.nolink {
      background-color: #3159E4; }
    .btn03:hover span::after {
      color: #3159E4; }

.txtlink a {
  color: #3159E4;
  text-decoration: underline; }

.txtlink span {
  font-weight: bold;
  font-family: "YakuHanJP", itc-avant-garde-gothic-pro, dnp-shuei-gothic-gin-std, sans-serif, sans-serif; }

@media screen and (min-width: 768px), print {
  .pcml20 {
    margin-left: 20px !important; } }

/* PROGRAM / 
   ========================================================================== */
@media screen and (min-width: 768px), print {
  #news .sct-ttl {
    top: 51px !important; } }

@media screen and (max-width: 767px) {
  #news .sct-ttl {
    top: 22.93vw !important;
    width: 64vw !important; }
    #news .sct-ttl img {
      height: 25.07vw !important;
      width: 64vw !important; } }

#news .-info {
  border-top: #0058e9 solid 1px;
  margin-top: 50px;
  padding-top: 20px; }

@media screen and (min-width: 768px), print {
  .sct-program-box {
    display: flex;
    justify-content: space-between; }
    .sct-program-box + .sct-program-box {
      margin-top: 60px; } }

@media screen and (max-width: 767px) {
  .sct-program-box + .sct-program-box {
    margin-top: 10.67vw; } }

.sct-program-box .program-box-ttl {
  display: flex;
  align-items: center;
  color: #3159E4; }
  .sct-program-box .program-box-ttl.-news {
    color: #ff563b; }
  @media screen and (min-width: 768px), print {
    .sct-program-box .program-box-ttl {
      margin-top: 0px; } }
  .sct-program-box .program-box-ttl .num {
    font-family: "YakuHanJP", itc-avant-garde-gothic-pro, heisei-kaku-gothic-std, sans-serif;
    font-style: normal;
    font-weight: 700;
    display: block;
    line-height: 1;
    text-align: center; }
    @media screen and (min-width: 768px), print {
      .sct-program-box .program-box-ttl .num {
        font-size: 56px;
        font-size: 5.6rem;
        margin-right: 8px; } }
    @media screen and (max-width: 767px) {
      .sct-program-box .program-box-ttl .num {
        font-size: 17.33vw;
        width: 13.33vw; } }
  .sct-program-box .program-box-ttl .ttl {
    font-family: "YakuHanJP", itc-avant-garde-gothic-pro, heisei-kaku-gothic-std, sans-serif;
    font-style: normal;
    font-weight: 700;
    font-weight: 600; }
    @media screen and (min-width: 768px), print {
      .sct-program-box .program-box-ttl .ttl {
        font-size: 26px;
        font-size: 2.6rem; } }
    @media screen and (max-width: 767px) {
      .sct-program-box .program-box-ttl .ttl {
        font-size: 5.33vw; } }
    @media screen and (min-width: 768px), print {
      .sct-program-box .program-box-ttl .ttl {
        margin-left: 5px;
        letter-spacing: -0.05em; } }
    @media screen and (max-width: 767px) {
      .sct-program-box .program-box-ttl .ttl {
        font-size: 5.33vw;
        line-height: 1.5;
        margin-left: 1.33vw; } }
    .sct-program-box .program-box-ttl .ttl span {
      color: #ff563b; }

.sct-program-box .program-box-txt {
  font-family: "YakuHanJP", itc-avant-garde-gothic-pro, dnp-shuei-gothic-gin-std, sans-serif, sans-serif;
  font-style: normal;
  font-weight: 500;
  line-height: 1.6666666667; }
  .sct-program-box .program-box-txt a {
    font-family: "YakuHanJP", itc-avant-garde-gothic-pro, dnp-shuei-gothic-gin-std, sans-serif, sans-serif;
    font-style: normal;
    font-weight: 500;
    text-decoration: underline; }
  @media screen and (min-width: 768px), print {
    .sct-program-box .program-box-txt {
      font-size: 15px;
      font-size: 1.5rem;
      margin-top: 20px; } }
  @media screen and (max-width: 767px) {
    .sct-program-box .program-box-txt {
      margin-top: 2.13vw; } }
@media screen and (min-width: 768px), print {
  .sct-program-box .program-box-left {
    width: calc(100% - 580px); }
    .sct-program-box .program-box-left.-news {
      width: calc(100% - 280px); } }

@media screen and (max-width: 767px) {
  .sct-program-box .program-box-left.-news {
    margin-bottom: 20px; } }

@media screen and (min-width: 768px) and (min-width: 768px), print {
  .sct-program-box .program-box-right.-news img {
    max-width: 300px; } }

@media screen and (max-width: 767px) {
  .sct-program-box .program-box-right {
    margin-top: 2.13vw; } }

.sct-program {
  font-family: "YakuHanJP", itc-avant-garde-gothic-pro, heisei-kaku-gothic-std, sans-serif;
  font-style: normal;
  font-weight: 700; }
  @media screen and (min-width: 768px), print {
    .sct-program .sct-btm-btn {
      margin-top: 20px;
      width: 40%; }
      .sct-program .sct-btm-btn .btn03 {
        padding: 20px; }
    .sct-program .att-min {
      font-size: 12px;
      font-size: 1.2rem;
      margin-top: 10px; }
      .sct-program .att-min::before {
        content: none !important; } }
  @media screen and (max-width: 767px) {
    .sct-program .sct-btm-btn {
      margin-top: 8vw;
      margin-bottom: 8vw !important; }
      .sct-program .sct-btm-btn .btn03 {
        padding: 4vw 0.53vw; }
    .sct-program .att-min {
      font-size: 12px;
      font-size: 1.2rem;
      margin-top: 10px; }
      .sct-program .att-min::before {
        content: none !important; } }
.program-sub-box {
  display: inline-block;
  margin-bottom: 1.33vw;
  padding: 1.33vw;
  border-style: solid;
  border-width: 15px;
  border-image-source: url(img/b02.png);
  border-image-slice: 90;
  border-image-width: 1;
  border-image-outset: 0;
  border-image-repeat: repeat; }
  @media screen and (max-width: 767px) {
    .program-sub-box {
      padding: 4vw 0.53vw; } }
/* イベント（2019/0410追加）
   ========================================================================== */
.sct-event {
  padding: 0 50px 90px; }
  @media screen and (max-width: 767px) {
    .sct-event {
      padding-right: 5.33vw;
      padding-left: 5.33vw;
      padding-bottom: 10.67vw; } }
  .sct-event .sct-event-box {
    margin-top: 50px;
    display: flex; }
    @media screen and (max-width: 767px) {
      .sct-event .sct-event-box {
        margin-top: 7vw;
        flex-direction: column-reverse; } }
    .sct-event .sct-event-box .event-box-text {
      width: calc(100% - 560px);
      padding-right: 50px; }
      @media screen and (max-width: 767px) {
        .sct-event .sct-event-box .event-box-text {
          width: 100%;
          padding: 0; } }
      .sct-event .sct-event-box .event-box-text h4 {
        font-size: 20px;
        font-size: 2rem;
        color: #3159E4;
        margin-bottom: 30px; }
        .sct-event .sct-event-box .event-box-text h4 span {
          color: #ff563b; }
        @media screen and (max-width: 767px) {
          .sct-event .sct-event-box .event-box-text h4 {
            font-size: 4.27vw;
            line-height: 1.4;
            margin-top: 5vw;
            margin-bottom: 5vw; } }
      .sct-event .sct-event-box .event-box-text p {
        margin-bottom: 20px;
        line-height: 1.65; }
    .sct-event .sct-event-box .event-box-youtube {
      width: 560px; }
      @media screen and (max-width: 767px) {
        .sct-event .sct-event-box .event-box-youtube {
          position: relative;
          width: 100%;
          height: 0;
          padding-bottom: 56.25%;
          overflow: hidden; }
          .sct-event .sct-event-box .event-box-youtube iframe {
            width: 100%;
            height: 100%;
            position: absolute;
            top: 0;
            left: 0; } }
/* ワークショップ
   ========================================================================== */
@media screen and (max-width: 767px) {
  .ws-body {
    min-width: inherit;
    margin: 0; } }

@media screen and (min-width: 768px), print {
  .ws-body #logo-box {
    width: 980px;
    padding: 15px 0;
    margin: 0 auto; } }

@media screen and (max-width: 767px) {
  .ws-body #logo-box {
    width: 100% !important;
    box-sizing: border-box;
    padding: 15px 15px;
    margin: 0 auto;
    vertical-align: middle; }
    .ws-body #logo-box img {
      width: auto;
      height: 30px; }
    .ws-body #logo-box p {
      margin: 0; } }

.ws-body #main {
  width: 100%;
  display: block; }

@media screen and (min-width: 768px), print {
  .ws-body #main .main-inner {
    width: 980px;
    padding: 40px;
    margin: 0 auto;
    background-color: #fff; } }

@media screen and (max-width: 767px) {
  .ws-body #main .main-inner {
    width: 96%;
    margin: 0 2%;
    box-sizing: border-box;
    padding: 20px 20px; } }

.ws-body .workshop {
  padding-bottom: 80px; }
  .ws-body .workshop h2 {
    font-size: 160%;
    margin-top: 25px;
    border-bottom: 1px dashed #000;
    border-top: 1px dashed #000;
    padding: 15px 0;
    text-align: center; }
  .ws-body .workshop h3 {
    margin-top: 70px; }
  .ws-body .workshop .box-ttl {
    margin-top: 40px;
    margin-bottom: 20px;
    background-color: #f9f9f9;
    border: 1px solid #e5e5e5;
    font-size: 110%;
    padding: 15px; }
  .ws-body .workshop .circle-ttl {
    font-size: 110%;
    margin-bottom: 10px;
    margin-top: 20px;
    padding-left: 22px;
    position: relative;
    display: inline-block; }
    .ws-body .workshop .circle-ttl:before {
      content: "■";
      color: #11b8d6;
      display: block;
      position: absolute;
      left: 0;
      top: 0; }
  .ws-body .workshop .remarks {
    margin-top: 20px;
    font-size: 85%;
    color: #999; }
  .ws-body .workshop .access-2colm img {
    width: 460px; }
  .ws-body .workshop #bus h3 {
    position: relative;
    font-size: 180%;
    color: #ea609e;
    clear: both;
    padding-top: 80px; }
    .ws-body .workshop #bus h3 span {
      position: absolute;
      top: 60px; }
      .ws-body .workshop #bus h3 span img {
        width: 90px;
        height: auto; }
  @media screen and (max-width: 767px) {
    .ws-body .workshop {
      padding-bottom: 40px !important; }
      .ws-body .workshop h2 {
        font-size: 120%;
        margin-top: 25px;
        border-bottom: 1px dashed #000;
        border-top: 1px dashed #000;
        padding: 10px 0;
        text-align: center; }
      .ws-body .workshop .box-ttl {
        margin-top: 25px;
        font-size: 98%;
        padding: 10px;
        margin-bottom: 10px; }
      .ws-body .workshop .circle-ttl {
        font-size: 100%; }
      .ws-body .workshop .item-text p {
        font-size: 90% !important;
        margin-top: 0 !important; } }
@media screen and (max-width: 767px) {
  .ws-body #wrapper {
    width: auto; } }

.ws-body #wrapper p {
  line-height: 1.6;
  font-size: 88%; }

.ws-body .foot-bnr {
  background-color: #11b8d6; }
  .ws-body .foot-bnr #bnr-list {
    box-sizing: border-box;
    overflow: hidden;
    margin: 0 auto;
    position: relative;
    width: 980px;
    padding: 60px 0;
    list-style: none; }
    @media screen and (max-width: 767px) {
      .ws-body .foot-bnr #bnr-list {
        box-sizing: border-box;
        padding: 30px 30px 15px;
        width: 100%; } }
    .ws-body .foot-bnr #bnr-list li {
      float: left;
      margin-right: 20px;
      width: 230px; }
      .ws-body .foot-bnr #bnr-list li:last-child {
        margin-right: 0; }
      @media screen and (max-width: 767px) {
        .ws-body .foot-bnr #bnr-list li {
          background-color: #fff;
          float: left;
          margin: 0 13px 15px 0;
          text-align: center;
          width: 47.5%; }
          .ws-body .foot-bnr #bnr-list li:nth-child(2n) {
            margin-right: 0; }
          .ws-body .foot-bnr #bnr-list li a {
            display: block; }
          .ws-body .foot-bnr #bnr-list li img {
            height: auto;
            width: 115px; } }
.ws-body .snsbox {
  width: 980px;
  margin: 0 auto;
  display: block;
  padding-top: 20px; }

.ws-body .snsbox .sns li {
  float: left; }

.ws-body .snsbox .sns_fb {
  margin-right: 15px; }

.ws-body a#page-top {
  display: block;
  position: fixed;
  width: 37px;
  height: 37px;
  bottom: 20px;
  right: 20px;
  background: url(img/bg_pagetop.gif) no-repeat scroll 0 0 transparent;
  z-index: 10000; }

.ws-body a#page-top:hover {
  background: url(img/bg_pagetop.gif) no-repeat scroll 0 -37px transparent; }

.ws-body .fr {
  float: right; }

.ws-body .foot {
  width: 980px;
  margin: 0 auto; }

/* TIME TABLE
   ========================================================================== */
@media screen and (min-width: 768px), print {
  .sct-timeTable {
    padding: 60px 80px 40px 80px; } }

@media screen and (max-width: 767px) {
  .sct-timeTable.pg-program-sct {
    margin-top: 40vw; } }

@media screen and (max-width: 767px) {
  .timeTable {
    overflow-x: scroll; } }

@media screen and (min-width: 768px), print {
  .timeTable__img {
    margin-bottom: 30px; } }

@media screen and (max-width: 767px) {
  .timeTable__img {
    width: 170.67vw;
    padding-right: 4.27vw;
    padding-bottom: 4.27vw; } }

.timeTable__subText {
  font-family: "YakuHanJP", itc-avant-garde-gothic-pro, dnp-shuei-gothic-gin-std, sans-serif, sans-serif;
  font-style: normal;
  font-weight: 500;
  color: #3159E4; }
  @media screen and (max-width: 767px) {
    .timeTable__subText {
      font-size: 3.2vw;
      margin-top: 5.33vw; } }
.timeTable__subText a {
  color: #3159E4;
  text-decoration: underline;
  font-family: "YakuHanJP", itc-avant-garde-gothic-pro, dnp-shuei-gothic-gin-std, sans-serif, sans-serif; }

@media screen and (max-width: 767px) {
  .scroll_text {
    text-align: center;
    margin-top: 4.27vw;
    font-size: 3.73vw;
    color: #3159E4; }
    .scroll_text span {
      position: relative; }
      .scroll_text span::before, .scroll_text span::after {
        content: "";
        width: 4.27vw;
        height: 100%;
        background: center center no-repeat;
        background-size: contain;
        position: absolute;
        top: 0; }
      .scroll_text span::before {
        background-image: url(img/arrow_left.svg);
        left: -6.4vw; }
      .scroll_text span::after {
        background-image: url(img/arrow_right.svg);
        right: -6.4vw; } }

@media screen and (min-width: 768px), print {
  .sct-detail-img {
    min-height: 553px;
    margin-top: 47px;
    text-align: center; } }

@media screen and (max-width: 767px) {
  .sct-detail-img {
    margin-top: 8vw; } }

@media screen and (min-width: 768px), print {
  .sct-detail .list-notice {
    margin-top: 25px; } }

@media screen and (max-width: 767px) {
  .sct-detail .list-notice {
    margin-top: 5.33vw; } }

.ttl-obj-illust {
  position: absolute; }
  @media screen and (min-width: 768px), print {
    .ttl-obj-illust.-program {
      width: 28.989vw;
      top: -6.484vw;
      left: -5.625vw; } }
  @media screen and (max-width: 767px) {
    .ttl-obj-illust.-program {
      width: 53.33vw;
      top: -21.33vw;
      left: 2.13vw; } }
  @media screen and (min-width: 768px), print {
    .ttl-obj-illust.-check {
      width: 12.518vw;
      top: -2.5vw;
      right: 5vw; } }
  @media screen and (max-width: 767px) {
    .ttl-obj-illust.-check {
      width: 25.6vw;
      top: -17.07vw;
      right: 4.27vw; } }
  @media screen and (min-width: 768px), print {
    .ttl-obj-illust.-consultation {
      width: 16.729vw;
      top: -2.3vw;
      right: 4vw; } }
  @media screen and (max-width: 767px) {
    .ttl-obj-illust.-consultation {
      width: 25.6vw;
      top: -17.07vw;
      right: 4.27vw; } }
  @media screen and (min-width: 768px), print {
    .ttl-obj-illust.-special01 {
      width: 19.811vw;
      top: -3.804vw;
      left: 2.464vw; } }
  @media screen and (max-width: 767px) {
    .ttl-obj-illust.-special01 {
      width: 24vw;
      top: -10.67vw;
      left: 0.53vw; } }
  @media screen and (min-width: 768px), print {
    .ttl-obj-illust.-special02 {
      width: 15.3vw;
      top: -1.649vw;
      left: 63.609vw; } }
  @media screen and (max-width: 767px) {
    .ttl-obj-illust.-special02 {
      width: 21.33vw;
      top: -13.33vw;
      right: 2.67vw; } }
  @media screen and (min-width: 768px), print {
    .ttl-obj-illust.-contents {
      width: 15.739vw;
      top: -3.836vw;
      right: 4.147vw; } }
  @media screen and (max-width: 767px) {
    .ttl-obj-illust.-contents {
      width: 32.8vw;
      top: -26.13vw;
      right: 1.33vw; } }
.timeTable-ttl {
  color: #3159E4;
  display: flex;
  align-items: center;
  display: flex;
  justify-content: center; }
  .timeTable-ttl .ttl {
    font-family: "caslons-egyptian", sans-serif;
    font-weight: 700;
    font-style: normal; }

@media screen and (min-width: 768px), print {
  .timeTable-ttl {
    font-size: 16px;
    font-size: 1.6rem; }
    .timeTable-ttl .ttl {
      font-size: 26px;
      font-size: 2.6rem;
      margin-right: 35px; }
  .timeTable-talbe {
    margin-top: 13px;
    display: flex;
    justify-content: center; } }

@media screen and (max-width: 767px) {
  .timeTable {
    margin-top: 4.27vw; }
    .timeTable-ttl {
      font-size: 3.2vw; }
      .timeTable-ttl .ttl {
        font-size: 5.87vw;
        margin-right: 2.13vw; }
    .timeTable-talbe {
      margin-top: 2.13vw; } }

@media screen and (min-width: 768px), print {
  .timeTable_bnr {
    margin-top: 50px;
    text-align: center; }
    .timeTable_bnr img {
      width: 100%;
      max-width: 1052px;
      min-width: 880px; } }

@media screen and (max-width: 767px) {
  .timeTable_bnr {
    margin-top: 8vw; } }

/* MODEL CORSE
   ========================================================================== */
#modelcorse {
  padding-bottom: 2.67vw; }

@media screen and (min-width: 768px), print {
  .sct-modelcorse {
    margin-top: 0px;
    padding-top: 0px;
    text-align: center; } }

@media screen and (max-width: 767px) {
  .sct-modelcorse {
    margin-top: 10px;
    padding-bottom: 0px; } }

@media screen and (min-width: 768px), print {
  .sct-modelcorse.pg-program-sct {
    background: none;
    border: none; } }

@media screen and (max-width: 767px) {
  .sct-modelcorse.pg-program-sct {
    background: none;
    border: none; } }

.modelcorse {
  position: relative; }

@media screen and (min-width: 768px), print {
  .modelcorse__img {
    margin-bottom: 20px; } }

@media screen and (max-width: 767px) {
  .modelcorse__img {
    margin-bottom: 0px; } }

.btn_modelcorse {
  position: absolute; }
  @media screen and (min-width: 768px), print {
    .btn_modelcorse {
      width: 30rem;
      height: auto;
      top: 84%;
      left: 2%;
      right: 0;
      margin: auto; } }
  @media screen and (max-width: 767px) {
    .btn_modelcorse {
      width: 60%;
      padding: 0px 1rem;
      height: auto;
      top: 86%;
      left: 21%; } }
  .btn_modelcorse a:hover {
    opacity: 0.65; }

/* HOW TO ENTRY
   ========================================================================== */
@media screen and (min-width: 768px), print {
  .howto-box-wrap {
    margin-top: 40px;
    display: flex;
    justify-content: center; } }

@media screen and (max-width: 767px) {
  .howto-box-wrap {
    margin-top: 8vw; } }

.howto-box-wrap .btn03[target="_blank"] span {
  font-size: 19px;
  font-size: 1.9rem; }
  .howto-box-wrap .btn03[target="_blank"] span::before {
    right: -30px !important; }
    @media screen and (max-width: 767px) {
      .howto-box-wrap .btn03[target="_blank"] span::before {
        right: -20px !important; } }
@media screen and (min-width: 768px), print {
  .howto-box-wrap .howto-box {
    padding-right: 25px;
    padding-left: 25px; } }

@media screen and (max-width: 767px) {
  .howto-box-wrap .howto-box + .howto-box {
    margin-top: 16vw; } }

.howto-box-wrap .howto-box .howto-tel-box {
  text-align: left; }
  @media screen and (min-width: 768px), print {
    .howto-box-wrap .howto-box .howto-tel-box {
      margin-top: 27px; } }
  @media screen and (max-width: 767px) {
    .howto-box-wrap .howto-box .howto-tel-box {
      margin-top: 5.73vw; } }
.howto-box-wrap .howto-box .howto-tel-box-number {
  font-family: "YakuHanJP", itc-avant-garde-gothic-pro, dnp-shuei-gothic-gin-std, sans-serif, sans-serif;
  font-style: normal;
  font-weight: 500;
  text-align: center; }
  @media screen and (max-width: 767px) {
    .howto-box-wrap .howto-box .howto-tel-box-number {
      line-height: 1.3; } }
  .howto-box-wrap .howto-box .howto-tel-box-number a {
    position: relative; }
    @media screen and (min-width: 768px), print {
      .howto-box-wrap .howto-box .howto-tel-box-number a {
        font-size: 40px;
        font-size: 4rem;
        padding-left: 68px; } }
    @media screen and (max-width: 767px) {
      .howto-box-wrap .howto-box .howto-tel-box-number a {
        font-size: 8.53vw;
        padding-left: 15.47vw; } }
    .howto-box-wrap .howto-box .howto-tel-box-number a::before {
      content: "";
      display: block;
      position: absolute;
      top: 0.3em;
      left: 0;
      background: url(img/icon_tel.svg) no-repeat center center;
      background-size: contain; }
      @media screen and (min-width: 768px), print {
        .howto-box-wrap .howto-box .howto-tel-box-number a::before {
          width: 50px;
          height: 28.608px; } }
      @media screen and (max-width: 767px) {
        .howto-box-wrap .howto-box .howto-tel-box-number a::before {
          width: 14.67vw;
          height: 9.33vw; } }
  .howto-box-wrap .howto-box .howto-tel-box-number span {
    display: block; }
    @media screen and (min-width: 768px), print {
      .howto-box-wrap .howto-box .howto-tel-box-number span {
        margin-top: 10px;
        padding-left: 0;
        font-size: 15px;
        font-size: 1.5rem; } }
    @media screen and (max-width: 767px) {
      .howto-box-wrap .howto-box .howto-tel-box-number span {
        padding-left: 15.47vw;
        font-size: 3.73vw; } }
.howto-box-ttl {
  color: #fff;
  text-align: center; }
  @media screen and (min-width: 768px), print {
    .howto-box-ttl {
      font-size: 25px;
      font-size: 2.5rem; } }
  @media screen and (max-width: 767px) {
    .howto-box-ttl {
      font-size: 5.07vw; } }
  .howto-box-ttl span {
    display: inline-block;
    position: relative; }
    .howto-box-ttl span::before {
      content: "";
      display: block;
      position: absolute;
      top: 50%;
      left: 0;
      transform: translateY(-50%); }
  .howto-box-ttl.-icon-web span {
    padding-left: 84px; }
    .howto-box-ttl.-icon-web span::before {
      background: url(../../common/css/img/icon_web.svg) no-repeat center;
      background-size: content;
      width: 64.56px;
      height: 32.397px; }
  @media screen and (max-width: 767px) {
    .howto-box-ttl.-icon-web {
      padding-left: 0; } }
  .howto-box-ttl.-icon-tel span {
    padding-left: 65px; }
    .howto-box-ttl.-icon-tel span::before {
      background: url(../../common/css/img/icon_phone02.svg) no-repeat center;
      background-size: content;
      width: 44.396px;
      height: 30.848px; }
  @media screen and (max-width: 767px) {
    .howto-box-ttl.-icon-tel {
      padding-left: 0; } }
.howto-box-txt img {
  width: auto;
  vertical-align: middle; }

@media screen and (min-width: 768px), print {
  .howto-box-txt {
    font-size: 14px;
    font-size: 1.4rem;
    margin-top: 25px;
    margin-bottom: 25px;
    text-align: center; }
    .howto-box-txt img {
      height: 15px; } }

@media screen and (max-width: 767px) {
  .howto-box-txt {
    font-size: 3.47vw;
    margin-top: 5.33vw; }
    .howto-box-txt img {
      height: 3.47vw; } }

.reserve-button-wrap {
  display: flex;
  justify-content: space-between; }
  @media screen and (max-width: 767px) {
    .reserve-button-wrap {
      flex-wrap: wrap; } }
  @media screen and (min-width: 768px), print {
    .reserve-button-wrap a img {
      max-width: 400px; } }
.howto-box-att {
  display: flex;
  justify-content: center; }
  @media screen and (min-width: 768px), print {
    .howto-box-att {
      margin-top: 40px; } }
  @media screen and (max-width: 767px) {
    .howto-box-att {
      margin-top: 5.33vw; } }
/* Q&A
   ========================================================================== */
.qa-item:nth-child(n + 4) {
  display: none; }

@media screen and (min-width: 768px), print {
  .sct-qa .sct-btm-btn .btn03 {
    padding: 25.5px 175px; } }

.sct-qa .sct-btm-btn .btn03 span::before, .sct-qa .sct-btm-btn .btn03 span::after {
  content: "";
  display: block;
  position: absolute;
  background-color: #fff;
  border-radius: 20px;
  right: -20px; }

.sct-qa .sct-btm-btn .btn03 span::before {
  transform: translateY(-50%) rotate(-45deg); }

.sct-qa .sct-btm-btn .btn03 span::after {
  transform: translateY(-50%) rotate(45deg); }

@media screen and (min-width: 768px), print {
  .sct-qa .sct-btm-btn .btn03 span::before, .sct-qa .sct-btm-btn .btn03 span::after {
    width: 4px;
    height: 14px; }
  .sct-qa .sct-btm-btn .btn03 span::before {
    top: calc(50% - 4px); }
  .sct-qa .sct-btm-btn .btn03 span::after {
    top: calc(50% + 4px); } }

@media screen and (max-width: 767px) {
  .sct-qa .sct-btm-btn .btn03 span::before, .sct-qa .sct-btm-btn .btn03 span::after {
    width: 1.07vw;
    height: 3.2vw; }
  .sct-qa .sct-btm-btn .btn03 span::before {
    top: calc(50% - 0.8vw); }
  .sct-qa .sct-btm-btn .btn03 span::after {
    top: calc(50% + 0.8vw); } }

/* CHECK
   ========================================================================== */
@media screen and (min-width: 768px), print {
  .sct-check .sct-ttl {
    top: 42px; } }

@media screen and (max-width: 767px) {
  .sct-check .sct-ttl {
    top: 24.27vw !important;
    width: 74.67vw !important; }
    .sct-check .sct-ttl img {
      height: 23.73vw !important;
      width: 74.67vw !important; } }

@media screen and (max-width: 767px) {
  .sct-check .sct-ttl-box {
    padding: 0; } }

.check-textlink {
  line-height: 1.6666666667;
  font-family: "YakuHanJP", itc-avant-garde-gothic-pro, heisei-kaku-gothic-std, sans-serif;
  font-style: normal;
  font-weight: 700; }
  .check-textlink a {
    color: #3159E4;
    text-decoration: underline;
    font-family: "YakuHanJP", itc-avant-garde-gothic-pro, heisei-kaku-gothic-std, sans-serif;
    font-style: normal;
    font-weight: 700; }
  @media screen and (min-width: 768px), print {
    .check-textlink {
      font-size: 14px;
      font-size: 1.4rem;
      margin-top: 10px;
      padding-left: 8%; } }
  @media screen and (max-width: 767px) {
    .check-textlink {
      font-size: 13px;
      font-size: 1.3rem;
      margin-top: 5.33vw; } }
.check__img {
  position: relative; }
  @media screen and (min-width: 768px), print {
    .check__img {
      margin-top: 50px !important;
      text-align: center; }
      .check__img img {
        width: 96% !important; } }
  @media screen and (max-width: 767px) {
    .check__img {
      padding: 0; }
      .check__img img {
        width: 100% !important; } }
  .check__img.-att {
    position: absolute; }
    @media screen and (min-width: 768px), print {
      .check__img.-att {
        width: 20%;
        top: 64%;
        left: 40.5%;
        margin: 0;
        padding: 0; } }
    @media screen and (max-width: 767px) {
      .check__img.-att {
        width: 65%;
        top: 51%;
        left: 17%;
        margin: 0;
        padding: 0; } }
  @media screen and (min-width: 768px), print {
    .check__img.-main img {
      width: 86% !important; } }
  @media screen and (min-width: 768px), print {
    .check__img.-sec {
      margin: 80px 0 30px !important; } }
  @media screen and (max-width: 767px) {
    .check__img.-sec {
      margin-bottom: 5.33vw; } }
/* ACCESS
   ========================================================================== */
@media screen and (min-width: 768px), print {
  .cmn-access {
    padding: 58px 54px 40px 57px; } }

.cmn-access-img {
  text-align: center; }
  @media screen and (max-width: 767px) {
    .cmn-access-img {
      margin-top: 8vw; } }
/* SHUTTLE BUS
   ========================================================================== */
@media screen and (max-width: 767px) {
  .sct-shuttle {
    padding-bottom: 0; }
    .sct-shuttle.-map .sct-ttl-box {
      position: relative;
      z-index: 5; } }

@media screen and (min-width: 768px), print {
  .sct-shuttle .sct-ttl {
    top: -115px; } }

@media screen and (max-width: 767px) {
  .sct-shuttle .sct-ttl {
    top: -102px; } }

.badge-item {
  position: absolute; }
  @media screen and (min-width: 768px), print {
    .badge-item {
      width: rem(120);
      height: rem(120);
      top: 25px;
      left: inherit;
      right: 140px; } }
  @media screen and (max-width: 767px) {
    .badge-item {
      font-size: 4vw;
      width: 21.33vw;
      height: 21.33vw;
      left: inherit;
      right: 0; } }
.shuttle-ttl {
  text-align: center;
  font-family: "YakuHanJP", itc-avant-garde-gothic-pro, heisei-kaku-gothic-std, sans-serif;
  font-style: normal;
  font-weight: 700; }
  .shuttle-ttl.-mini {
    line-height: 0.8; }
  @media screen and (min-width: 768px), print {
    .shuttle-ttl {
      font-size: 28px;
      font-size: 2.8rem;
      padding-left: 0; }
      .shuttle-ttl span {
        margin-top: 0px;
        color: #0058e9;
        font-size: 20px;
        font-size: 2rem; } }
  @media screen and (max-width: 767px) {
    .shuttle-ttl {
      font-size: 5.33vw;
      padding-left: 0;
      text-align: left;
      line-height: 1.5; }
      .shuttle-ttl span {
        margin-top: 2.67vw;
        font-size: 3.2vw;
        color: #0058e9; }
      .shuttle-ttl.-main {
        text-align: center; } }
@media screen and (min-width: 768px), print {
  .ttl-p {
    text-align: center;
    margin-top: 30px; } }

@media screen and (max-width: 767px) {
  .ttl-p {
    margin-top: 8vw; } }

small {
  font-size: smaller; }

@media screen and (min-width: 768px), print {
  .sct-shuttle-close {
    padding: 0px 50px 84px 50px; }
    .sct-shuttle-close .shuttle-ttl-box {
      margin-left: 10px; } }

@media screen and (min-width: 768px), print {
  .sct-shuttle-close.-main {
    padding: 0px 150px 84px 150px !important; } }

.sct-shuttle-distant {
  background-color: #f5f6fa; }
  @media screen and (min-width: 768px), print {
    .sct-shuttle-distant {
      padding: 80px 70px 100px 63px; } }
  @media screen and (max-width: 767px) {
    .sct-shuttle-distant {
      margin-top: -26.67vw;
      padding-top: 37.33vw;
      padding-bottom: 10.67vw; } }
@media screen and (min-width: 768px), print {
  .sct-shuttle-tbl-wrap {
    margin-top: 39px;
    padding-left: 10px; } }

@media screen and (max-width: 767px) {
  .sct-shuttle-tbl-wrap {
    margin-top: 8vw;
    padding-left: 2.67vw;
    padding-right: 2.67vw; } }

@media screen and (min-width: 768px), print {
  .sct-shuttle-tbl-wrap + .sct-shuttle-tbl-wrap {
    margin-top: 44px; } }

.sct-shuttle-tbl-wrap .ttl {
  text-align: center;
  color: #ff563b; }
  @media screen and (min-width: 768px), print {
    .sct-shuttle-tbl-wrap .ttl {
      font-size: 25px;
      font-size: 2.5rem; } }
  @media screen and (max-width: 767px) {
    .sct-shuttle-tbl-wrap .ttl {
      font-size: 5.07vw; } }
  .sct-shuttle-tbl-wrap .ttl span {
    font-family: "caslons-egyptian", sans-serif;
    font-weight: 700;
    font-style: normal; }
    @media screen and (min-width: 768px), print {
      .sct-shuttle-tbl-wrap .ttl span {
        font-size: 39px;
        font-size: 3.9rem; } }
    @media screen and (max-width: 767px) {
      .sct-shuttle-tbl-wrap .ttl span {
        font-size: 9.33vw; } }
@media screen and (min-width: 768px), print {
  .sct-shuttle-tbl-wrap .shuttle-tbl + .shuttle-tbl {
    margin-top: 8px; } }

@media screen and (max-width: 767px) {
  .sct-shuttle-tbl-wrap .shuttle-tbl:first-of-type {
    margin-top: 2.67vw; }
  .sct-shuttle-tbl-wrap .shuttle-tbl + .shuttle-tbl {
    margin-top: 4vw; } }

.sct-shuttle-tbl-wrap table {
  width: 100%;
  text-align: center; }
  .sct-shuttle-tbl-wrap table th,
  .sct-shuttle-tbl-wrap table td {
    vertical-align: middle; }
    @media screen and (min-width: 768px), print {
      .sct-shuttle-tbl-wrap table th,
      .sct-shuttle-tbl-wrap table td {
        font-size: 15px;
        font-size: 1.5rem; } }
    @media screen and (max-width: 767px) {
      .sct-shuttle-tbl-wrap table th,
      .sct-shuttle-tbl-wrap table td {
        white-space: nowrap;
        padding: 2.67vw; } }
  .sct-shuttle-tbl-wrap table th {
    color: #fff;
    background-color: #a6a4dd;
    line-height: 2.4;
    border-top: 1px solid #dbdbdb; }
    @media screen and (min-width: 768px), print {
      .sct-shuttle-tbl-wrap table th {
        padding: 5px 0; } }
  .sct-shuttle-tbl-wrap table td {
    background-color: #fff;
    border-bottom: 1px solid #dbdbdb; }
    @media screen and (min-width: 768px), print {
      .sct-shuttle-tbl-wrap table td {
        padding: 10px 0; } }
  .sct-shuttle-tbl-wrap table tr th:first-child {
    border-top: none;
    background-color: #3159E4;
    line-height: 1.7333333333; }
    @media screen and (min-width: 768px), print {
      .sct-shuttle-tbl-wrap table tr th:first-child {
        width: 208px;
        min-width: 208px; }
        .sct-shuttle-tbl-wrap table tr th:first-child + th {
          width: 85px; } }
    @media screen and (max-width: 767px) {
      .sct-shuttle-tbl-wrap table tr th:first-child {
        min-width: 26.67vw;
        width: 26.67vw;
        padding-right: 2.13vw;
        padding-left: 2.13vw;
        font-size: 3.47vw; } }
  .sct-shuttle-tbl-wrap table tr td:first-child {
    color: #e84b6d;
    font-size: 13px;
    font-size: 1.3rem; }
  .sct-shuttle-tbl-wrap table tr:last-child td {
    border-bottom: none; }
  @media screen and (min-width: 768px), print {
    .sct-shuttle-tbl-wrap table th:last-child {
      width: 205px; }
    .sct-shuttle-tbl-wrap table.th-col2 th:last-child {
      width: 280px; }
    .sct-shuttle-tbl-wrap table.th-col3 th:nth-child(3) {
      width: 280px; }
    .sct-shuttle-tbl-wrap table.th-col3 th:last-child {
      width: 310px; }
    .sct-shuttle-tbl-wrap table.th-col5 th:nth-child(3) {
      width: 120px; }
    .sct-shuttle-tbl-wrap table.th-col5 th:nth-child(5) {
      width: 110px; }
    .sct-shuttle-tbl-wrap table.th-col5 th:nth-child(7) {
      width: 110px; }
    .sct-shuttle-tbl-wrap table.th-col5 th:nth-child(9) {
      width: 110px; }
    .sct-shuttle-tbl-wrap table.th-col5 th:last-child {
      width: 110px; } }
@media screen and (min-width: 768px), print {
  .cmn-access-btm-btn {
    display: flex;
    justify-content: center;
    margin-top: 30px; } }

@media screen and (min-width: 768px), print {
  .cmn-access-btm-btn li {
    max-width: 40%;
    margin: 0 30px 0 0; } }

@media screen and (max-width: 767px) {
  .cmn-access-btm-btn li {
    margin: 0 0 5.33vw 0; } }

.cmn-access-btm-btn li:last-child {
  margin: 0; }

@media screen and (min-width: 768px), print {
  .sct-shuttle-reservation {
    margin-top: 71px; } }

@media screen and (max-width: 767px) {
  .sct-shuttle-reservation {
    margin-top: 14.67vw; } }

.reservation-ttl {
  color: #ff563b;
  background-color: #fff;
  text-align: center;
  border-radius: 10px; }
  @media screen and (min-width: 768px), print {
    .reservation-ttl {
      font-size: 26px;
      font-size: 2.6rem; } }
  @media screen and (max-width: 767px) {
    .reservation-ttl {
      font-size: 5.33vw; } }
  @media screen and (min-width: 768px), print {
    .reservation-ttl {
      padding: 17px 0; } }
  @media screen and (max-width: 767px) {
    .reservation-ttl {
      padding: 2.13vw 0; } }
@media screen and (min-width: 768px), print {
  .reservation-box {
    margin-top: 50px; } }

@media screen and (max-width: 767px) {
  .reservation-box {
    margin-top: 9.07vw; } }

@media screen and (min-width: 768px), print {
  .reservation-box-wrap {
    display: flex;
    flex-wrap: wrap;
    margin-top: 38px;
    margin-right: -17px;
    margin-left: -17px; }
    .reservation-box-wrap > .reservation-box {
      margin-top: 0;
      width: 50%;
      padding-right: 17px;
      padding-left: 17px; } }

.reservation-box-ttl {
  color: #3159E4;
  border-bottom: 4px solid #3159E4;
  line-height: 1.5; }
  @media screen and (min-width: 768px), print {
    .reservation-box-ttl {
      font-size: 24px;
      font-size: 2.4rem; } }
  @media screen and (max-width: 767px) {
    .reservation-box-ttl {
      font-size: 4.8vw; } }
  @media screen and (min-width: 768px), print {
    .reservation-box-ttl {
      padding-bottom: 4px; } }
  @media screen and (max-width: 767px) {
    .reservation-box-ttl {
      margin-bottom: 3.47vw;
      padding-bottom: 2.13vw; } }
.reservation-box-txt {
  line-height: 1.7333333333; }
  @media screen and (min-width: 768px), print {
    .reservation-box-txt {
      font-size: 15px;
      font-size: 1.5rem;
      margin-top: 13px; } }
.reservation-box-btn {
  text-align: center; }
  .reservation-box-btn a[href^="tel:"] {
    color: #3159E4; }
    @media screen and (min-width: 768px), print {
      .reservation-box-btn a[href^="tel:"] {
        font-size: 24px;
        font-size: 2.4rem; } }
    @media screen and (max-width: 767px) {
      .reservation-box-btn a[href^="tel:"] {
        font-size: 4.8vw; } }
    .reservation-box-btn a[href^="tel:"] span {
      position: relative; }
      .reservation-box-btn a[href^="tel:"] span::before {
        content: "";
        display: block;
        position: absolute;
        top: 50%;
        left: 0;
        transform: translateY(-50%);
        background: url(../../common/css/img/icon_phone.svg) no-repeat center center;
        background-size: contain; }
        @media screen and (min-width: 768px), print {
          .reservation-box-btn a[href^="tel:"] span::before {
            width: 25.5px;
            height: 26px; } }
        @media screen and (max-width: 767px) {
          .reservation-box-btn a[href^="tel:"] span::before {
            width: 6.13vw;
            height: 6.27vw; } }
      @media screen and (min-width: 768px), print {
        .reservation-box-btn a[href^="tel:"] span {
          padding-left: 35px; } }
      @media screen and (max-width: 767px) {
        .reservation-box-btn a[href^="tel:"] span {
          padding-left: 9.33vw; } }
  @media screen and (min-width: 768px), print {
    .reservation-box-btn {
      margin: 20px auto 0;
      width: 340px; }
      .reservation-box-btn .btn03 {
        padding: 18.5px; }
      .reservation-box-btn a[href^="tel:"] {
        padding: 15.5px; } }
  @media screen and (max-width: 767px) {
    .reservation-box-btn {
      margin-top: 5.33vw; } }
  @media screen and (min-width: 768px), print {
    .reservation-box-btn.-txt {
      margin-top: 38.5px; } }
.reservation-box-notice {
  color: #ff563b; }
  @media screen and (min-width: 768px), print {
    .reservation-box-notice {
      font-size: 15px;
      font-size: 1.5rem;
      margin-top: 18px; } }
  @media screen and (max-width: 767px) {
    .reservation-box-notice {
      margin-top: 4.8vw; } }
.sct-shuttle-close-box .pg-program-hide {
  display: none; }

.att-foot {
  text-align: center; }
  @media screen and (min-width: 768px), print {
    .att-foot {
      width: 600px;
      margin: 80px auto; }
      .att-foot.-green {
        margin: 40px auto; } }
  @media screen and (max-width: 767px) {
    .att-foot {
      margin-top: 10.67vw;
      padding-left: 4vw;
      padding-right: 4vw; } }
  .att-foot .att-foot-ttl-box {
    position: relative;
    background-color: #fff;
    padding: 40px; }
    .att-foot .att-foot-ttl-box::before {
      content: "";
      display: block;
      position: absolute;
      left: 0;
      background: url(img/icon_exclamation.svg) no-repeat center center;
      background-size: contain;
      z-index: 5; }
      @media screen and (min-width: 768px), print {
        .att-foot .att-foot-ttl-box::before {
          top: 57px;
          left: 110px;
          transform: translateY(-50%);
          width: 40px;
          height: 40px; } }
      @media screen and (max-width: 767px) {
        .att-foot .att-foot-ttl-box::before {
          top: 41px;
          left: 25px;
          width: 8vw;
          height: 8vw; } }
    @media screen and (max-width: 767px) {
      .att-foot .att-foot-ttl-box.-green {
        padding: 30px 20px 20px; } }
    @media screen and (min-width: 768px), print {
      .att-foot .att-foot-ttl-box.-green::before {
        left: 70px; } }
    @media screen and (max-width: 767px) {
      .att-foot .att-foot-ttl-box.-green::before {
        top: 28px;
        left: 20px; } }
  .att-foot .att-foot-ttl {
    position: relative;
    color: #000;
    display: inline-block; }
    @media screen and (min-width: 768px), print {
      .att-foot .att-foot-ttl {
        font-size: 25px;
        font-size: 2.5rem;
        padding-bottom: 3px;
        margin-bottom: 10px;
        padding-left: 40px; } }
    @media screen and (max-width: 767px) {
      .att-foot .att-foot-ttl {
        font-size: 4.8vw;
        padding-left: 0;
        padding-bottom: 2.67vw; } }
    .att-foot .att-foot-ttl.-green {
      color: #3159E4 !important; }
      .att-foot .att-foot-ttl.-green span {
        font-size: 1.33vw;
        line-height: 2.2; }
      .att-foot .att-foot-ttl.-green a {
        color: #3159E4 !important; }
      @media screen and (max-width: 767px) {
        .att-foot .att-foot-ttl.-green {
          margin-left: 4vw;
          font-size: 4vw; }
          .att-foot .att-foot-ttl.-green span {
            font-size: 3.47vw;
            line-height: 1.8; } }
.fb {
  display: inline-block;
  font-weight: bold !important; }

.shuttle-bar-ttl-left {
  background-color: #3159E4;
  color: #fff;
  font-weight: 600; }
  .shuttle-bar-ttl-left.-ttl_s {
    font-family: "YakuHanJP", itc-avant-garde-gothic-pro, heisei-kaku-gothic-std, sans-serif;
    font-style: normal;
    font-weight: 700;
    text-align: left;
    font-size: 1.6vw;
    line-height: 1.2; }
  @media screen and (max-width: 767px) {
    .shuttle-bar-ttl-left {
      text-align: left;
      padding-left: 5.33vw; }
      .shuttle-bar-ttl-left.-ttl_s {
        font-size: 4.8vw; } }
.shuttle-bar-ttl {
  font-weight: 600;
  color: #3159E4;
  align-items: center;
  line-height: 0.7857142857;
  text-align: center; }
  @media screen and (min-width: 768px), print {
    .shuttle-bar-ttl {
      font-size: 28px;
      font-size: 2.8rem;
      display: flex;
      background-color: #d2d8ff;
      margin-top: 50px; }
      .shuttle-bar-ttl.-min {
        font-size: 24px;
        font-size: 2.4rem; }
        .shuttle-bar-ttl.-min span {
          font-size: 14px;
          font-size: 1.4rem;
          vertical-align: middle; }
      .shuttle-bar-ttl span {
        font-weight: 600;
        font-size: 16px;
        font-size: 1.6rem; } }
  @media screen and (max-width: 767px) {
    .shuttle-bar-ttl {
      font-size: 4.53vw; }
      .shuttle-bar-ttl span {
        font-size: 3.47vw; } }
.shuttle-bar-ttl-right {
  text-align: left;
  font-family: "YakuHanJP", itc-avant-garde-gothic-pro, heisei-kaku-gothic-std, sans-serif;
  font-style: normal;
  font-weight: 700; }
  @media screen and (min-width: 768px), print {
    .shuttle-bar-ttl-right {
      padding-bottom: 0.4vw;
      padding-left: 1.33vw; } }
  @media screen and (max-width: 767px) {
    .shuttle-bar-ttl-right {
      margin: 0;
      padding: 4vw 4vw 4vw 4vw;
      background-color: #d2d8ff;
      line-height: 1.4; } }
.sct-qa .qa-ttl {
  font-family: "YakuHanJP", itc-avant-garde-gothic-pro, heisei-kaku-gothic-std, sans-serif; }

.sct-qa .qa-answer {
  font-family: "YakuHanJP", itc-avant-garde-gothic-pro, dnp-shuei-gothic-gin-std, sans-serif, sans-serif; }

.sct-qa .txt-q,
.sct-qa .txt-a {
  font-family: "YakuHanJP", itc-avant-garde-gothic-pro, sans-serif; }

.access-detail-ttl,
.access-panel-ttl {
  font-family: "YakuHanJP", itc-avant-garde-gothic-pro, heisei-kaku-gothic-std, sans-serif; }

.access-detail-address,
.access-panel-item {
  font-family: "YakuHanJP", itc-avant-garde-gothic-pro, heisei-kaku-gothic-std, sans-serif; }

.access-panel-btn a span {
  font-family: "YakuHanJP", itc-avant-garde-gothic-pro, heisei-kaku-gothic-std, sans-serif; }

.notice-item {
  font-family: "YakuHanJP", itc-avant-garde-gothic-pro, dnp-shuei-gothic-gin-std, sans-serif, sans-serif; }

.howto-foot {
  display: block;
  max-width: 890px;
  margin: 0 auto; }

.howto-foot-ttl-box {
  position: relative; }
  .howto-foot-ttl-box::before {
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
    background: url(img/icon_exclamation.svg) no-repeat center center;
    background-size: contain;
    z-index: 5; }
    @media screen and (min-width: 768px), print {
      .howto-foot-ttl-box::before {
        width: 71.482px;
        height: 71.481px; } }
    @media screen and (max-width: 767px) {
      .howto-foot-ttl-box::before {
        top: 28%;
        left: -2%;
        width: 14.67vw;
        height: 14.67vw; } }
.howto-foot-ttl {
  position: relative;
  color: #3159E4;
  display: inline-block; }
  .howto-foot-ttl::before {
    content: "";
    display: block;
    position: absolute;
    left: 10px;
    bottom: 0;
    width: 100%;
    height: 1px;
    background-color: #3159E4; }
  @media screen and (min-width: 768px), print {
    .howto-foot-ttl {
      font-size: 25px;
      font-size: 2.5rem;
      padding-left: 100px;
      padding-bottom: 3px; } }
  @media screen and (max-width: 767px) {
    .howto-foot-ttl {
      font-size: 3.47vw;
      padding-left: 16vw;
      padding-bottom: 0.8vw; } }
.howto-foot-sub-ttl {
  font-family: "YakuHanJP", itc-avant-garde-gothic-pro, dnp-shuei-gothic-gin-std, sans-serif, sans-serif;
  font-style: normal;
  font-weight: 500; }
  @media screen and (min-width: 768px), print {
    .howto-foot-sub-ttl {
      font-size: 16px;
      font-size: 1.6rem;
      padding-left: 100px;
      padding-top: 3px; } }
  @media screen and (max-width: 767px) {
    .howto-foot-sub-ttl {
      font-size: 2.93vw;
      padding-top: 0.8vw;
      padding-left: 16vw; } }
@media screen and (min-width: 768px), print {
  .pg-cmn-wrap {
    margin-top: 150px; }
    .pg-cmn-wrap .information-box,
    .pg-cmn-wrap .schedule-box {
      border: solid 2px #3159E4; } }

.contact-box {
  background-color: #3159E4; }

.shuttle-min-ttl {
  color: #0058e9;
  line-height: 0.7857142857; }
  @media screen and (min-width: 768px), print {
    .shuttle-min-ttl {
      font-size: 18px;
      font-size: 1.8rem;
      margin-top: 13.5px;
      text-align: center; } }
  @media screen and (max-width: 767px) {
    .shuttle-min-ttl {
      font-size: 4vw;
      margin: 2.67vw 0;
      padding-left: 5.33vw;
      line-height: 1.4;
      text-align: left; } }
@media screen and (min-width: 768px), print {
  .bus-box-wrap {
    margin-top: 40px;
    display: flex;
    justify-content: space-between; } }

@media screen and (max-width: 767px) {
  .bus-box-wrap {
    margin-top: 8vw; } }

@media screen and (min-width: 768px), print {
  .bus-box-wrap p {
    width: 48%; } }

@media screen and (max-width: 767px) {
  .bus-box-wrap p {
    margin-bottom: 2.67vw; } }

.bus-box-wrap p a {
  display: block;
  border: #3159E4 2px solid;
  border-radius: 50px;
  position: relative;
  text-align: center; }
  @media screen and (min-width: 768px), print {
    .bus-box-wrap p a {
      padding: 20px;
      font-size: 18px;
      font-size: 1.8rem; } }
  @media screen and (max-width: 767px) {
    .bus-box-wrap p a {
      padding: 1.6vw; } }
  .bus-box-wrap p a::after, .bus-box-wrap p a::before {
    content: "";
    display: block;
    position: absolute;
    background-color: #3159E4;
    top: 0;
    bottom: 0;
    right: 0;
    margin: auto;
    border-radius: 20px; }
    @media screen and (min-width: 768px), print {
      .bus-box-wrap p a::after, .bus-box-wrap p a::before {
        width: 6px;
        height: 20px; } }
    @media screen and (max-width: 767px) {
      .bus-box-wrap p a::after, .bus-box-wrap p a::before {
        width: 1.33vw;
        height: 4vw; } }
  .bus-box-wrap p a::before {
    transform: rotate(45deg); }
    @media screen and (min-width: 768px), print {
      .bus-box-wrap p a::before {
        right: 40px; } }
    @media screen and (max-width: 767px) {
      .bus-box-wrap p a::before {
        right: 4.27vw; } }
  .bus-box-wrap p a::after {
    transform: rotate(-45deg); }
    @media screen and (min-width: 768px), print {
      .bus-box-wrap p a::after {
        right: 50px; } }
    @media screen and (max-width: 767px) {
      .bus-box-wrap p a::after {
        right: 6.67vw; } }
.bus-foot-ttl-box {
  position: relative; }
  .bus-foot-ttl-box::before {
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
    background: url(img/icon_exclamation.svg) no-repeat center center;
    background-size: contain;
    z-index: 5; }
    @media screen and (min-width: 768px), print {
      .bus-foot-ttl-box::before {
        width: 71.482px;
        height: 71.481px; } }
    @media screen and (max-width: 767px) {
      .bus-foot-ttl-box::before {
        top: 28%;
        left: -2%;
        width: 14.67vw;
        height: 14.67vw; } }
.bus-foot-ttl {
  position: relative;
  color: #3159E4;
  display: inline-block; }
  .bus-foot-ttl::before {
    content: "";
    display: block;
    position: absolute;
    left: 10px;
    bottom: 0;
    width: 100%;
    height: 1px;
    background-color: #3159E4; }
  @media screen and (min-width: 768px), print {
    .bus-foot-ttl {
      font-size: 22px;
      font-size: 2.2rem;
      padding-left: 100px;
      padding-bottom: 3px; } }
  @media screen and (max-width: 767px) {
    .bus-foot-ttl {
      font-size: 3.47vw;
      padding-left: 16vw;
      padding-bottom: 0.8vw; } }
@media screen and (min-width: 768px), print {
  .pg-nav-bus-item {
    height: 77.5px; } }

@media screen and (max-width: 767px) {
  .pg-nav-bus-item {
    height: 13.33vw !important;
    margin: 0 3%; } }

@media screen and (min-width: 768px), print {
  .pg-nav-bus-item + .pg-nav-bus-item {
    margin-left: 16px; } }

@media screen and (max-width: 767px) {
  .pg-nav-bus-item + .pg-nav-bus-item {
    margin-top: 5.6vw; } }

.pg-nav-bus-item a {
  background-color: #fff;
  border: #3159E4 1px solid;
  color: #3159E4;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  border-radius: 80px;
  transition: opacity 0.2s ease-out; }
  .pg-nav-bus-item a:hover {
    opacity: 0.8; }
  @media screen and (min-width: 768px), print {
    .pg-nav-bus-item a {
      font-size: 24px;
      font-size: 2.4rem;
      padding: 0 78px; } }
  @media screen and (max-width: 767px) {
    .pg-nav-bus-item a {
      font-size: 4.27vw;
      padding: 0 2.67vw 0 5.33vw; } }
  .pg-nav-bus-item a .sub-ttl {
    display: block;
    line-height: 1;
    margin-top: 4px; }
    @media screen and (min-width: 768px), print {
      .pg-nav-bus-item a .sub-ttl {
        font-size: 18px;
        font-size: 1.8rem; } }
    @media screen and (max-width: 767px) {
      .pg-nav-bus-item a .sub-ttl {
        font-size: 3.47vw; } }
@media screen and (min-width: 768px), print {
  .pg-nav-bus-item:nth-child(2) a {
    font-size: 25px;
    font-size: 2.5rem; } }

.pg-nav-bus-item span:not(.sub-ttl) {
  display: inline-block;
  position: relative; }
  @media screen and (min-width: 768px), print {
    .pg-nav-bus-item span:not(.sub-ttl) {
      padding-right: 44px; } }
  @media screen and (max-width: 767px) {
    .pg-nav-bus-item span:not(.sub-ttl) {
      padding-right: 6.67vw; } }
  .pg-nav-bus-item span:not(.sub-ttl)::after, .pg-nav-bus-item span:not(.sub-ttl)::before {
    content: "";
    display: block;
    position: absolute;
    background-color: #3159E4;
    top: 0;
    bottom: 0;
    right: 0;
    margin: auto;
    border-radius: 20px; }
    @media screen and (min-width: 768px), print {
      .pg-nav-bus-item span:not(.sub-ttl)::after, .pg-nav-bus-item span:not(.sub-ttl)::before {
        width: 6px;
        height: 20px; } }
    @media screen and (max-width: 767px) {
      .pg-nav-bus-item span:not(.sub-ttl)::after, .pg-nav-bus-item span:not(.sub-ttl)::before {
        width: 1.33vw;
        height: 4vw; } }
  .pg-nav-bus-item span:not(.sub-ttl)::before {
    transform: rotate(45deg); }
  .pg-nav-bus-item span:not(.sub-ttl)::after {
    transform: rotate(-45deg); }
    @media screen and (min-width: 768px), print {
      .pg-nav-bus-item span:not(.sub-ttl)::after {
        right: 10px; } }
    @media screen and (max-width: 767px) {
      .pg-nav-bus-item span:not(.sub-ttl)::after {
        right: 2vw; } }
#access .sct-btm-btn {
  display: block !important; }

#foot {
  padding-top: 50px; }
