@charset "UTF-8";
/* =======================================



	CommonElements



======================================= */
html {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 75%;
}

body {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 15px;
  /*line-height: 160%;*/
  font-family: "メイリオ", "Meiryo", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "Osaka", "ＭＳ Ｐゴシック",
 "MS P Gothic", Verdana, Arial, Helvetica, sans-serif;
  color: #000;
  text-align: center;
  background: #fff;
  position: relative;
  overflow: hidden;
  visibility: hidden;
}

/* clear */
.clear {
  *zoom: 1;
  clear: both;
}

.clear:before {
  content: " ";
  display: table;
}

.clear:after {
  content: " ";
  display: table;
  clear: both;
}

img {
  max-width: 100%;
  vertical-align: bottom;
}

a {
  color: #fff;
  text-decoration: none;
}

a:link, a:visited, a:active {
  text-decoration: nderline;
  color: #0000ff;
}

a:hover {
  text-decoration: none;
  color: #0000ff;
}

input:focus {
  outline: 0;
  border: 1px solid #04a4cc;
}

p {
  padding: 0 0 30px 0;
}

/*------------------------------------*
    STRUCTURE

\*------------------------------------*/
/* wrapper */
#container {
  top: 0;
  left: 0;
  width: 100%;
  position: absolute;
  z-index: 1;
}

/* header */
.header {
  background-color: #c00e42;
  color: #fff;
  width: 100%;
  height: 30px;
  padding: 20px;
  position: fixed;
  z-index: 9999999;
  vertical-align: middle;
  top: 0;
}

/* logo */
.logo {
  display: inline-block;
  float: left;
  margin-right: 30px;
}

.logo-img {
  max-width: 127px;
  width: 100%;
}

/* nav */
.nav {
  vertical-align: middle;
  margin-top: 5px;
}

a.nav-list {
  display: block;
  float: left;
  color: #fff;
}

.nav-mr {
  margin-right: 20px;
}

.sp_nav {
  display: none;
}

.eyecatch {
  color: #fff;
  font-family: Verdana, "游ゴシック", YuGothic, "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
  font-size: 65px;
  font-weight: bold;
  text-shadow: 0px 0px 10px black;
  text-align: center;
  line-height: 40%;
  padding-top: 10%;
}

.eyecatch-small {
  font-size: 18px;
  font-weight: normal;
  line-height: 50%;
}

.wrap-title {
  max-width: 1000px;
  width: 100%;
  margin: 0 auto;
  text-align: left;
}

.wrap-title-slide {
  max-width: 1000px;
  width: 100%;
  margin: 100px auto 0;
  text-align: left;
}

.wrap-box {
  max-width: 1000px;
  width: 100%;
  min-height: 480px;
  height: 100%;
  margin: 0 auto;
  text-align: left;
}

.wrap-box02 {
  max-width: 1000px;
  width: 100%;
  min-height: 600px;
  height: 100%;
}

.wrap-mt {
  margin-top: 10%;
}

.cap-img_topics {
  display: block;
  max-width: 270px;
  width: 100%;
  max-height: 55px;
  height: 100%;
  margin-top: 50px;
  margin-bottom: 10%;
}

.topics-container {
  position: absolute;
  background-color: #fff;
  max-width: 1000px;
  width: 100%;
  max-height: 380px;
  height: 100%;
}

.topics-container ul {
  position: relative;
  display: block;
  margin: 80px 30px !important;
  padding: 0;
  list-style: none;
}

.topics-container li {
  display: inline-block;
  padding: 0;
  margin: 0 10px 0 0;
  float: left;
}

.topics-container .news-field {
  max-width: 220px;
  width: 100%;
  max-height: 300px;
  height: 100%;
}

.news-field h2 {
  text-shadow: none;
}

.news-img {
  max-width: 220px;
  width: 100%;
  margin-bottom: 40px;
}

.news-img-pdf {
  max-height: 145px;
  height: 100%;
  margin-bottom: 40px;
}

.news-time,
a.news-title {
  color: #000;
  font-size: 18px;
}

.cap-img_facility {
  display: block;
  max-width: 317.5px;
  width: 100%;
  max-height: 55px;
  height: 100%;
  margin-bottom: 50px;
}

.facility-container {
  max-width: 1000px;
  width: 100%;
  height: 380px;
}

.facility-container h2 {
  display: block;
  color: #fff;
  font-size: 18px;
}

