@charset "UTF-8";
/*****************/
/*****************/
/*****************/
body {
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
  margin: 0;
  padding: 0;
  font-size: 1em;
}

a {
  text-decoration: none;
}

.a-deco {
  border-bottom: 1px solid #009b5a;
  color: #009b5a;
  font-weight: bold;
}

main section:first-child {
  margin-top: 120px;
}

@media (max-width: 575.98px) {
  main section:first-child {
    margin-top: 50px;
  }
}
section {
  margin-top: 60px;
  padding-bottom: 60px;
}

h2,
h3 {
  color: #113285;
  font-weight: bold;
}

.text-align-last-justify {
  -moz-text-align-last: justify;
       text-align-last: justify;
}

h2 {
  display: inline-block;
  padding: 0 2px 0.5em;
  letter-spacing: 0.05em;
  border-bottom: 2px solid #113285;
}

.bg-container {
  position: relative;
  top: 0;
  left: 0;
}

.bg-shift {
  position: absolute;
  top: 20px;
  left: 20px;
  z-index: -1;
  width: 100%;
  height: 100%;
}

.schedule {
  text-align: center;
}
.schedule__wrapper {
  margin-top: 2rem;
}

@media (max-width: 575.98px) {
  section {
    margin-top: 60px;
  }
  h2 {
    font-size: 1.2rem;
  }
  h2::before {
    margin-right: 5px;
  }
  h2::after {
    margin-left: 5px;
  }
  h3 {
    font-size: 1.1rem;
  }
  .bg-shift {
    width: 90%;
  }
}
/************************************
************ヘッダー/ナビ*********
************************************/
header {
  height: 78px;
}

nav {
  background-color: #ffffff;
  box-shadow: 0px 1px 3px rgba(51, 51, 51, 0.2784313725);
}

.navbar-collapse {
  justify-content: flex-end;
  margin-left: auto;
}

.navbar-expand-lg .navbar-nav .nav-link {
  padding-right: 1rem;
  padding-left: 1rem;
}

.nav-item {
  display: block;
  align-items: center;
  text-align: center;
  border-right: 1px solid #dde7ff;
}
.nav-item:first-child {
  border-left: 1px solid #dde7ff;
}

.nav-link {
  color: #333333;
  font-weight: bold;
}

.nav-contact {
  background-color: #113285;
  color: #ffffff;
  padding: 1rem 3rem;
  border: 2px solid #113285;
}
.nav-contact:hover {
  color: #113285;
  background-color: #ffffff;
  transform: none;
}

.navbar-toggler-icon {
  background-image: url(../img/hamburger_menu.png);
}

.nav-current a {
  color: #113285;
}

@media (min-width: 992px) {
  .navbar-expand-lg .navbar-nav {
    flex-wrap: wrap;
    justify-content: end;
  }
  .nav-item {
    display: flex;
  }
}
@media (max-width: 321.98px) {
  .navbar-brand {
    width: calc(100% - 72px);
  }
  .navbar-brand img {
    width: 100%;
  }
}
.navbar-toggler:focus {
  box-shadow: 0 0 0 0.25rem #113285;
}

.dropdown-menu {
  text-align: center;
}

/************************************
*************共通フッター*************
************************************/
.cmnFooter {
  text-align: center;
  background-color: rgba(199, 228, 242, 0.4);
  padding: 6rem 0;
}
.cmnFooter__wrapper {
  margin-top: 2rem;
}
.cmnFooter table {
  text-align: left;
  width: 100%;
}
.cmnFooter table th,
.cmnFooter table td {
  padding: 1em 0.5em;
}
.cmnFooter table th {
  white-space: nowrap;
}
.cmnFooter .banner {
  margin-top: 4rem;
}
.cmnFooter .banner img {
  width: 100%;
}

/************************************
**********共通ボックススタイル**********
************************************/
.cmnbox__wrapper a:hover .cmnbox.yellow {
  border: 2px solid #f7cd20;
  background-color: rgba(247, 205, 32, 0.4);
}
.cmnbox__wrapper a:hover .cmnbox.green {
  border: 2px solid #09a851;
  background-color: rgba(9, 168, 81, 0.4);
}
.cmnbox__wrapper a:hover .cmnbox.blue {
  border: 2px solid #0959a8;
  background-color: rgba(9, 89, 168, 0.4);
}

.cmnbox {
  border: 2px solid #113285;
  text-align: center;
  padding: 1rem 1rem;
  border-radius: 2rem;
  font-weight: bold;
  font-size: 1.2rem;
  color: #113285;
}

@media (max-width: 575.98px) {
  .cmnbox__wrapper {
    margin-bottom: 1rem;
  }
  .cmnbox__wrapper a:hover .cmnbox.yellow {
    border: 2px solid #f7cd20;
    background-color: rgba(247, 205, 32, 0.4);
  }
  .cmnbox__wrapper a:hover .cmnbox.green {
    border: 2px solid #09a851;
    background-color: rgba(9, 168, 81, 0.4);
  }
  .cmnbox__wrapper a:hover .cmnbox.blue {
    border: 2px solid #0959a8;
    background-color: rgba(9, 89, 168, 0.4);
  }
  .cmnbox {
    border: 2px solid #113285;
    padding: 1rem;
    font-size: 1rem;
  }
}
/************************************
**********共通ボタンスタイル**********
************************************/
.cmnbtn--blue {
  min-width: 130px;
  height: 40px;
  color: #fff;
  padding: 5px 20px;
  font-weight: bold;
  cursor: pointer;
  transition: all 0.3s ease;
  position: relative;
  display: inline-block;
  outline: none;
  border-radius: 5px;
  z-index: 0;
  background: #fff;
  overflow: hidden;
  border: 2px solid #113285;
  color: #113285;
}

.cmnbtn--blue.large {
  padding: 1rem 2rem;
  border-radius: 2rem;
  font-size: 1.2rem;
  height: auto;
  width: 100%;
  text-align: center;
}