.img-floor {
  display: block;
  max-width: 90%;
  width: 100%;
  margin: 0 5% 0 5%;
}

/*-- フロアマップ テスト用 --*/
.img-floor_test {
  display: block;
  max-width: 75%;
  width: 100%;
  margin: 0 5% 0 5%;
}

.img-room {
  max-width: 400px;
  width: 100%;
  max-height: 300px;
  height: 100%;
  float: right;
}

.sp-room {
  display: none;
}

.facility-detail {
  display: inline-block;
}

.facility-detail h2 {
  color: #fff;
  font-size: 50px;
  font-weight: bold;
  vertical-align: middle;
}

.facility-detail .room-title {
  font-size: 18px;
  font-weight: normal;
  vertical-align: middle;
}

.facility-detail p {
  color: #fff;
  line-height: 110%;
  font-size: 12px;
}

table.facility-table {
  color: #fff;
  border-collapse: collapse;
  border: none;
  max-width: 500px;
  width: 100%;
  font-size: 18px;
  table-layout: fixed;
}

table.facility-table th {
  width: 100px;
  min-height: 13px;
  padding: 5px 10px 5px 0;
  text-align: justify;
  text-justify: inter-ideograph;
  vertical-align: top;
  border: none;
  white-space: nowrap;
  overflow: visible;
}

table.facility-table th:after {
  float: right;
  padding: 0;
  right: 10px;
  top: 0;
  content: "───";
  height: 0;
  width: 0;
  position: relative;
  pointer-events: none;
  border: none;
}

table.facility-table td {
  /*height: 13px;*/
  margin: 0;
  padding: 5px 10px 5px 60px;
  text-align: left;
  vertical-align: top;
  border: none;
  line-height: 180%;
}

table.price-table {
  max-width: 1000px !important;
  width: 100%;
  border-collapse: collapse;
  border: none;
}

table.price-table th.first {
  width: 40%;
  height: 70px;
  padding: 5px;
  font-size: 20px;
  text-align: center;
  vertical-align: middle;
  color: #fff;
  background-color: #c00e42;
}

table.price-table th.second {
  width: 20%;
  height: 70px;
  padding: 5px;
  font-size: 20px;
  text-align: center;
  vertical-align: middle;
  color: #fff;
  background-color: #d2567a;
}

table.price-table th.third {
  width: 20%;
  height: 70px;
  padding: 5px;
  font-size: 20px;
  text-align: center;
  vertical-align: middle;
  color: #fff;
  background-color: #e290a8;
}

table.price-table th.fourth {
  width: 20%;
  height: 70px;
  padding: 5px;
  font-size: 20px;
  text-align: center;
  vertical-align: middle;
  color: #fff;
  background-color: #e9acbe;
}

table.price-table td.r1 {
  padding: 5px;
  font-size: 20px;
  color: #fff;
  background-color: #9e9e9e;
  /*background: linear-gradient(#9e9e9e, #A5A5A5);*/
  text-align: center;
}

table.price-table td.r2 {
  padding: 5px;
  font-size: 20px;
  color: #fff;
  background-color: #aaaaaa;
  text-align: center;
  vertical-align: middle;
}

table.price-table td.r3 {
  padding: 5px;
  font-size: 20px;
  color: #fff;
  background-color: #b5b5b5;
  text-align: center;
  vertical-align: middle;
}

table.price-table td.r4 {
  padding: 5px;
  font-size: 20px;
  color: #fff;
  background-color: #bebebe;
  text-align: center;
  vertical-align: middle;
}

.facility-table-small {
  font-size: 15px;
}

.cap-img_info {
  display: block;
  max-width: 445.5px;
  width: 100%;
  max-height: 55px;
  height: 100%;
}

.box_1-5 {
  display: block;
  max-width: 180px;
  width: 20%;
  height: 100%;
  float: left;
  color: #fff;
  line-height: 110%;
}

.box-mr {
  margin-right: 25px;
}

.box_1-5 h2 {
  display: block;
  font-size: 18px;
  border-left: #fff 3px solid;
  margin-bottom: 20px;
  padding-left: 5px;
}

.cap-img_plan {
  display: block;
  max-width: 226.5px;
  width: 100%;
  max-height: 62px;
  height: 100%;
  margin-bottom: 50px;
}

.plan-box {
  position: relative;
  display: inline-block;
  max-width: 195px;
  width: 100%;
  height: 300px;
  background-color: rgba(242, 242, 242, 0.7);
  text-align: center;
  float: left;
  box-sizing: border-box;
  line-height: 130%;
}

.arrow-box {
  position: absolute;
  display: block;
  max-width: 195px;
  width: 100%;
  height: 120px;
  background-color: #c00e42;
  bottom: 0;
}

.img-plan-arrow {
  max-width: 20px;
  width: 100%;
  margin-top: 45px;
}

.plan-box h2 {
  display: block;
  font-size: 24px;
  padding: 30px 5px 0;
}

.plan-title-small {
  font-size: 16px;
}

.plan-mr {
  margin-right: 5px;
}

h2.plan-title {
  display: block;
  font-size: 35px;
  text-shadow: 0px 0px 3px black;
  filter: dropshadow(color=#000000, offX=0, offY=0);
  color: #fff;
  margin-bottom: 20px;
}

.wrap-box ul {
  width: 100%;
  height: 100%;
  display: block;
  margin: 0 0 30px;
  padding: 0;
  text-shadow: 0px 0px 3px black;
  filter: dropshadow(color=#000000, offX=0, offY=0);
}

.wrap-box ul li {
  float: left;
  margin-right: 20px;
}

a.plan-tirashi {
  font-weight: bold;
  color: #fff;
  text-decoration: underline;
}

.cource {
  position: relative;
  max-width: 1000px;
  width: 100%;
}

.plan-cource_1 {
  display: inline-block;
  color: #fff;
  background-color: #bebebe;
  max-width: 195px;
  width: 100%;
  /* height: 165px; */
  text-align: center;
  padding: 5px;
  border-top: #ffff00 5px solid;
  float: left;
  box-sizing: border-box;
}

.plan-cource_2 {
  display: inline-block;
  color: #fff;
  background-color: #bebebe;
  max-width: 195px;
  width: 100%;
  /* height: 165px; */
  text-align: center;
  padding: 5px;
  border-top: #5f96d4 5px solid;
  float: left;
  box-sizing: border-box;
}

.plan-cource_3 {
  display: inline-block;
  color: #fff;
  background-color: #bebebe;
  max-width: 195px;
  width: 100%;
  /* height: 165px; */
  text-align: center;
  padding: 5px;
  border-top: #c00e42 5px solid;
  float: left;
  box-sizing: border-box;
}

.plan-cource_4 {
  display: inline-block;
  color: #fff;
  background-color: #bebebe;
  max-width: 195px;
  width: 100%;
  /* height: 165px; */
  text-align: center;
  padding: 5px;
  border-top: #39b54a 5px solid;
  float: left;
  box-sizing: border-box;
}

.plan-cource_5 {
  display: none;
  color: #fff;
  background-color: #bebebe;
  max-width: 195px;
  width: 100%;
  /* height: 165px; */
  text-align: center;
  padding: 5px;
  border-top: #bebebe 5px solid;
  float: left;
  box-sizing: border-box;
}

.plan-cource_6 {
  display: block;
  color: #fff;
  background-color: #bebebe;
  max-width: 300px;
  width: 100%;
  /* height: 165px; */
  text-align: center;
  padding: 20px;
  box-sizing: border-box;
}

.plan-detail {
  font-size: 12px;
}

.tokuten {
  display: inline-block;
  width: 40% !important;
  /* height: 160px; */
  background-color: #c00e42;
  color: #fff;
  padding: 10px;
  border: #fff 5px solid;
  margin-top: 3%;
  margin-right: 5%;
  text-align: center;
  float: left;
}

.tokuten p {
  font-size: 12px;
  line-height: 130%;
  text-align: left;
}

.plan-kiyaku {
  display: inline-block;
  width: 40% !important;
  height: 160px;
  background-color: #fff;
  padding: 10px;
  border: #fff 5px solid;
  margin-top: 3%;
  text-align: left;
  font-size: 11px;
  line-height: 100%;
}

.plan-kiyaku-single {
  display: block;
  width: 28%;
  height: 120px;
  background-color: #fff;
  padding: 10px;
  text-align: left;
  font-size: 12px;
  line-height: 110%;
  margin-top: 20px;
}

.cap-img_beergarden {
  display: block;
  max-width: 464px;
  width: 100%;
  max-height: 55px;
  height: 100%;
  margin-bottom: 50px;
}

.beer_course {
  display: block;
  width: 100%;
  text-align: center;
  color: #ffffff;
}

.beer_course-title {
  display: block;
  border-top: 1px solid #ffffff;
  border-bottom: solid 1px #ffffff;
  font-size: 26px !important;
  font-weight: normal;
  margin: 0 0 40px;
  text-align: center;
  padding: 15px 0;
  color: #ffffff;
}

.beer_course span {
  font-size: 20px;
}

.standard_title {
  color: #ffffff;
  font-size: 30px;
  font-weight: bold;
}

.facility-table tr .beer_td {
  padding: 5px;
  line-height: 100%;
}

.facility-table tr .beer_td a {
  color: #fff;
}

.beer_price01 {
  font-weight: bold;
  font-size: 50px;
  height: 35px;
  letter-spacing: 1.25px;
}

.beer_price01 span {
  font-size: 18px;
  letter-spacing: 0.45px;
}

.beer_price01 img {
  margin-bottom: 20px;
}

.beer_price02 {
  display: inline-block;
  margin-top: 10px;
  margin-bottom: 30px;
  font-size: 16px;
  letter-spacing: 0.4px;
}

.beer_service {
  border-left: solid 1px #ffffff;
  font-size: 24px;
  font-weight: bold;
}

.beer_service .beer_price03 {
  display: inline-block;
  margin-top: 10px;
  margin-bottom: 10px;
  font-size: 16px;
  letter-spacing: 0.4px;
  line-height: 20px;
  font-weight: normal;
}

.beer_service span {
  line-height: 35px;
  font-weight: bold;
  letter-spacing: 0.6px;
  margin: 0 0 0 10px;
}

.mini_price {
  font-size: 12px;
}

.mini_price02 {
  display: block;
  font-size: 12px;
  line-height: 20px;
  padding-top: 30px;
}

.mini_price02 a {
  border-bottom: 1px solid #ffffff;
}

.mini_price02 a:hover {
  color: #ffffff;
}

.special_yoyaku {
  margin: 0 0 10px 10px;
}

.cap-img_recruit {
  display: block;
  max-width: 341.5px;
  width: 100%;
  max-height: 55px;
  height: 100%;
  margin-bottom: 50px;
}

.recruit_box {
  position: relative;
  max-width: 1000px !important;
  width: 100%;
  max-height: 380px !important;
  height: 100%;
  background-color: #fff;
  margin: 0 auto;
  padding-top: 40px;
  padding-bottom: 40px;
}

table.recruit_table {
  max-width: 920px;
  width: 100%;
  max-height: 300px;
  height: 100%;
  border-collapse: separate;
  border-spacing: 0px;
  margin: 0 40px;
}

.recruit_table tr {
  width: 100%;
}

.recruit_table th {
  width: 20%;
  padding: 5px 20px;
  background-color: #e6e6e6;
  border-top: #000 1px dashed;
}

.recruit_table td {
  width: 80%;
  padding: 5px 20px;
  border-top: #000 1px dashed;
}

.recruit_table tr.last th {
  width: 20%;
  border-top: #000 1px dashed;
  border-bottom: #000 1px dashed;
}

.recruit_table tr.last td {
  width: 80%;
  border-top: #000 1px dashed;
  border-bottom: #000 1px dashed;
}

.cap-img_access {
  display: block;
  max-width: 294px;
  width: 100%;
  max-height: 55px;
  height: 100%;
  margin-bottom: 50px;
}

.access-detail {
  display: inline-block;
  width: 50%;
  color: #fff;
  float: left;
}

/* footer */
.footer {
  position: absolute;
  bottom: 0;
  width: 100%;
  height: 60px !important;
  background-color: #c00e42;
  color: #fff;
}

a.foot-link {
  display: inline-block;
  margin-top: 20px;
  margin-left: 20px;
  color: #fff;
  float: left;
}

p.copyright {
  display: block;
  float: right;
  margin-top: 20px;
  margin-right: 20px;
}

.bnr-box {
    width: 100%;
    height: auto!important;
    position: fixed;
    bottom: 60px;
    right: 0;
    z-index: 999;
    margin: 0!important;
    padding: 0!important;
    text-align: center;
}
.bnr-box li {
    list-style: none;
    display: inline-block;
    margin: 0 5px!important;
    max-width: none!important;
    height: 60px;
    width: auto;
    float: none!important;
}
.bnr-box li a img {
    height: 60px;
    width: auto;
    max-width: 243px;
    object-fit: contain;
}
.bnr-box li a:hover {
  opacity: 0.6;
}


.banner-area,
.banner-area-sp {
  display: inline-block;
  background-color: #c00e42;
  max-width: 230px !important;
  width: 25%;
  height: 70px !important;
  text-align: center;
  margin-top: 50px;
  border: #fff 3px solid;
  box-sizing: border-box;
}

a.banner-area:hover, a.banner-area-sp:hover {
  opacity: 0.6;
}

.banner-mr {
  margin-right: 21.5px;
}

.img-banner_shopping {
  max-width: 191.5px;
  width: 100%;
  max-height: 16.5px;
  height: 100%;
  margin: 25px 10px 0;
}

.img-banner_bus {
  max-width: 138px;
  width: 100%;
  max-height: 16.5px;
  height: 100%;
  margin: 25px 10px 0;
}

.img-banner_bill {
  max-width: 121px;
  width: 100%;
  max-height: 16.5px;
  height: 50%;
  margin: 25px 10px 0;
}

.img-banner_parking {
  max-width: 105px;
  width: 100%;
  max-height: 16.5px;
  height: 100%;
  margin: 25px 10px 0;
}

/* .stageBase

--------------------------- */
.stageBase {
  width: 100%;
  position: relative;
  overflow: hidden;
}

.stageBase .fieldWrap {
  padding: 100px 0 0 0;
  text-align: center;
}

#stage1 {
  background: url("./img/eyecatch.jpg") no-repeat center center;
  background-size: cover;
}

#stage2 {
  background: #c00e42;
}