.cmnbtn--blue:hover {
  color: #fff;
}

.cmnbtn--blue:hover:after {
  width: 100%;
}

.cmnbtn--blue:after {
  content: "";
  position: absolute;
  z-index: -1;
  transition: all 0.3s ease;
  left: 0;
  top: 0;
  width: 0;
  height: 100%;
  background: #113285;
}

@media (max-width: 991.98px) {
  .cmnbtn--blue {
    height: auto;
  }
}
/************************************
*************フッター*************
************************************/
#footer {
  background-color: #113285;
  color: #ffffff;
  padding: 3rem 0;
}
#footer a {
  color: #ffffff;
}
#footer li {
  padding: 0.5rem 0;
}
#footer .banner-link {
  transition: 0.3s;
  display: block;
  position: relative;
  text-decoration: none;
}
#footer .banner-link img {
  width: 100%;
}
#footer .banner-link::before {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  z-index: 2;
  background: #ffffff;
  /*好みの色に変えてください。*/
  opacity: 0;
  transition: 0.3s;
}
#footer .banner-link::after {
  content: "外部サイトへ";
  /*好みの文章に変更してください。*/
  display: block;
  color: #113285;
  border: solid 1px #113285;
  border-radius: 5px;
  text-align: center;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  opacity: 0;
  z-index: 3;
  transition: 0.2s;
  font-weight: bold;
  letter-spacing: 0.2em;
  padding: 0.5em 1em;
}
#footer .banner-link:hover::before {
  opacity: 0.9;
}
#footer .banner-link:hover::after {
  opacity: 1;
}
#footer .privacyPolicy__wrapper {
  margin-top: 2rem;
  text-align: center;
}

@media (max-width: 575.98px) {
  #footer .banner img {
    margin-bottom: 1rem;
  }
}
/************************************
*************注意系*************
************************************/
.in-preparation {
  font-weight: bold;
  color: #851117;
  font-size: 1.5rem;
}

.caution {
  background-color: #851117;
  color: #ffffff;
  font-weight: bold;
  margin-bottom: 1rem;
  padding: 0.5em;
}

/*****************/
/*****************/
.slick-prev,
.slick-next {
  font-size: 0;
  line-height: 0;
  position: absolute;
  top: 50%;
  display: block;
  width: 20px;
  height: 20px;
  padding: 0;
  transform: translate(0, -50%);
  cursor: pointer;
  color: transparent;
  border: none;
  outline: none;
  background: transparent;
  z-index: 99;
}

.slick-prev {
  left: 10px;
}

.slick-next {
  right: 30px;
}

@media (min-width: 992px) {
  .slick-prev {
    left: -25px;
  }
  .slick-next {
    right: -5px;
  }
}
.slick-prev:before,
.slick-next:before {
  font-family: "slick";
  font-size: 20px;
  font-weight: bold;
  line-height: 1;
  opacity: 1;
  color: white;
  border: 1px solid #fff;
  padding: 5px 10px;
  border-radius: 20px;
  background-color: #113285;
}

.slick-prev:before {
  content: "←";
}

.slick-next:before {
  content: "→";
}

.slick-prev:hover,
.slick-prev:focus,
.slick-next:hover,
.slick-next:focus {
  color: transparent;
  outline: none;
  background: transparent;
}

.slick-prev:hover:before,
.slick-prev:focus:before,
.slick-next:hover:before,
.slick-next:focus:before {
  opacity: 1;
}

.slick-prev.slick-disabled:before,
.slick-next.slick-disabled:before {
  opacity: 0.25;
}

.slick-slide {
  width: 280px;
  position: relative;
  overflow: hidden;
}

.slick-slide img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

/*****************/
#top .mainVisual__wrapper {
  margin-top: 5rem;
  height: 70vh;
}
#top .mainVisual__container {
  position: relative;
  top: 0;
  left: 0;
  width: 100%;
  height: 70vh;
}
#top .mainVisual img {
  width: 100%;
  height: auto;
}
#top .mainVisual__parts--main {
  position: absolute;
  width: 80%;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  margin: 0 auto;
}
#top .mainVisual__parts.bottom {
  position: absolute;
  bottom: -5%;
  left: 5%;
}
#top .mainVisual__parts.top {
  position: absolute;
  top: -5%;
  right: 5%;
}
#top .mainVisual__parts.right {
  position: absolute;
  bottom: -5%;
  right: 5%;
}
#top .mainVisual__parts.right img {
  filter: drop-shadow(2px 2px 2px rgba(160, 160, 160, 0.8));
}
#top .topIntroduction {
  text-align: center;
  background-image: url(../img/topIntroductionBack.png);
  background-position: top;
  background-size: contain;
  background-repeat: repeat-x;
  margin-top: 100px;
}
#top .topIntroduction h2 {
  display: inline;
  padding: 0.5rem 2rem;
}
#top .topIntroduction .txt {
  margin-top: 2rem;
  margin-bottom: 0;
  line-height: 2em;
  padding-bottom: 2rem;
}
#top .topNews {
  text-align: center;
  color: #113285;
  background-image: url(../img/topNewsBack-min.png);
  background-position: center;
  background-size: contain;
  background-repeat: no-repeat;
}
#top .topNews__wrapper {
  margin-top: 2rem;
}
#top .topNews .ttl {
  font-weight: bold;
}
#top .topNews figure img {
  width: 100%;
  height: auto;
}
#top .topWindspeed {
  text-align: center;
}
#top .topWindspeed .txt {
  margin-top: 2rem;
  line-height: 2em;
}
#top .topTools a:hover .box.one,
#top .topTools a:hover .box.two,
#top .topTools a:hover .box.three {
  background-color: #113285;
  color: #ffffff;
}
#top .topTools a:hover .box.one::after {
  background-image: url("../img/topToolsIcon001--wh.png");
}
#top .topTools a:hover .box.two::after {
  background-image: url("../img/topToolsIcon002--wh.png");
}
#top .topTools a:hover .box.three::after {
  background-image: url("../img/topToolsIcon003--wh.png");
}
#top .topTools .box {
  border: 2px solid #113285;
  color: #113285;
  text-align: center;
  padding: 2rem 1rem;
  font-weight: bold;
  font-size: 1.25rem;
}
#top .topTools .box.one::after,
#top .topTools .box.two::after,
#top .topTools .box.three::after {
  content: "";
  display: inline-block;
  background-size: contain;
  background-repeat: no-repeat;
  width: 100px;
  height: 100px;
}
#top .topTools .box.one::after {
  background-image: url("../img/topToolsIcon001.png");
}
#top .topTools .box.two::after {
  background-image: url("../img/topToolsIcon002.png");
}
#top .topTools .box.three::after {
  background-image: url("../img/topToolsIcon003.png");
}
#top .topTools img {
  width: 30%;
}
#top .topGallery {
  text-align: center;
}