#stage3 {
  background: url("./img/bg-facility_2.jpg") no-repeat center center;
  background-size: cover;
}

#stage4 {
  background: #c00e42;
}

#stage5 {
  background: url("./img/bg-plan_3.jpg") no-repeat center center;
  background-size: cover;
}

#stage6 {
  background: url("./img/bg-beergarden.jpg") no-repeat center center;
  background-size: cover;
}

#stage7 {
  background: #c00e42;
}

#stage8 {
  background: url("./img/bg-access.jpg") no-repeat center center;
  background-size: cover;
}

/* .stageSlide

--------------------------- */
.stageSlide {
  position: relative;
  overflow: hidden;
  visibility: hidden;
}

.stageSlide .slideWrap {
  top: 0;
  left: 0;
  position: absolute;
  overflow: hidden;
  *zoom: 1;
}

.stageSlide .slideWrap:before {
  content: " ";
  display: table;
}

.stageSlide .slideWrap:after {
  content: " ";
  display: table;
  clear: both;
}

.stageSlide .slidePanel {
  float: left;
  overflow: hidden;
}

.stageSlide .sdPrev,
.stageSlide .sdNext {
  margin-top: -25px;
  top: 50%;
  width: 50px;
  height: 50px;
  display: block;
  position: absolute;
  z-index: 99;
}

.stageSlide .sdPrev {
  left: 20px;
  background: transparent url(./img/slide_prev.png) no-repeat left top;
  background-size: 30px 49px;
}

.stageSlide .sdNext {
  right: 20px;
  background: transparent url(./img/slide_next.png) no-repeat left top;
  background-size: 30px 49px;
}

.stageSlide .slideNav {
  top: 120px;
  left: 0;
  width: 100%;
  height: 15px;
  text-align: center;
  position: absolute;
  z-index: 98;
}

.stageSlide .slideNav a {
  margin: 0 5px;
  width: 15px;
  height: 15px;
  background: transparent url(./img/slide-nav.png) no-repeat center center;
  background-size: 15px 15px;
  display: inline-block;
  overflow: hidden;
}

.stageSlide .slideNav a.pnActive {
  background: transparent url(./img/slide-nav_acv.png) no-repeat center center;
  background-size: 15px 15px;
}

/* #pageNav

--------------------------- */
#pageNav {
  top: 0;
  right: 10px;
  width: 15px;
  text-align: center;
  position: fixed;
  z-index: 2;
}

#pageNav ul {
  width: 15px;
  display: block;
}

#pageNav ul li {
  padding-bottom: 5px;
  width: 15px;
  height: 15px;
  display: block;
  overflow: hidden;
}