#topSlide {
  width: 100%;
  height: 100%;
}
#topSlide img {
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

@media (max-width: 1399.98px) {
  #top .mainVisual__wrapper {
    height: 50vh;
  }
  #top .mainVisual__container {
    height: 50vh;
  }
  #top .mainVisual__parts.bottom {
    width: 30%;
  }
  #top .mainVisual__parts.top {
    width: 30%;
  }
}
@media (max-width: 991.98px) {
  #top .mainVisual__wrapper {
    height: 30vh;
  }
  #top .mainVisual__container {
    height: 30vh;
  }
  #top .mainVisual__parts.bottom {
    width: 30%;
  }
  #top .mainVisual__parts.top {
    width: 30%;
  }
  #top .topIntroduction .txt {
    padding-bottom: 1rem;
  }
  #top .topNews img {
    width: 100%;
  }
}
@media (max-width: 767.98px) {
  #top .topNews {
    background-image: url(../img/topNewsBack_sp.png);
    background-repeat: repeat-y;
    background-position: top;
  }
}
@media (max-width: 575.98px) {
  #top .mainVisual__wrapper {
    height: 80vh;
    margin-top: 0;
  }
  #top .mainVisual__container {
    width: 100%;
    height: 80vh;
  }
  #top .mainVisual .mainVisual__sp {
    text-align: center;
  }
  #top .mainVisual__parts--main img {
    width: 100%;
  }
  #top .mainVisual__parts.bottom {
    bottom: 10%;
    left: 5%;
    width: 50%;
  }
  #top .mainVisual__parts.top {
    top: 10%;
    right: 5%;
    width: 50%;
  }
  #top .mainVisual__parts.bottom_sp {
    position: fixed;
    bottom: 0;
    width: 100%;
    z-index: 99;
  }
  #top .mainVisual__parts.bottom_sp .banner__btn {
    background-color: #009b5a;
    padding: 0.5rem 0.5rem 0.75rem 0.5rem;
    text-align: center;
  }
  #top .mainVisual__parts.bottom_sp .banner__btn a {
    color: #113285;
    font-weight: bold;
    border-bottom: 2px solid #113285;
    padding-bottom: 0.25rem;
  }
  #top .topIntroduction {
    text-align: center;
    background-image: url(../img/topIntroductionBack_sp.png);
    background-position: top;
    background-size: contain;
    background-repeat: repeat;
  }
  #top .topIntroduction p {
    text-align: left;
  }
  #top .topIntroduction h2 {
    padding: 0.5rem;
  }
  #top .topNews__wrapper {
    margin-top: 2rem;
  }
  #top .topNews figure {
    margin-top: 4rem;
  }
  #top .topWindspeed iframe {
    width: 100%;
  }
  #top .topTools .box {
    margin-bottom: 2rem;
    padding: 1rem 1rem;
  }
  #top .topTools img {
    width: 20%;
  }
}
@media (max-width: 390px) {
  #top .mainVisual__wrapper {
    height: 60vh;
    margin-top: 0;
  }
  #top .mainVisual__container {
    width: 100%;
    height: 60vh;
  }
}
#facility .introduction,
#facility .management,
#facility .floor,
#facility .nextTools {
  text-align: center;
}
#facility .management__wrapper {
  margin-top: 2rem;
}
#facility .management .txt-container {
  position: relative;
  top: 0;
  left: 0;
}
#facility .management .txt-center-center {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 100%;
}
#facility .management .txt {
  padding: 0 1rem 2rem 1rem;
}
#facility .management img {
  width: 100%;
}
#facility .management .bg-shift {
  background-color: #70b1f1;
}
#facility .facility {
  text-align: center;
}
#facility .facility__wrapper {
  margin-top: 2rem;
}
#facility .facility .box .ttl {
  font-size: 1.25rem;
  color: #113285;
  font-weight: bold;
}
#facility .facility .box .txt {
  text-align: left;
}
#facility .facility .box img {
  width: 50%;
  margin: 0 auto;
}
#facility .floor__wrapper {
  margin-top: 2rem;
}
#facility .floor img {
  width: 100%;
}
#facility .floor .accordion-body {
  text-align: left;
}
#facility .floor h3 button {
  color: #113285;
  font-weight: bold;
}