#pageNav ul li a {
  width: 15px;
  height: 15px;
  background: transparent url(./img/nav.png) no-repeat center center;
  background-size: 15px 15px;
  display: block;
}

#pageNav ul li.activeStage a {
  background: transparent url(./img/nav_acv.png) no-repeat center center;
  background-size: 15px 15px;
}

/* #pageDown

--------------------------- */
#pageDown {
  bottom: 0;
  left: 0;
  width: 100%;
  height: 40px;
  text-align: center;
  position: fixed;
  overflow: hidden;
  z-index: 3;
}

#pageDown a {
  margin: 0 auto;
  width: 49px;
  height: 30px;
  background: transparent url(./img/next_arw.png) no-repeat center center;
  background-size: 49px 30px;
  display: block;
}

/*------------------------------------*
    PAGES

\*------------------------------------*/
/*------------------------------------*
    hacks

\*------------------------------------*/
/*IE9*/
:root .cource ul {
  display: block;
  margin-top: -30px;
}

:root .recruit_box {
  padding-bottom: 40px;
}

/*IE10以降に適用されるCSSハック（一応）*/
@media all and (-ms-high-contrast: none) {
  .cource ul {
    display: block;
    margin-top: -30px;
  }
  .recruit_box {
    padding-bottom: 40px;
  }
}

/*IE11だけに適用されるCSSハック*/
@media all and (-ms-high-contrast: none) {
  *::-ms-backdrop,
  .cource ul {
    display: block;
    margin-top: -30px;
  }
  *::-ms-backdrop,
  .recruit_box {
    padding-bottom: 40px;
  }
}

@media screen and (-webkit-min-device-pixel-ratio: 0) {
  ::i-block-chrome,
  .recruit_box {
    padding-bottom: 40px;
  }
}

/*------------------------------------*
	TYPOGRAPHY

\*------------------------------------*/
@font-face {
  font-family: "Font-Name";
  src: url("fonts/font-name.eot");
  src: url("fonts/font-name.eot?#iefix") format("embedded-opentype"), url("fonts/font-name.woff") format("woff"), url("fonts/font-name.ttf") format("truetype"), url("fonts/font-name.svg#font-name") format("svg");
  font-weight: normal;
  font-style: normal;
}

/*------------------------------------*
    RESPONSIVE

\*------------------------------------*/
@media only screen and (max-width: 1000px) {
  .stageBase {
    text-align: center;
  }
  .stageSlide .slideNav {
    top: 170px;
  }
  #pageNav {
    display: none;
  }
  .stageSlide .sdPrev {
    left: 5px;
  }
  .stageSlide .sdNext {
    right: -15px;
  }
  .logo {
    display: none;
  }
  .nav {
    display: none;
  }
  .sp_nav {
    display: block;
  }
  #btn {
    background: url("./img/toggle.png") no-repeat center center;
    background-size: 32px 21px;
    display: block;
    width: 32px;
    height: 21px;
    cursor: pointer;
  }
  #overlay {
    display: none;
    width: 100%;
    height: 100%;
    text-align: center;
    position: fixed;
    top: 0;
    z-index: 10000;
    background: rgba(192, 14, 66, 0.9);
    padding: 80px 0 0 20px;
    margin: -20px;
  }
  #close {
    background: url("./img/toggle-close.png") no-repeat center center;
    background-size: 24px 24px;
    display: block;
    position: absolute;
    width: 24px;
    margin: auto;
    cursor: pointer;
    text-indent: -9999px;
    top: 40px;
    left: 20px;
  }
  a.nav-list {
    width: 120px;
    margin: 0 auto 40px;
    float: center;
  }
  .eyecatch {
    font-size: 55px;
  }
  .wrap-title {
    text-align: center;
  }
  .wrap-mt {
    margin-top: 18%;
  }
  .wrap-box {
    max-width: 1000px;
    width: 100%;
    max-height: 400px;
    height: 100%;
  }
  .cap-img_topics,
  .cap-img_facility,
  .cap-img_info,
  .cap-img_plan,
  .cap-img_recruit,
  .cap-img_access {
    margin-right: auto;
    margin-left: auto;
  }
  .cap-img_topics {
    margin-top: -20px;
  }
  .wrap-title-slide {
    margin-top: 90px;
  }
  .news-img,
  .news-img-pdf {
    display: none;
  }
  .topics-container ul {
    position: relative;
    display: block;
    margin: 30px 30px !important;
    padding: 0;
    list-style: none;
  }
  .topics-container li {
    display: block;
    padding: 0;
    margin: 0 0 20px;
    float: none;
  }
  .topics-container .news-field {
    max-width: 375px;
    width: 100%;
    max-height: 50px;
    height: 100%;
  }
  .facility-detail {
    text-align: center;
  }
  .facility-detail p {
    text-align: left;
  }
  .img-room {
    display: none;
  }
  a.sp-room {
    display: inline;
    color: #fff;
    text-decoration: underline;
    font-size: 18px;
    vertical-align: middle;
  }
  table.facility-table {
    text-align: center;
    margin-left: 50px;
  }
  .box_1-5 {
    width: 100%;
    max-width: 100%;
  }
  .box_1-5 h2 {
   font-size: 20px;
   margin: 0 2% 20px 2%;
  }
  .box_1-5 p {
    margin: 0 2%
  }
  .box-mr {
    margin-right: 10px;
  }
  .plan-box {
    display: block;
    max-width: 1000px;
    width: 85%;
    height: 100px;
    background-color: #f2f2f2;
    text-align: left;
    float: center;
    margin-bottom: 10px;
    margin-left: 30px;
  }
  .plan-box h2 {
    padding: 10px 5px 0;
  }
  .arrow-box {
    display: block;
    max-width: 100px;
    width: 100%;
    height: 100px;
    background-color: #c00e42;
    right: 0;
    text-align: center;
  }
  h2.plan-title {
    line-height: 80%;
  }
  .plan-cource_1,
  .plan-cource_2,
  .plan-cource_3,
  .plan-cource_4,
  .plan-cource_5 {
    max-width: 500px;
    width: 48%;
  /* height: 120px; */
  }
  .tokuten {
   /* height: 150px; */
  }
  .tokuten p {
    line-height: 100%;
  }
  .plan-kiyaku {
    height: 150px;
  }
  .banner-area-sp {
    display: none;
  }
  .banner-area {
    width: 100%;
  }
  .banner-mr {
    margin: 0 auto;
  }
  .footer {
    font-size: 12px;
  }
  p.copyright {
    font-size: 10px;
    margin-right: 5px;
  }
}

/*------------------------------------*
    MISC

\*------------------------------------*/
::selection,
::-webkit-selection,
::-moz-selection {
  background: #04a4cc;
  color: #fff;
  text-shadow: none;
}

/*------------------------------------*
    PRINT

\*------------------------------------*/
@media print {
  * {
    background: transparent !important;
    color: #000 !important;
    box-shadow: none !important;
    text-shadow: none !important;
  }
  a {
    text-decoration: underline;
  }
  a:visited {
    text-decoration: underline;
  }
  a[href]:after {
    content: " (" attr(href) ")";
  }
  abbr[title]:after {
    content: " (" attr(title) ")";
  }
  .ir a:after {
    content: "";
  }
  a[href^="javascript:"]:after, a[href^="#"]:after {
    content: "";
  }
  pre,
  blockquote {
    border: 1px solid #999;
    page-break-inside: avoid;
  }
  thead {
    display: table-header-group;
  }
  tr {
    page-break-inside: avoid;
  }
  img {
    page-break-inside: avoid;
    max-width: 100% !important;
  }
  @page {
    margin: 0.5cm;
  }
  p,
  h2,
  h3 {
    orphans: 3;
    widows: 3;
  }
  h2,
  h3 {
    page-break-after: avoid;
  }
}

.contact_body {
  overflow: unset;
  visibility: unset;
}

.contact_body .contact_style .inner {
  margin-top: 140px;
  margin-bottom: 100px;
}

.contact_body .contact_style .inner h1 {
  text-align: center;
  margin-bottom: 30px;
}

.contact_body .contact_style .inner .page_container #formWrap p {
  font-size: 1.7rem;
  margin-bottom: 30px;
}

.contact_body .contact_style .inner .page_container #formWrap p a {
  text-decoration: underline;
  padding: 5px;
}

.contact_body .contact_style .inner .page_container #formWrap form {
  width: 100%;
  max-width: 900px;
  display: block;
  margin: 0 auto;
  text-align: left;
}

.contact_body .contact_style .inner .page_container #formWrap form .form_box {
  display: flex;
  width: 100%;
  margin-bottom: 15px;
}