@media (max-width: 575.98px) {
  #facility .introduction .txt,
  #facility .management .txt,
  #facility .floor .txt,
  #facility .nextTools .txt {
    text-align: left;
  }
  #facility .management .txt-container {
    position: inherit;
  }
  #facility .management .txt-center-center {
    position: inherit;
    transform: inherit;
  }
  #facility .management img {
    width: 90%;
  }
}
#trainingRoomAndAccommodation .introduction,
#trainingRoomAndAccommodation .trainingRoom,
#trainingRoomAndAccommodation .accommodation,
#trainingRoomAndAccommodation .trainingRoomPrice,
#trainingRoomAndAccommodation .accommodationPrice,
#trainingRoomAndAccommodation .marina,
#trainingRoomAndAccommodation .marinaPrice,
#trainingRoomAndAccommodation .step,
#marina .introduction,
#marina .trainingRoom,
#marina .accommodation,
#marina .trainingRoomPrice,
#marina .accommodationPrice,
#marina .marina,
#marina .marinaPrice,
#marina .step {
  text-align: center;
}
#trainingRoomAndAccommodation .introduction__wrapper,
#marina .introduction__wrapper {
  margin-top: 2rem;
}
#trainingRoomAndAccommodation .introduction .txt-container,
#marina .introduction .txt-container {
  position: relative;
  top: 0;
  left: 0;
}
#trainingRoomAndAccommodation .introduction .txt-center-center,
#marina .introduction .txt-center-center {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 100%;
}
#trainingRoomAndAccommodation .introduction .txt,
#marina .introduction .txt {
  padding: 0 1rem;
  margin-top: 2rem;
  line-height: 2em;
}
#trainingRoomAndAccommodation .introduction img,
#marina .introduction img {
  width: 100%;
}
#trainingRoomAndAccommodation .introduction .bg-shift,
#marina .introduction .bg-shift {
  background-color: #70b1f1;
}
#trainingRoomAndAccommodation .trainingRoom__wrapper,
#trainingRoomAndAccommodation .accommodation__wrapper,
#trainingRoomAndAccommodation .marina__wrapper,
#trainingRoomAndAccommodation .step__wrapper,
#marina .trainingRoom__wrapper,
#marina .accommodation__wrapper,
#marina .marina__wrapper,
#marina .step__wrapper {
  margin-top: 2rem;
}
#trainingRoomAndAccommodation .trainingRoom .ttl,
#trainingRoomAndAccommodation .accommodation .ttl,
#trainingRoomAndAccommodation .marina .ttl,
#trainingRoomAndAccommodation .step .ttl,
#marina .trainingRoom .ttl,
#marina .accommodation .ttl,
#marina .marina .ttl,
#marina .step .ttl {
  font-weight: bold;
}
#trainingRoomAndAccommodation .trainingRoom img,
#trainingRoomAndAccommodation .accommodation img,
#trainingRoomAndAccommodation .marina img,
#trainingRoomAndAccommodation .step img,
#marina .trainingRoom img,
#marina .accommodation img,
#marina .marina img,
#marina .step img {
  width: 100%;
}
#trainingRoomAndAccommodation .trainingRoomPrice table,
#trainingRoomAndAccommodation .accommodationPrice table,
#trainingRoomAndAccommodation .marinaPrice table,
#marina .trainingRoomPrice table,
#marina .accommodationPrice table,
#marina .marinaPrice table {
  border: 1px solid black;
  width: 70%;
  margin: 2rem auto 0 auto;
  text-align: left;
}
#trainingRoomAndAccommodation .trainingRoomPrice table tr,
#trainingRoomAndAccommodation .trainingRoomPrice table th,
#trainingRoomAndAccommodation .trainingRoomPrice table td,
#trainingRoomAndAccommodation .accommodationPrice table tr,
#trainingRoomAndAccommodation .accommodationPrice table th,
#trainingRoomAndAccommodation .accommodationPrice table td,
#trainingRoomAndAccommodation .marinaPrice table tr,
#trainingRoomAndAccommodation .marinaPrice table th,
#trainingRoomAndAccommodation .marinaPrice table td,
#marina .trainingRoomPrice table tr,
#marina .trainingRoomPrice table th,
#marina .trainingRoomPrice table td,
#marina .accommodationPrice table tr,
#marina .accommodationPrice table th,
#marina .accommodationPrice table td,
#marina .marinaPrice table tr,
#marina .marinaPrice table th,
#marina .marinaPrice table td {
  border: 1px solid black;
}
#trainingRoomAndAccommodation .trainingRoomPrice table th,
#trainingRoomAndAccommodation .trainingRoomPrice table td,
#trainingRoomAndAccommodation .accommodationPrice table th,
#trainingRoomAndAccommodation .accommodationPrice table td,
#trainingRoomAndAccommodation .marinaPrice table th,
#trainingRoomAndAccommodation .marinaPrice table td,
#marina .trainingRoomPrice table th,
#marina .trainingRoomPrice table td,
#marina .accommodationPrice table th,
#marina .accommodationPrice table td,
#marina .marinaPrice table th,
#marina .marinaPrice table td {
  padding: 0.5rem 1rem;
}
#trainingRoomAndAccommodation .trainingRoomPrice table thead,
#trainingRoomAndAccommodation .accommodationPrice table thead,
#trainingRoomAndAccommodation .marinaPrice table thead,
#marina .trainingRoomPrice table thead,
#marina .accommodationPrice table thead,
#marina .marinaPrice table thead {
  text-align: center;
  background-color: #0959a8;
  color: #ffffff;
}
#trainingRoomAndAccommodation .trainingRoomPrice table .th-color,
#trainingRoomAndAccommodation .accommodationPrice table .th-color,
#trainingRoomAndAccommodation .marinaPrice table .th-color,
#marina .trainingRoomPrice table .th-color,
#marina .accommodationPrice table .th-color,
#marina .marinaPrice table .th-color {
  background-color: #EBF4F9;
  font-weight: bold;
  color: #113285;
}
#trainingRoomAndAccommodation .trainingRoomPrice table tbody th,
#trainingRoomAndAccommodation .accommodationPrice table tbody th,
#trainingRoomAndAccommodation .marinaPrice table tbody th,
#marina .trainingRoomPrice table tbody th,
#marina .accommodationPrice table tbody th,
#marina .marinaPrice table tbody th {
  min-width: 6em;
}
#trainingRoomAndAccommodation .trainingRoomPrice table tbody tr:nth-child(even) td,
#trainingRoomAndAccommodation .accommodationPrice table tbody tr:nth-child(even) td,
#trainingRoomAndAccommodation .marinaPrice table tbody tr:nth-child(even) td,
#marina .trainingRoomPrice table tbody tr:nth-child(even) td,
#marina .accommodationPrice table tbody tr:nth-child(even) td,
#marina .marinaPrice table tbody tr:nth-child(even) td {
  background-color: #e3e5e5;
}
#trainingRoomAndAccommodation .trainingRoomPrice__wrapper,
#trainingRoomAndAccommodation .accommodationPrice__wrapper,
#trainingRoomAndAccommodation .marinaPrice__wrapper,
#marina .trainingRoomPrice__wrapper,
#marina .accommodationPrice__wrapper,
#marina .marinaPrice__wrapper {
  margin-top: 2rem;
}
#trainingRoomAndAccommodation .trainingRoomPrice .note,
#trainingRoomAndAccommodation .accommodationPrice .note,
#trainingRoomAndAccommodation .marinaPrice .note,
#marina .trainingRoomPrice .note,
#marina .accommodationPrice .note,
#marina .marinaPrice .note {
  width: 70%;
  margin: 2rem auto 0 auto;
  text-align: left;
}
#trainingRoomAndAccommodation .schedule iframe,
#marina .schedule iframe {
  width: 100%;
}
#trainingRoomAndAccommodation .step h3,
#marina .step h3 {
  font-size: 1.2rem;
  background-color: #113285;
  padding: 1rem 2rem;
  text-align: center;
  color: #ffffff;
  margin-bottom: 0;
}
#trainingRoomAndAccommodation .step__wrapper,
#marina .step__wrapper {
  margin-top: 2rem;
}
#trainingRoomAndAccommodation .step ul,
#marina .step ul {
  list-style: none;
  text-align: left;
  padding: 1rem 2rem;
}
#trainingRoomAndAccommodation .step ul li,
#marina .step ul li {
  padding: 1rem 0;
  line-height: 2.5em;
}
#trainingRoomAndAccommodation .step ul span,
#marina .step ul span {
  background-color: #113285;
  color: #ffffff;
  font-weight: bold;
  padding: 0.5rem 0.8rem;
  margin-right: 1rem;
}
#trainingRoomAndAccommodation .step ul a,
#marina .step ul a {
  border-bottom: 1px solid #009b5a;
  color: #009b5a;
  font-weight: bold;
}
#trainingRoomAndAccommodation .step ul a:hover,
#marina .step ul a:hover {
  color: #24c783;
}

@media (max-width: 991.98px) {
  #trainingRoomAndAccommodation .trainingRoomPrice table,
  #trainingRoomAndAccommodation .accommodationPrice table,
  #trainingRoomAndAccommodation .marinaPrice table,
  #marina .trainingRoomPrice table,
  #marina .accommodationPrice table,
  #marina .marinaPrice table {
    width: 100%;
  }
  #trainingRoomAndAccommodation .trainingRoomPrice .note,
  #trainingRoomAndAccommodation .accommodationPrice .note,
  #trainingRoomAndAccommodation .marinaPrice .note,
  #marina .trainingRoomPrice .note,
  #marina .accommodationPrice .note,
  #marina .marinaPrice .note {
    width: 100%;
  }
  #trainingRoomAndAccommodation .trainingRoomPrice .text-nowrap,
  #trainingRoomAndAccommodation .accommodationPrice .text-nowrap,
  #trainingRoomAndAccommodation .marinaPrice .text-nowrap,
  #marina .trainingRoomPrice .text-nowrap,
  #marina .accommodationPrice .text-nowrap,
  #marina .marinaPrice .text-nowrap {
    white-space: normal !important;
  }
  #trainingRoomAndAccommodation .step ul,
  #marina .step ul {
    padding: 1rem;
  }
}
@media (max-width: 575.98px) {
  #trainingRoomAndAccommodation .introduction .txt-container,
  #marina .introduction .txt-container {
    position: inherit;
  }
  #trainingRoomAndAccommodation .introduction .txt-center-center,
  #marina .introduction .txt-center-center {
    position: inherit;
    transform: inherit;
  }
  #trainingRoomAndAccommodation .introduction img,
  #marina .introduction img {
    width: 90%;
  }
  #trainingRoomAndAccommodation .trainingRoomPrice table th,
  #trainingRoomAndAccommodation .trainingRoomPrice table td,
  #trainingRoomAndAccommodation .accommodationPrice table th,
  #trainingRoomAndAccommodation .accommodationPrice table td,
  #trainingRoomAndAccommodation .marinaPrice table th,
  #trainingRoomAndAccommodation .marinaPrice table td,
  #marina .trainingRoomPrice table th,
  #marina .trainingRoomPrice table td,
  #marina .accommodationPrice table th,
  #marina .accommodationPrice table td,
  #marina .marinaPrice table th,
  #marina .marinaPrice table td {
    padding: 0.5rem;
  }
}
#licence .licence,
#licence .nextTools {
  text-align: center;
}
#licence .licence .txt,
#licence .nextTools .txt {
  margin-top: 2rem;
  line-height: 2em;
}
#licence .licence {
  text-align: center;
}
#licence .licence h3 {
  font-size: 1.2rem;
  margin-bottom: 2rem;
}
#licence .licence img {
  margin-bottom: 2rem;
  height: 56px;
  width: auto;
}
#licence .licence__wrapper {
  margin-top: 2rem;
}
#licence .licence .box {
  border: 1px solid #113285;
  padding: 2rem 1rem;
  background-color: #eaf8ff;
}