@media screen and (max-width: 768px) {
  .contact_body .contact_style .inner .page_container #formWrap form .form_box {
    display: block;
    width: 100%;
    max-width: 80%;
    margin: 0 auto;
  }
}

.contact_body .contact_style .inner .page_container #formWrap form .form_box:nth-of-type(odd) .form_left {
  background-color: #c0c0c0;
  color: #ffffff;
  font-weight: 700;
}

.contact_body .contact_style .inner .page_container #formWrap form .form_box:nth-of-type(even) .form_left {
  background-color: #808080;
  color: #ffffff;
  font-weight: 700;
}

.contact_body .contact_style .inner .page_container #formWrap form .form_box .form_left {
  align-items: center;
  flex-wrap: wrap;
  width: 100%;
  max-width: 30%;
  font-size: 1.5rem;
  margin-right: 10px;
  padding: 10px;
  border-radius: 10px;
}

@media screen and (max-width: 768px) {
  .contact_body .contact_style .inner .page_container #formWrap form .form_box .form_left {
    max-width: 100%;
    text-align: left;
    font-size: 1.5rem;
    padding: 5px;
    margin-bottom: 5px;
    border-radius: 0px;
  }
}

.contact_body .contact_style .inner .page_container #formWrap form .form_box .form_left .txt-red {
  color: #ffffff;
  background-color: #ea362b;
  padding: 2px;
  border-radius: 5px;
  margin-left: 5px;
  font-size: 1.3rem;
}

@media screen and (max-width: 768px) {
  .contact_body .contact_style .inner .page_container #formWrap form .form_box .form_left .txt-red {
    width: 50%;
  }
}

.contact_body .contact_style .inner .page_container #formWrap form .form_box .form_right {
  flex-wrap: wrap;
  width: 100%;
  max-width: 70%;
}

@media screen and (max-width: 768px) {
  .contact_body .contact_style .inner .page_container #formWrap form .form_box .form_right {
    max-width: 100%;
    font-size: 1.5rem;
    padding: 5px;
    margin-bottom: 20px;
  }
}

.contact_body .contact_style .inner .page_container #formWrap form .form_box .form_right input,
.contact_body .contact_style .inner .page_container #formWrap form .form_box .form_right select {
  width: 100%;
  max-width: 100%;
  height: 100%;
}

.contact_body .contact_style .inner .page_container #formWrap form .form_box .form_right .address_box {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
}

.contact_body .contact_style .inner .page_container #formWrap form .form_box .form_right .address_box p {
  margin-bottom: -15px;
  line-height: 30px;
}

.contact_body .contact_style .inner .page_container #formWrap form .form_box .form_right .address_box input:nth-of-type(1) {
  width: 100%;
  max-width: 15%;
  margin-bottom: 15px;
  height: 30px;
}

@media screen and (max-width: 768px) {
  .contact_body .contact_style .inner .page_container #formWrap form .form_box .form_right .address_box input:nth-of-type(1) {
    max-width: 30%;
  }
}

.contact_body .contact_style .inner .page_container #formWrap form .form_box .form_right .address_box input:nth-of-type(2) {
  width: 100%;
  max-width: 15%;
  margin-bottom: 15px;
  margin-right: 10px;
  height: 30px;
}

@media screen and (max-width: 768px) {
  .contact_body .contact_style .inner .page_container #formWrap form .form_box .form_right .address_box input:nth-of-type(2) {
    max-width: 30%;
  }
}

.contact_body .contact_style .inner .page_container #formWrap form .form_box .form_right .address_box input:nth-of-type(3) {
  display: block;
  width: 100%;
  min-width: 100%;
  height: 30px;
}

.contact_body .contact_style .inner .page_container #formWrap form .form_box .form_right textarea {
  width: 100%;
  height: 100%;
  min-height: 200px;
}

.contact_body .contact_style .inner .page_container #formWrap form .form_box .input-button {
  display: block;
  margin: 0 auto;
  width: 100%;
  max-width: 50%;
}

.contact_body .contact_style .inner .page_container #formWrap form .form_box .input-button input {
  width: 100%;
  max-width: 48%;
  height: 40px;
  border-radius: 10px;
}

@media screen and (max-width: 768px) {
  .contact_body .contact_style .inner .page_container #formWrap form .form_box .input-button input {
    max-width: 100%;
  }
}

.contact_body #pageDown {
  display: none;
}