@media (max-width: 575.98px) {
  #licence .licence .txt,
  #licence .nextTools .txt {
    text-align: left;
  }
  #licence .licence img {
    width: 100%;
    height: auto;
  }
}
#event .archive,
#event .yachtClass,
#event .experience {
  text-align: center;
}
#event .archive__wrapper,
#event .yachtClass__wrapper,
#event .experience__wrapper {
  margin-top: 2rem;
}
#event .archive img,
#event .yachtClass img,
#event .experience img {
  width: 100%;
}
#event .archive__wrapper p {
  width: 80%;
  margin: 0 auto;
  text-align: left;
}
#event .archive__wrapper img {
  width: 80%;
}
#event .experience .txt {
  margin-top: 2rem;
  line-height: 2em;
}
#event .experience img {
  width: 100%;
}
#event .experience .box {
  text-align: center;
  padding: 1rem 0;
}
#event .experience .ttl {
  color: #113285;
  font-weight: bold;
  font-size: 1.25rem;
  margin-top: 1rem;
}
#event .experience .type__wrapper {
  margin-bottom: 2rem;
}
#event .experience .type__wrapper ul {
  margin-top: 2rem;
  text-align: left;
}
#event .experience .type__wrapper li {
  margin-top: 0.5rem;
}
#event .experience .type__wrapper span {
  font-weight: bold;
  color: #113285;
}
#event .experience iframe {
  width: 100%;
}
#event .yachtClass__description {
  background-color: #EBF4F9;
  padding: 2rem 1rem;
  margin-top: 2rem;
  margin-bottom: 4rem;
  text-align: center;
}
#event .yachtClass__description p {
  margin-bottom: 0;
}
#event .yachtClass img {
  width: 100%;
}
#event .yachtClass__overview {
  margin-top: 4rem;
  margin-bottom: 4rem;
}
#event .yachtClass table {
  width: 80%;
  margin: 0 auto;
  text-align: left;
}
#event .yachtClass table tr {
  border-bottom: 1px solid lightgray;
}
#event .yachtClass table th {
  white-space: nowrap;
  padding: 1rem;
}
#event .yachtClass table td {
  padding: 1rem;
  padding-left: 2rem;
}

@media (max-width: 575.98px) {
  #event .archive,
  #event .yachtClass,
  #event .experience {
    text-align: center;
  }
  #event .archive p {
    text-align: left;
  }
  #event .experience .txt {
    text-align: left;
  }
  #event .yachtClass__description {
    text-align: left;
  }
  #event .yachtClass__description h3 {
    text-align: center;
  }
  #event .yachtClass__overview {
    margin-top: 4rem;
    margin-bottom: 4rem;
  }
  #event .yachtClass table {
    width: 100%;
  }
  #event .yachtClass table th {
    white-space: normal;
  }
}
#price {
  text-align: center;
}
#price .storage table {
  border: 1px solid black;
  width: 70%;
  margin: 2rem auto 0 auto;
  text-align: left;
}
#price .storage table tr,
#price .storage table th,
#price .storage table td {
  border: 1px solid black;
}
#price .storage table th,
#price .storage table td {
  padding: 0.5rem 1rem;
}
#price .storage table thead {
  text-align: center;
  background-color: #0959a8;
  color: #ffffff;
}
#price .storage table .th-color {
  background-color: #EBF4F9;
  font-weight: bold;
  color: #113285;
}
#price .storage table tbody tr:nth-child(even) td {
  background-color: #e3e5e5;
}
#price .storage .note {
  width: 70%;
  margin: 2rem auto 0 auto;
  text-align: left;
}

@media (max-width: 991.98px) {
  #price .storage table {
    width: 100%;
  }
  #price .storage .note {
    width: 100%;
  }
  #price .storage .text-nowrap {
    white-space: normal !important;
  }
}
@media (max-width: 575.98px) {
  #price .storage table th,
  #price .storage table td {
    padding: 0.5rem;
  }
  #price .storage table tbody th {
    min-width: 6em;
  }
}
#step {
  text-align: center;
}
#step .step h3 {
  font-size: 1.2rem;
  background-color: #113285;
  padding: 1rem 2rem;
  text-align: center;
  color: #ffffff;
  margin-bottom: 0;
}
#step .step__wrapper {
  margin-top: 2rem;
}
#step .step ul {
  list-style: none;
  text-align: left;
  padding: 1rem 4rem;
}
#step .step ul li {
  padding: 1rem 0;
  line-height: 2.5em;
}
#step .step ul span {
  background-color: #113285;
  color: #ffffff;
  font-weight: bold;
  padding: 0.5rem 0.8rem;
  margin-right: 2rem;
}
#step .step ul a {
  border-bottom: 1px solid #009b5a;
  color: #009b5a;
  font-weight: bold;
}
#step .step ul a:hover {
  color: #24c783;
}
#step .step .box {
  border: 1px solid #113285;
}

@media (max-width: 575.98px) {
  #step .step ul {
    padding: 1rem 2rem;
  }
}
#access {
  text-align: center;
}
#access .cmnFooter {
  background-color: inherit;
  padding: 0;
  padding: 0 0 6rem 0;
}

#news {
  text-align: center;
}
#news .news__wrapper {
  margin-top: 2rem;
}
#news .news__container {
  width: 70%;
  margin: 0 auto;
  margin-bottom: 2rem;
}
#news .news__container img {
  width: 100%;
  height: auto;
}
#news .news__container .date,
#news .news__container .ttl {
  text-align: left;
}
#news .news__container .ttl {
  color: #113285;
}
#news .news__container .text-end {
  margin-bottom: 2rem;
}
#news .page--links {
  margin-top: 2rem;
}
#news .page-numbers {
  font-size: 1.25rem;
  border-radius: 2rem;
  padding: 0.5rem 1rem;
  background-color: #ffffff;
  border: 1px solid #113285;
  color: #113285;
  margin: 0 0.5rem;
}
#news .page-numbers.current {
  border-radius: 2rem;
  padding: 0.5rem 1rem;
  background-color: #113285;
  border: 1px solid #113285;
  color: #ffffff;
}
#news .page-numbers.next,
#news .page-numbers.prev {
  display: none;
}

@media (max-width: 991.98px) {
  #news .news__container {
    width: 100%;
  }
}
#newsDetail .newsDetail figure {
  width: 30%;
  margin: 0 auto;
}
#newsDetail .newsDetail img {
  width: 100%;
  height: auto;
}
#newsDetail .newsDetail__container {
  width: 60%;
  margin: 2rem auto 0 auto;
}
#newsDetail .newsDetail .ttl {
  color: #113285;
  margin-top: 1rem;
}
#newsDetail .newsDetail .txt {
  margin-top: 2rem;
  line-height: 2em;
}
#newsDetail .newsDetail .btn__wrapper {
  text-align: center;
  margin-top: 2rem;
}
#newsDetail .newsDetail .btn__wrapper a {
  margin: 0 1rem;
}

@media (max-width: 991.98px) {
  #newsDetail .newsDetail figure {
    width: 45%;
  }
  #newsDetail .newsDetail__container {
    width: 85%;
  }
}
@media (max-width: 575.98px) {
  #newsDetail .newsDetail figure {
    width: 80%;
  }
}
#terms .terms,
#terms .privacypolicy,
#privacypolicy .terms,
#privacypolicy .privacypolicy {
  text-align: center;
}
#terms .terms h3,
#terms .terms p,
#terms .privacypolicy h3,
#terms .privacypolicy p,
#privacypolicy .terms h3,
#privacypolicy .terms p,
#privacypolicy .privacypolicy h3,
#privacypolicy .privacypolicy p {
  text-align: left;
}
#terms .terms li,
#terms .privacypolicy li,
#privacypolicy .terms li,
#privacypolicy .privacypolicy li {
  list-style: none;
  text-align: left;
}
#terms .terms h3,
#terms .privacypolicy h3,
#privacypolicy .terms h3,
#privacypolicy .privacypolicy h3 {
  margin-top: 3rem;
}
#terms .terms .txt,
#terms .privacypolicy .txt,
#privacypolicy .terms .txt,
#privacypolicy .privacypolicy .txt {
  margin-top: 2rem;
}

#link .link {
  text-align: center;
}
#link .link ul {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr 1fr 1fr;
  padding: 0;
}
#link .link li {
  padding: 2rem 1.5rem;
  list-style: none;
}
#link .link li img {
  width: 100%;
  height: auto;
}
#link .link a {
  color: #009b5a;
  font-weight: bold;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  height: 100%;
  gap: 6px;
}
#link .link a:hover {
  opacity: 0.8;
}

@media (max-width: 800px) {
  #link .link ul {
    grid-template-columns: 1fr 1fr 1fr 1fr;
  }
  #link .link li {
    padding: 2rem 1rem;
  }
}
@media (max-width: 575.98px) {
  #link .link ul {
    grid-template-columns: 1fr 1fr;
  }
}
#notFound .notFound {
  height: 30vh;
}
#notFound .notFound .ttl {
  font-size: 10rem;
  color: #113285;
  font-weight: bold;
  text-align: center;
}

/************************************
*************フォーム*************
************************************/
#contact,
#application {
  text-align: center;
}
#contact .contact h2,
#contact .contact .description,
#contact .application h2,
#contact .application .description,
#application .contact h2,
#application .contact .description,
#application .application h2,
#application .application .description {
  text-align: center;
}
#contact .contact__wrapper,
#contact .application__wrapper,
#application .contact__wrapper,
#application .application__wrapper {
  margin-top: 2rem;
  width: 70%;
  margin: 0 auto;
}
#contact .contact .fax__wrapper,
#contact .application .fax__wrapper,
#application .contact .fax__wrapper,
#application .application .fax__wrapper {
  background-color: #EBF4F9;
  padding: 1rem;
  margin-top: 2rem;
  text-align: center;
}
#contact .contact .fax__wrapper p,
#contact .application .fax__wrapper p,
#application .contact .fax__wrapper p,
#application .application .fax__wrapper p {
  margin: 0;
}
#contact .contact .fax__wrapper span,
#contact .application .fax__wrapper span,
#application .contact .fax__wrapper span,
#application .application .fax__wrapper span {
  color: #113285;
  font-weight: bold;
}
#contact .contact a,
#contact .application a,
#application .contact a,
#application .application a {
  color: #009b5a;
  text-decoration: underline;
}
#contact .contact a:hover,
#contact .application a:hover,
#application .contact a:hover,
#application .application a:hover {
  font-weight: bold;
}
#contact .contact .wpcf7,
#contact .application .wpcf7,
#application .contact .wpcf7,
#application .application .wpcf7 {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 100%;
}
#contact .contact .wpcf7 span.any,
#contact .application .wpcf7 span.any,
#application .contact .wpcf7 span.any,
#application .application .wpcf7 span.any {
  background-color: #616161;
  color: #ffffff;
  padding: 0.25rem;
  margin-right: 1rem;
}
#contact .contact .wpcf7 span.required,
#contact .application .wpcf7 span.required,
#application .contact .wpcf7 span.required,
#application .application .wpcf7 span.required {
  background-color: #113285;
  color: #ffffff;
  padding: 0.25rem;
  margin-right: 1rem;
}
#contact .contact .wpcf7 table,
#contact .application .wpcf7 table,
#application .contact .wpcf7 table,
#application .application .wpcf7 table {
  width: 100%;
}
#contact .contact .wpcf7 table tr,
#contact .application .wpcf7 table tr,
#application .contact .wpcf7 table tr,
#application .application .wpcf7 table tr {
  border-bottom: 1px solid lightgray;
}
#contact .contact .wpcf7 table tr:last-child,
#contact .application .wpcf7 table tr:last-child,
#application .contact .wpcf7 table tr:last-child,
#application .application .wpcf7 table tr:last-child {
  border: none;
}
#contact .contact .wpcf7 table th,
#contact .contact .wpcf7 table td,
#contact .application .wpcf7 table th,
#contact .application .wpcf7 table td,
#application .contact .wpcf7 table th,
#application .contact .wpcf7 table td,
#application .application .wpcf7 table th,
#application .application .wpcf7 table td {
  padding: 1rem 0.5rem 0 0.5rem;
  text-align: left;
}
#contact .contact .wpcf7 table th,
#contact .application .wpcf7 table th,
#application .contact .wpcf7 table th,
#application .application .wpcf7 table th {
  white-space: nowrap;
}
#contact .contact .wpcf7 input,
#contact .contact .wpcf7 textarea,
#contact .contact .wpcf7 select,
#contact .application .wpcf7 input,
#contact .application .wpcf7 textarea,
#contact .application .wpcf7 select,
#application .contact .wpcf7 input,
#application .contact .wpcf7 textarea,
#application .contact .wpcf7 select,
#application .application .wpcf7 input,
#application .application .wpcf7 textarea,
#application .application .wpcf7 select {
  width: 100%;
  background-color: #eeeeee;
  padding: 0.5rem 1rem;
  border: 1px solid lightgray;
}
#contact .contact .wpcf7 input[type=radio],
#contact .contact .wpcf7 input[type=checkbox],
#contact .contact .wpcf7 input[type=submit],
#contact .application .wpcf7 input[type=radio],
#contact .application .wpcf7 input[type=checkbox],
#contact .application .wpcf7 input[type=submit],
#application .contact .wpcf7 input[type=radio],
#application .contact .wpcf7 input[type=checkbox],
#application .contact .wpcf7 input[type=submit],
#application .application .wpcf7 input[type=radio],
#application .application .wpcf7 input[type=checkbox],
#application .application .wpcf7 input[type=submit] {
  width: auto;
}
#contact .contact .wpcf7 input.wpcf7-file,
#contact .application .wpcf7 input.wpcf7-file,
#application .contact .wpcf7 input.wpcf7-file,
#application .application .wpcf7 input.wpcf7-file {
  background-color: inherit;
  border: none;
}
#contact .contact .acceptance__wrapper,
#contact .application .acceptance__wrapper,
#application .contact .acceptance__wrapper,
#application .application .acceptance__wrapper {
  background-color: #EBF4F9;
  padding: 1rem;
  margin-top: 2rem;
  text-align: center;
}
#contact .contact .acceptance__wrapper p,
#contact .application .acceptance__wrapper p,
#application .contact .acceptance__wrapper p,
#application .application .acceptance__wrapper p {
  margin: 0;
}
#contact .contact .submit__wrapper,
#contact .application .submit__wrapper,
#application .contact .submit__wrapper,
#application .application .submit__wrapper {
  text-align: center;
  margin-top: 2rem;
}
#contact .contact .wpcf7-submit,
#contact .application .wpcf7-submit,
#application .contact .wpcf7-submit,
#application .application .wpcf7-submit {
  min-width: 130px !important;
  border-radius: 5px !important;
  background: #fff !important;
  border: 2px solid #113285 !important;
  color: #113285 !important;
  font-weight: bold;
  padding: 1em 4em;
}
#contact .contact .wpcf7-submit:hover,
#contact .application .wpcf7-submit:hover,
#application .contact .wpcf7-submit:hover,
#application .application .wpcf7-submit:hover {
  color: #fff !important;
  background-color: #113285 !important;
  border: 2px solid #113285 !important;
}
#contact .contact .wpcf7-spinner,
#contact .application .wpcf7-spinner,
#application .contact .wpcf7-spinner,
#application .application .wpcf7-spinner {
  display: block;
}
#contact .contact .wpcf7-number,
#contact .contact .wpcf7-select,
#contact .application .wpcf7-number,
#contact .application .wpcf7-select,
#application .contact .wpcf7-number,
#application .contact .wpcf7-select,
#application .application .wpcf7-number,
#application .application .wpcf7-select {
  margin-right: 0.5rem;
}
#contact .contact .selec-date,
#contact .application .selec-date,
#application .contact .selec-date,
#application .application .selec-date {
  width: 33.3% !important;
}
#contact .contact .text-people,
#contact .contact .text-price,
#contact .application .text-people,
#contact .application .text-price,
#application .contact .text-people,
#application .contact .text-price,
#application .application .text-people,
#application .application .text-price {
  width: 80% !important;
  margin-right: 5%;
}

@media (max-width: 991.98px) {
  #contact .contact__wrapper,
  #contact .application__wrapper,
  #application .contact__wrapper,
  #application .application__wrapper {
    width: 85%;
    margin: 0 auto;
  }
}
@media (max-width: 575.98px) {
  #contact .contact__wrapper,
  #contact .application__wrapper,
  #application .contact__wrapper,
  #application .application__wrapper {
    width: 100%;
  }
  #contact .contact .description,
  #contact .application .description,
  #application .contact .description,
  #application .application .description {
    text-align: left;
  }
  #contact .contact .wpcf7 table th,
  #contact .application .wpcf7 table th,
  #application .contact .wpcf7 table th,
  #application .application .wpcf7 table th {
    white-space: normal;
  }
}
#application-list .application-list {
  text-align: center;
}
#application-list .application-list .row {
  margin-top: 2rem;
}
#application-list .application-list .row:first-child {
  margin-top: 0;
}

@media (max-width: 575.98px) {
  span.any,
  span.required {
    display: block;
    width: -moz-fit-content;
    width: fit-content;
    margin-bottom: 0.5em;
  }
  input,
  select,
  textarea {
    width: 100%;
  }
  input[type=radio],
  input[type=checkbox] {
    width: 20%;
  }
  .acceptance__wrapper {
    text-align: left;
  }
  .fax__wrapper p {
    text-align: left;
  }
  .wpcf7-radio span,
  .wpcf7-checkbox span {
    width: 100%;
  }
  .wpcf7-radio span label,
  .wpcf7-checkbox span label {
    width: 100%;
  }
  .wpcf7-number,
  .wpcf7-select {
    width: 30%;
  }
  .wpcf7-list-item {
    margin-left: 0;
  }
}/*# sourceMappingURL=style.css.map */