@import url("/csw/style_header.css");
.cp_ipselect {
  position: relative;
  background-color: #fff;
  border: 2px solid #339bcf;
  color: #fff;
  ;
  overflow: hidden;
  font-size: 15px;
}
.cp_ipselect select {
  width: 100%;
  padding-right: 1em;
  cursor: pointer;
  text-indent: 0.01px;
  text-overflow: ellipsis;
  border: none;
  outline: none;
  background: transparent;
  background-image: none;
  box-shadow: none;
  -webkit-appearance: none;
  appearance: none;
}
.cp_ipselect select::-ms-expand {
  display: none;
}
.cp_ipselect.cp_sl04 {
  position: relative;
}
.cp_ipselect.cp_sl04::before {
  position: absolute;
  top: 0.8em;
  right: 0.8em;
  width: 0;
  height: 0;
  padding: 0;
  content: '';
  border-left: 6px solid transparent;
  border-right: 6px solid transparent;
  border-top: 6px solid #339bcf;
  pointer-events: none;
}
.cp_ipselect.cp_sl04 select {
  padding: 5px 38px 5px 10px;
  color: #339bcf;
}
/* フェードイン */
.sa {
  opacity: 0;
  transition: all .6s ease;
}
.sa.show {
  opacity: 1;
  transform: none;
}
.sa--up {
  transform: translate(0, 100px);
}
/* パソコンで見たときは"pc"のclassがついた画像が表示される */
.pc {
  display: block !important;
}
.sp {
  display: none !important;
}
/* スマートフォンで見たときは"sp"のclassがついた画像が表示される */
@media only screen and (max-width: 768px) {
  .pc {
    display: none !important;
  }
  .sp {
    display: block !important;
  }
}
/* --------------------------------------------- */
/* ▼モバイルファースト (全環境に共通のデザイン) */
/* --------------------------------------------- */
* {
  margin: 0;
  padding: 0;
}
html {
  color: #666666;
  font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", YuGothic, "ヒラギノ角ゴ ProN W3", Hiragino Kaku Gothic ProN, Arial, "メイリオ", Meiryo, sans-serif;
  font-size: 62.5%; /* 16px x 0.625 = 10px(=1rem) */
}
body, div, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, pre, code, form, fieldset, legend, input, textarea, p, blockquote, th, td {}
body {
  font-size: 1.6rem; /* 16px */
  line-height: 1.6;
  -webkit-text-size-adjust: 100%;
  -moz-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
  -o-text-size-adjust: 100%;
  text-size-adjust: 100%;
  position: relative;
  text-align: center;
  width: 100%;
  margin-left: auto;
  margin-right: auto;
}
fieldset, img {
  border: 0
}
ol, ul {
  list-style: none
}
h1, h2, h3, h4, h5, h6 {
  font-size: 100%;
  font-weight: normal;
}
/*link*/
a {
  color: #666666;
  text-decoration: none;
}
a:hover {
  color: #3593c3;
  text-decoration: none;
}
a.white {
  color: #858585;
  text-decoration: none;
}
a.white:hover {
  color: #fff;
  text-decoration: none;
}
a.white2 {
  color: #fff;
  text-decoration: none;
}
a.white2:hover {
  color: yellow;
  text-decoration: none;
}
a.blue {
  color: #3491c2;
  text-decoration: none;
}
a.blue:hover {
  color: #e5c400;
  text-decoration: none;
}
a:hover img {
  opacity: 0.8;
  filter: alpha(opacity=80);
  -moz-opacity: 0.8;
  padding-top: 0px;
  transition: .3s;
}
img {
  border-style: none;
  z-index: 0;
  vertical-align: bottom;
}
/*font*/
.f12 {
  font-size: 1.2rem; /* 12px */
  line-height: 1.6;
}
.f17 {
  font-size: 1.7rem; /* 12px */
  line-height: 1.6;
}
.f25 {
  font-size: 2.5rem; /* 12px */
  line-height: 1.6;
}
.f30 {
  font-size: 3.0rem; /* 30px */
  line-height: 1.3;
}
.f40 {
  font-size: 4.0rem; /* 40px */
  line-height: 1.2;
}
/*txt*/
.bb {
  font-weight: bold;
}
.left {
  text-align: left;
}
.right {
  text-align: right;
}
.center {
  text-align: center;
  margin-left: auto;
  margin-right: auto;
}
.br-sp {
  display: none;
}
.br-pc {
  display: block;
}
.sp_left {
  text-align: left;
}
/*padding*/
.pdg10t {
  padding-top: 10px;
}
.pdg20b {
  padding-bottom: 20px;
}
.pdg10b {
  padding-bottom: 10px;
}
.photo img {
  width: 100%;
}
.photo2 img {
  vertical-align: top;
  width: 100%;
}
/*color*/
.white {
  color: #fff;
}
.black {
  color: #000;
}
.blue {
  color: #055a92;
}
.blue2 {
  color: #3491c2;
}
.pink {
  color: #e17ba3;
}
.green {
  color: #62ac1e
}
.brown01 {
  color: #604D3F;
}
.brown02 {
  color: #A08977;
}
/****/
.fc02_wrap {
  width: 100%;
  background-color: #F4F0E5;
  padding-bottom: 30px;
}
.fc02 {}
.fc02_in {}
.fc_reason {
  width: 560px;
  overflow: hidden;
  position: relative;
  zoom: 1;
  margin-right: 0px;
  margin-left: 0px;
}
.fc_reason img {
  width: 560px;
  height: auto;
}
/*btn*/
.btn.full {
  padding: 10px 0;
  width: 100%;
}
.btn {
  display: inline-block;
  padding: 10px 30px; /*文字と線の間の余白*/
  text-align: center;
  position: relative;
  z-index: 2;
  background-color: #339bcf;
  border: 1px solid #339bcf;
  color: #fff;
  ;
  overflow: hidden;
  margin-top: 10px;
}
.btn::before, .btn::after {
  position: absolute;
  z-index: -1;
  display: block;
  content: '';
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-transition: all .3s;
  transition: all .3s;
}
.btn:hover {
  color: #339bcf;
}
.btn::after {
  top: -100%;
  width: 100%;
  height: 100%;
  left: 0px;
}
.btn:hover::after {
  top: 0;
  background-color: #fff;
}
.btn2 {
  display: inline-block;
  padding: 10px 30px; /*文字と線の間の余白*/
  text-align: center;
  position: relative;
  z-index: 2;
  background-color: #b3a137;
  border: 1px solid #b3a137;
  color: #fff;
  ;
  overflow: hidden;
  margin-top: 10px;
}
.btn2::before, .btn2::after {
  position: absolute;
  z-index: -1;
  display: block;
  content: '';
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-transition: all .3s;
  transition: all .3s;
}
.btn2:hover {
  color: #b3a137;
}
.btn2::after {
  top: -100%;
  width: 100%;
  height: 100%;
  left: 0px;
}
.btn2:hover::after {
  top: 0;
  background-color: #fff;
}
.hbtn01 {
  display: inline-block;
  padding: 9px 10px; /*文字と線の間の余白*/
  text-align: center;
  position: relative;
  z-index: 2;
  /* background-color: #1d5597;
  border: 1px solid #1d5597;*/
  color: #333333;
  overflow: hidden;
  font-size: 1.0rem; /* 13px */
  margin-right: 1px;
  float: left;
  margin-right: 3px;
  /* background: linear-gradient(to right, #036eb7 0%, #036eb7 35%, #1c518f 35%, #1c518f 100%);*/
}
.hbtn01::before, .hbtn01::after {
  position: absolute;
  z-index: -1;
  display: block;
  content: '';
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-transition: all .3s;
  transition: all .3s;
}
.hbtn01:hover {
  /* color: #1d5597;*/
}
.hbtn01::after {
  top: -100%;
  width: 100%;
  height: 100%;
  left: 0px;
}
.hbtn01:hover::after {
  top: 0;
  background-color: #fff;
}
.hbtn01 a {
  color: #333333 !important;
}
.hbtn02 {
  display: inline-block;
  padding: 5px 10px; /*文字と線の間の余白*/
  text-align: center;
  position: relative;
  z-index: 2;
  background-color: #339bcf;
  border: 1px solid #339bcf;
  color: #fff;
  overflow: hidden;
  font-size: 1.5rem; /* 11px */
}
.hbtn02.full {
  adding: 5px 0px;
  width: 95%;
  margin: 0 auto 0.5em;
}
.hbtn02 i {
  padding: 0 8px 0 0;
}
.hbtn02::before, .hbtn02::after {
  position: absolute;
  z-index: -1;
  display: block;
  content: '';
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-transition: all .3s;
  transition: all .3s;
}
.hbtn02:hover {
  color: #fff;
}
.hbtn02 a {
  color: #fff !important;
}
.hbtn02 a:hover {
  color: #CCCCCC !important;
}
.hbtn02::after {
  top: -100%;
  width: 100%;
  height: 100%;
  left: 0px;
}
.hbtn02:hover::after {
  top: 0;
  /*background-color: #fff;*/
}
.fbtn01 {
  display: inline-block;
  padding: 5px 10px; /*文字と線の間の余白*/
  text-align: center;
  position: relative;
  z-index: 2;
  background-color: rgba(0, 0, 255, 0);
  border: 1px solid #000;
  color: #000;
  ;
  overflow: hidden;
  font-size: 1.5rem; /* 13px */
  margin-right: 1px;
}
.fbtn01::before, .fbtn01::after {
  position: absolute;
  z-index: -1;
  display: block;
  content: '';
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-transition: all .3s;
  transition: all .3s;
}
.fbtn01:hover {
  color: #fff;
}
.fbtn01::after {
  top: -100%;
  width: 100%;
  height: 100%;
  left: 0px;
}
.fbtn01:hover::after {
  top: 0;
  background-color: #000;
}
.fbtn2 {
  box-sizing: border-box;
  display: inline-block;
  padding: 10px 30px; /*文字と線の間の余白*/
  width: 100%;
  text-align: center;
  position: relative;
  z-index: 2;
  background-color: #339bcf;
  border: 1px solid #339bcf;
  color: #fff;
  ;
  overflow: hidden;
  margin-top: 10px;
}
.fbtn2::before, .fbtn2::after {
  position: absolute;
  z-index: -1;
  display: block;
  content: '';
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-transition: all .3s;
  transition: all .3s;
}
.fbtn2:hover {
  color: #339bcf;
}
.fbtn2::after {
  top: -100%;
  width: 100%;
  height: 100%;
  left: 0px;
}
.fbtn2:hover::after {
  top: 0;
  background-color: #fff;
}
.sp_btn {
  width: 100%;
  position: relative;
  overflow: hidden;
  zoom: 1;
  margin-top: 10px;
  margin-bottom: 10px;
}
.sp_btn_in {
  float: left;
}
#sp_header00 {
  width: 95%;
  margin-right: auto;
  margin-left: auto;
  margin-top: 10px;
  margin-bottom: 10px;
  text-align: left;
}
#sp_header {
  width: 100%;
  margin-right: auto;
  margin-left: auto;
  padding-top: 90px;
  background-color: #ededed;
  font-size: 1.0rem; /* 11px */
  line-height: 1.5;
  position: fixed;
  overflow: hidden;
  zoom: 1;
  z-index: 998;
}
.sp_menu {
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  margin-top: 10px;
  border-top: 2px solid #fff;
}
.sp_menu__item {
  display: inline-block;
  float: left;
  width: 20%;
}
/* mainv */
a.gnavi {
  position: relative;
  display: inline-block;
  text-decoration: none;
}
a.gnavi:hover {
  color: #055a92;
}
a.gnavi::after {
  position: absolute;
  bottom: -4px;
  left: 0;
  content: '';
  width: 100%;
  height: 2px;
  background: #055a92;
  transform: scale(0, 1);
  transform-origin: left top;
  transition: transform .3s;
}
a.gnavi:hover::after {
  transform: scale(1, 1);
}
.pan-bg {
  padding: 0.5em 0;
}
.pan-bg .pan-bg-content {
  width: 90%;
  max-width: 1200px;
  margin: 0 auto;
}
.height_adjustment {
  height: 70px;
}
.scroll-bg {
  padding: 2em 0;
}
.scroll-bg .scroll-bg-content {
  width: 90%;
  max-width: 1200px;
  margin: 0 auto;
}
.scroll-bg2 {
  padding: 1em 0;
}
.scroll-bg2 .scroll-bg-content {
  width: 90%;
  max-width: 1200px;
  margin: 0 auto;
}
.scroll-bg3 {
  padding: 0.5em 0;
}
.scroll-bg3 .scroll-bg-content {
  width: 90%;
  max-width: 1200px;
  margin: 0 auto;
}
.sitemap-bg {
  padding: 0;
}
.sitemap-bg .scroll-bg-content {
  width: 90%;
  max-width: 1200px;
  margin: 0 auto;
}
.scroll-bg .scroll-bg-content p {}
.panbg-color00 {
  background-color: #fff;
  border-top: 10px solid #f4f0e5;
  border-bottom: 10px solid #f4f0e5;
}
.bg-color00 {
  background-color: #fff;
}
.bg-color01 {
  background-color: #f4f0e5;
}
.bg-color02 {
  background-color: #f9f7f1;
}
.bg-color03 {
  background-color: #dacf97;
}
.bg-color04 {
  background-color: #c5dce4;
}
.bg-color05 {
  background-color: #e3ecf5;
}
.bg-color06 {
  background-color: #cfdfef;
}
.bg-color07 {
  background-color: #1f58a0;
}
.bg-color08 {
  background-color: #339ACE;
}
.bg-color09 {
  background-color: #F1B6CC;
}
.bg-color10 {
  background-color: #bedcec;
}
.bg-color11 {
  background-color: #fcf1f5;
}
.bg-color12 {
  background-color: #fefcfd;
}
.w1000 {
  position: relative;
}
.search-bg {
  padding: 0em 0;
}
.search-bg .search-bg-content {
  width: 90%;
  max-width: 1200px;
  margin: 0 auto;
}
.search_bg-color00 {
  background-color: #003e6b;
}
.abs_comp_list {
  width: 90%;
  margin-right: auto;
  margin-left: auto;
  margin-top: 20px;
}
.abs_comp_list li {
  width: 100%;
  overflow: hidden;
  position: relative;
  zoom: 1;
  padding-bottom: 2px;
  padding-top: 2px;
  border-bottom: 1px solid #ccc;
}
.abs_comp_list li dt {
  float: left;
  width: 30%;
  text-align: left;
  padding-top: 10px;
  padding-bottom: 10px;
  color: #009e3b;
}
.abs_comp_list li dd {
  float: left;
  text-align: left;
  width: 70%;
  padding-top: 10px;
  padding-bottom: 10px;
}
#map_canvas {
  width: 100%;
  height: 500px;
  margin-top: 30px;
}
#map_canvas iframe {
  width: 100% !important;
  height: 500px !important;
}
.title_txt {
  font-weight: bold;
  font-size: 2.5rem; /* 18px */
  line-height: 1.5;
}
.area_contents {}
.area_title {
  float: left;
  width: 40%;
}
.area_contents_in {
  float: left;
  width: 60%;
}
.event_news {
  margin-top: 20px;
  margin-bottom: 20px;
}
.event_news_img {}
.event_news_txt {
  margin-bottom: 20px;
}
.event_news_wrap {
  margin-top: 2em;
  padding-bottom: 20px;
  position: relative;
  overflow: hidden;
  zoom: 1;
}
.event_news_contents ul {}
.event_news_contents li {
  border-top: 2px solid #3491c2;
  padding: 15px 5px;
  text-align: left;
  position: relative;
  overflow: hidden;
  zoom: 1;
}
.event_news_day {
  font-size: 1.3rem; /* 13px */
  line-height: 2.0;
  margin-right: 25px;
  float: left;
}
.event_news_title {
  float: left;
}
.event3 {
  margin-top: 20px;
}
.event3_img {}
.area {
  margin-top: 20px;
}
.area_img {}
.area_txt {
  padding-left: 20px;
  padding-right: 20px;
}
.spot {
  display: flex;
  justify-content: space-around;
  align-items: center;
}
.spot_title {
  width: 40%;
  padding-right: 10px;
}
.spot_contents {
  width: 60%;
  text-align: left;
}
.spot_list {}
.spot_list_in {}
.spot_search ul {
  width: 100%;
}
.spot_search li {
  width: 100%;
  border-bottom: 1px solid #fff;
  padding-top: 10px;
  padding-bottom: 10px;
}
.channel {
  position: relative;
}
.channel p { /*aタグを画像の真ん中に*/
  position: absolute;
  top: 55%;
  left: 50%;
  -ms-transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  /*以下装飾*/
  margin: 0; /*余計な隙間を除く*/
  color: white; /*文字色*/
  width: 90%;
}
.channel a { /*aタグを画像の真ん中に*/
  position: absolute;
  top: 80%;
  left: 50%;
  -ms-transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  /*以下装飾*/
  margin: 0; /*余計な隙間を除く*/
  padding: 5px 15px 5px 15px; /*文字と線の間の余白*/
  color: white; /*文字色*/
  text-decoration: none; /*下線を表示させない*/
  background: #268fa2;
  width: 70%;
}
.channel a:hover { /*カーソルを当てたとき*/
  background: #fff;
  color: #268fa2;
}
.channel img {
  width: 100%;
}
.channel_wrap {}
.channel_wrap_img {}
.photogallary {}
.photogallary_img {}
.photogallary_txt {
  margin-top: 10px;
}
.bn_wrap {}
.bn_wrap_in {}
.bn_contents {
  display: flex;
  justify-content: space-around;
  align-items: flex-start;
}
.bn_contents_in {
  width: 50%;
  padding: 5px;
  text-align: left;
}
.bn_contents_title {
  font-size: 2.0rem; /* 18px */
  line-height: 1.8;
  font-weight: bold;
  text-align: left;
}
.bn ul {
  width: 100%;
}
.bn li {
  width: 100%;
  padding-bottom: 10px;
}
.bn_contents_txt {
  display: inline-block;
  color: #fff;
  background-color: #2c83a7;
  padding: 5px;
  font-size: 1.2rem; /* 18px */
  line-height: 1.2;
  border-radius: 10px; /* CSS3草案 */
  -webkit-border-radius: 10px; /* Safari,Google Chrome用 */
  -moz-border-radius: 10px; /* Firefox用 */
}
.title-border {
  display: flex;
  align-items: center;
  font-size: 2.5rem; /* 18px */
  margin-bottom: 10px;
  margin-top: 10px;
}
.title-border:after {
  border-top: 1px solid #0c68aa;
  content: "";
  flex-grow: 1;
}
.title-border:after {
  margin-left: 2rem;
}
.link {
  display: flex;
  flex-wrap: wrap;
  list-style: none;
  margin: 0 -1% 0px;
  padding: 0;
}
.link li {
  flex: 0 1 98%;
  margin: 0 1% 10px;
  padding: 0;
}
.link a {
  text-decoration: none;
}
.link5-2 li {
  flex: 0 1 45.1%;
}
.link2 {
  display: flex;
  flex-wrap: wrap;
  list-style: none;
  margin: 0 -1% 0px;
  padding: 0;
}
.link2 li {
  flex: 0 1 98%;
  margin: 0 1% 10px;
  padding: 0;
}
.link2 a {
  text-decoration: none;
}
.link7-3 li {
  flex: 0 1 31.1%;
}
.link7-3 li img {
  width: 100%;
}
.footer {
  display: flex;
  justify-content: space-around;
  align-items: center;
  margin-bottom: 10px;
}
.footer_logo {
  width: 20%;
  text-align: left;
}
.footer_txt {
  width: 80%;
  text-align: left;
  padding-left: 10px;
  line-height: 1.5;
  font-size: 1.2rem; /* 12px */
}
.f_btn {
  padding-top: 10px;
  overflow: hidden;
  position: relative;
  zoom: 1;
}
/*全体*/
.hidden_box {
  margin: 1.5em 0 0px;
  padding: 0;
}
/*ボタン装飾*/
.hidden_box label {
  padding: 15px;
  background: #efefef;
  border-radius: 5px;
  cursor: pointer;
  transition: .5s;
}
/*アイコンを表示*/
.hidden_box label:before {
  display: inline-block;
  content: '\f078';
  font-family: 'FontAwesome';
  padding-right: 5px;
  transition: 0.2s;
}
/*ボタンホバー時*/
.hidden_box label:hover {
  background: #055a92;
  color: #fff;
}
/*アイコンを切り替え*/
.hidden_box input:checked ~ label:before {
  content: '\f00d';
  -ms-transform: rotate(360deg);
  -webkit-transform: rotate(360deg);
  transform: rotate(360deg);
  color: #668ad8;
}
/*チェックは見えなくする*/
.hidden_box input {
  display: none;
}
/*中身を非表示にしておく*/
.hidden_box .hidden_show {
  height: 0;
  padding: 0;
  overflow: hidden;
  opacity: 0;
  transition: 0.8s;
}
/*クリックで中身表示*/
.hidden_box input:checked ~ .hidden_show {
  padding: 20px 0 10px;
  height: auto;
  opacity: 1;
}
.play {
  display: flex;
  flex-wrap: wrap;
  list-style: none;
  margin: 10px -1% 30px;
  padding: 0;
}
.play li {
  flex: 0 1 98%;
  margin: 0 1% 10px;
  padding: 0;
}
.play a {
  text-decoration: none;
}
.play2-1 li {
  flex: 0 1 90%;
  margin-left: auto;
  margin-right: auto;
}
.spot_page {
  display: flex;
  justify-content: space-around;
  align-items: center;
}
.spot_page_title {
  width: 50%;
  padding-right: 10px;
}
.spot_page_contents {
  width: 50%;
  text-align: left;
}
.article {
  display: flex;
  flex-wrap: wrap;
  list-style: none;
  margin: 10px -1% 10px;
  padding: 0;
}
.article li {
  flex: 0 1 98%;
  margin: 0 1% 20px;
  padding: 0;
}
.article a {
  text-decoration: none;
}
.article4-2 li {
  flex: 0 1 48%;
  text-align: left;
}
.article_title {
  font-weight: bold;
font-size: 1.6rem;
line-height: 1.5;
  padding-top: 10px;
  padding-bottom: 5px;
}
.article_title2 {
  font-weight: bold;
  font-size: 1.8rem;
line-height: 1.5;
  padding-top: 10px;
  padding-bottom: 5px;
}
.article_in h3 {
  font-weight: bold;
  font-size: 2.0rem; /* 20px */
  line-height: 1.5;
  padding-top: 10px;
  padding-bottom: 5px;
}
.article_tag {
  color: #3593c3;
  line-height: 1.3;
  padding-bottom: 5px;
  font-size: 1.6rem; /* 16px */
}
.article_tag a {
  color: #3593c3;
}
.article_day {
  color: #595757;
  font-size: 1.5rem; /* 15px */
}
.article_in {
  background-color: #fff;
  padding: 1em;
}
.f_contents {}
.f_contents_in1 {
  padding: 5px;
  text-align: left;
}
.f_contents_in2 {
  padding: 5px;
  text-align: left;
}
.f_contents_in3 {
  padding: 0px 5px 5px 5px;
  text-align: left;
}
.f_contents_in4 {
  padding: 5px;
  text-align: left;
}
.f_contents_ina {
  padding: 5px;
  text-align: left;
}
.f_contents_inb {
  padding: 5px;
  text-align: left;
}
.f_contents_inc {
  padding: 0px 5px 5px 5px;
  text-align: left;
}
.f_contents_ind {
  padding: 5px;
  text-align: left;
}
.f_contents_ine {
  padding: 5px;
  text-align: left;
}
.f_contents_inf {
  padding: 5px;
  text-align: left;
}
.sitemap_ttl {
  font-weight: bold;
  margin: 0 auto 0.5em;
  font-size: 1.8rem;
  color: #3F51B5;
}
.sitemap_ttl a {
  color: #3F51B5;
}
.sitemap_ttl a:visited {
  color: #3F51B5;
  text-decoration: none;
}
.sitemap_ttl a:hover {
  color: #3F51B5;
  text-decoration: underline;
}
.sitemap ul {
  padding: 0.5em;
  list-style-type: none;
}
.sitemap li {
  position: relative;
  padding: 0em 0.3em 0.3em 1.3em;
  line-height: 1.5;
}
ul.sitemap li:before {
  position: absolute;
  content: '';
  top: 0.5em;
  left: 0.2em;
  height: 0;
  width: 0;
  border-style: solid;
  border-width: 6px 0 6px 9px;
  border-color: transparent transparent transparent #3F51B5;
}
.sitemap li.no {
  padding: 0em 0.3em 0.3em 1.0em !important;
}
.sitemap li.no:before {
  border-style: none;
}
.sitemap_in {
  padding: 0em 0 0 !important;
  list-style-type: none;
}
.sitemap_in li {
  position: relative;
  padding: 0em 0.3em 0.3em 1.3em;
  line-height: 1.5;
}
.sitemap_in li:before {
  position: absolute;
  content: '';
  top: 0.5em;
  left: 0.2em;
  height: 0;
  width: 0;
  border-style: solid;
  border-width: 6px 0 6px 9px;
  border-color: transparent transparent transparent #3F51B5;
}
.gennes_txt {
  font-size: 1.9rem; /* 12px */
  line-height: 1.5;
  text-align: left;
  padding-bottom: 20px;
  color: #3491c2;
}
.gennes_member {
  display: flex;
  flex-wrap: wrap;
  list-style: none;
  margin: 0 -1% 0px;
  padding: 0;
  padding-bottom: 20px;
  padding-top: 10px;
}
.gennes_member li {
  flex: 0 1 98%;
  margin: 0 1% 10px;
  padding: 0;
}
.gennes_member a {
  text-decoration: none;
}
.gennes_member3-2 li {
  flex: 0 1 96%;
  background-color: #f4f2ec;
}
.member {}
.member_img {
  width: 50%;
  float: left;
}
.member_txt {
  width: 50%;
  float: left;
  background-color: #f4f2ec;
}
.member_txt_in {
  text-align: left;
  padding: 10px;
}
.member__1 {
  padding-top: 10px;
  font-family: -apple-system, "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体";
  font-weight: bold;
  font-size: 1.4rem; /* 16px */
}
.member__2 {
  padding-top: 10px;
  font-family: -apple-system, "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体";
  font-weight: bold;
  font-size: 1.4rem; /* 16px */
}
.member__3 {
  padding-top: 10px;
  font-family: -apple-system, "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体";
  font-weight: bold;
  font-size: 1.4rem; /* 16px */
}
.member__4 {
  padding-top: 10px;
  font-family: -apple-system, "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体";
  font-weight: bold;
  font-size: 1.4rem; /* 16px */
}
.gennes_ambassador_ttl {
  color: #3491c2;
  margin: 3em auto 1em;
  font-weight: bold;
  font-size: 1.9rem;
  border-bottom: 1px solid #3491c2;
  padding: 0 0 5px;
}
.gennes_ambassador img {
  width: 100%;
  height: auto;
}
.gennes_ambassador {
  display: flex;
  flex-wrap: wrap;
  list-style: none;
  margin: 0em auto 1em;
  justify-content: space-between;
}
.gennes_ambassador li {
  width: 48%;
}
.gennes_ambassador_btn_ttl {
  font-weight: bold;
  margin: 2em auto 0;
}
.blog_body {
  font-size: 1.8rem;
}
.blog_body a {
  font-size: 1.8rem;
  text-decoration: underline;
}
.blog_body img {
  width: 100%;
  height: auto;
}
.blog_body iframe {
  width: 454px;
  height: 302px;
}
.blog_body h2 {
  font-size: 2.8rem !important;
}
.blog_body h3 {
  font-size: 2.4rem !important;
}
.blog_body h4 {
  font-size: 2.0rem !important;
}
.blog_body h5 {
  font-size: 1.8rem !important;
}
.coupon2020ss {
  background-color: #fff;
  box-shadow: 2px 2px 4px gray;
  padding: 1em 0em;
  margin-bottom: 30px;
}
.coupon2020ss_title {
  font-weight: bold;
  color: #0E7CBE;
  font-size: 2.2rem;
  padding: 0px 20px;
}
.coupon2020ss_title2 {
  font-weight: bold;
  color: #0E7CBE;
  padding: 0px 20px 20px;
}
.coupon2020ss_in {
  padding: 3em 2em 1em;
}
.coupon2020ss_price {
  background-color: #0E7CBE;
  padding: 3em 0em 1em;
  position: relative;
  color: #fff;
  margin-bottom: 20px;
}
.coupon2020ss_price_ap {
  position: absolute;
  top: 0px;
  left: 50%;
  margin-right: -50%;
  transform: translate(-50%, -50%);
}
.coupon2020ss_price_ap img {
  width: 60%;
  height: auto;
}
.coupon2020ss_btxt {
  font-size: 2.5rem;
}
.coupon2020ss_priceb {
  color: #604D3F;
  font-size: 1.8rem;
}
.coupon_table {
  display: flex;
  justify-content: space-between;
  align-items: center;
  width: 100%;
  margin: 10px auto 10px;
  color: #604D3F;
  line-height: 1.3;
}
.coupon_table_l {
  width: 25%;
  padding: 5px;
  text-align: center;
  border: 1px solid #604D3F;
  box-sizing: border-box;
}
.coupon_table_r {
  width: 75%;
  padding: 0 0 0 10px;
  text-align: left;
}
.campaign_txt01 {
  background-color: #003B74;
  color: #fff;
  font-size: 2.0rem;
  margin-top: 20px;
}
.campaign_title {}
.campaign_title img {
  width: 60%;
  height: auto;
}
.campaign_title2 {
  margin: 2em auto 1em;
}
.campaign_title2 img {
  width: 70%;
  height: auto;
}
.campaign_table {
  background-color: #fff;
  margin: 20px auto;
  padding: 20px 20px 10px;
}
.campaign_table3 {
  display: flex;
  flex-wrap: wrap;
  list-style: none;
  margin: 0px auto 10px;
  align-items: center;
  border-bottom: 1px solid #7D4E22;
}
.campaign_table3 li {
  flex: 0 1 30%;
  margin: 0 1% 10px;
  font-size: 2.3rem;
  font-weight: bold;
  text-align: left;
  line-height: 1.2;
}
.campaign_table3 img {
  width: 100%;
  height: auto;
}
.campaign_table3 li:first-child {
  color: #003B74;
}
.search_wrapp {
  margin-top: 50px;
  background-color: #003E6B;
}
.search_wrap_ap {
  position: absolute;
  top: -6px;
  left: 0px;
  width: 20%;
  z-index: 3;
}
.search_wrap_ap img {
  width: 100%;
  height: auto;
}
.search_wrap {
  display: flex;
  flex-wrap: wrap;
  list-style: none;
  width: 100%;
  max-width: 1200px;
  margin: 0 auto;
  justify-content: flex-end;
  align-items: flex-start;
  position: relative;
  background-color: #fff;
}
.search_wrap li {
  flex: 0 1 40%;
  justify-content: flex-end;
  margin: 0px;
  padding: 0;
  position: relative;
  border: #fff 1px solid;
}
.search_wrap img {
  width: 100%;
  height: auto;
}
.search_area {
  text-align: left;
  margin-bottom: 50px;
  width: 100%;
}
.search_area_title {
  background-color: #2CA5DF;
  color: #fff;
  font-weight: bold;
  font-size: 2.5rem;
  padding: 5px 10px;
}
.search_list {
  margin-top: 10px;
}
.search_list li {
  border-bottom: 1px solid #A28977;
  padding: 15px 0px;
  line-height: 1.4;
  word-break: break-all;
}
.search_list_title {
  color: #796A56;
  font-size: 2.0rem;
}
.search_list a {
  color: #004577;
}
.search_list a:hover {
  color: #2CA5DF;
}
.about_title {
  text-align: left;
  padding: 20px 0px 5px;
  margin-bottom: 20px;
  font-size: 1.8rem;
  border-bottom: 1px solid #000;
  font-weight: bold;
}
.about_bnr {
  padding: 1em 0em;
  text-align: left;
}
.about_txt {
  text-align: left;
  font-weight: bold;
  font-size: 1.8rem;
  line-height: 3;
}
.about_txt2 {
  background-color: #1F58A0;
  color: #fff;
  padding: 5px 10px;
}
.top_bn {}
.top_bn li {
  width: 100%;
  margin: auto;
  margin-bottom: 10px;
}
.top_bn img {
  width: 100%;
  height: auto;
}
.pamphlet {
  padding: 3em;
  background-color: #F6F4EF;
}
.pamphlet_bn {}
.pamphlet_bn li {
  width: 100%;
  margin: auto;
  margin-bottom: 10px;
}
.pamphlet_bn img {
  width: 100%;
  height: auto;
}
.course_type {
  margin: 30px auto
}
.course_type img {
  width: 100%;
  height: auto;
  margin-bottom: 30px;
}
.course_contents {}
.course_contents li {
  width: 100%;
  margin: auto;
  margin-bottom: 10px;
}
.course_contents img {
  width: 100%;
  height: auto;
}
.main_course_wrap {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin: 0px auto;
  border-bottom: 1px solid #efefef;
  padding: 1em 0em;
  ;
}
.main_course_wrap_txt {
  width: 60%;
  text-align: left;
}
.main_course_wrap_img {
  width: 40%;
}
.main_course_wrap_img img {
  width: 100%;
  height: auto;
}
.course_wrap_txtb {
  font-weight: bold;
  font-size: 2.0rem;
}
.maru01 {
  padding: 0.3em 0.4em 0.3em 0.6em;
  border-radius: 50%;
  text-align: center;
  background-color: #000;
  color: #fff;
  border: 2px solid #ea4226;
  font-size: 1.8rem;
  margin-right: 5px;
}
.maru02 {
  padding: 0.3em 0.4em 0.3em 0.6em;
  border-radius: 50%;
  text-align: center;
  background-color: #000;
  color: #fff;
  border: 2px solid #ee621b;
  font-size: 1.8rem;
  margin-right: 5px;
}
.maru03 {
  padding: 0.3em 0.4em 0.3em 0.6em;
  border-radius: 50%;
  text-align: center;
  background-color: #000;
  color: #fff;
  border: 2px solid #fdca00;
  font-size: 1.8rem;
  margin-right: 5px;
}
.maru04 {
  padding: 0.3em 0.4em 0.3em 0.6em;
  border-radius: 50%;
  text-align: center;
  background-color: #000;
  color: #fff;
  border: 2px solid #52a73a;
  font-size: 1.8rem;
  margin-right: 5px;
}
.maru05 {
  padding: 0.3em 0.4em 0.3em 0.6em;
  border-radius: 50%;
  text-align: center;
  background-color: #000;
  color: #fff;
  border: 2px solid #3b98cb;
  font-size: 1.8rem;
  margin-right: 5px;
}
.maru06 {
  padding: 0.3em 0.4em 0.3em 0.6em;
  border-radius: 50%;
  text-align: center;
  background-color: #000;
  color: #fff;
  border: 2px solid #2f6cd1;
  font-size: 1.8rem;
  margin-right: 5px;
}
.maru07 {
  padding: 0.3em 0.4em 0.3em 0.6em;
  border-radius: 50%;
  text-align: center;
  background-color: #000;
  color: #fff;
  border: 2px solid #573f7e;
  font-size: 1.8rem;
  margin-right: 5px;
}
.maru08 {
  padding: 0.3em 0.4em 0.3em 0.6em;
  border-radius: 50%;
  text-align: center;
  background-color: #000;
  color: #fff;
  border: 2px solid #e51b5d;
  font-size: 1.8rem;
  margin-right: 5px;
}
.maru09 {
  padding: 0.3em 0.4em 0.3em 0.6em;
  border-radius: 50%;
  text-align: center;
  background-color: #000;
  color: #fff;
  border: 2px solid #cb7189;
  font-size: 1.8rem;
  margin-right: 5px;
}
.maru10 {
  padding: 0.3em 0.2em 0.3em 0.3em;
  border-radius: 50%;
  text-align: center;
  background-color: #000;
  color: #fff;
  border: 2px solid #af7340;
  font-size: 1.8rem;
  margin-right: 5px;
}
.maru11 {
  padding: 0.3em 0.2em 0.3em 0.3em;
  border-radius: 50%;
  text-align: center;
  background-color: #000;
  color: #fff;
  border: 2px solid #ae7143;
  font-size: 1.8rem;
  margin-right: 5px;
}
.maru12 {
  padding: 0.3em 0.2em 0.3em 0.3em;
  border-radius: 50%;
  text-align: center;
  background-color: #000;
  color: #fff;
  border: 2px solid #9994aa;
  font-size: 1.8rem;
  margin-right: 5px;
}
.maru13 {
  padding: 0.3em 0.2em 0.3em 0.3em;
  border-radius: 50%;
  text-align: center;
  background-color: #000;
  color: #fff;
  border: 2px solid #655cb5;
  font-size: 1.8rem;
  margin-right: 5px;
}
.maru14 {
  padding: 0.3em 0.2em 0.3em 0.3em;
  border-radius: 50%;
  text-align: center;
  background-color: #000;
  color: #fff;
  border: 2px solid #57bcc6;
  font-size: 1.8rem;
  margin-right: 5px;
}
.maru15 {
  padding: 0.3em 0.2em 0.3em 0.3em;
  border-radius: 50%;
  text-align: center;
  background-color: #000;
  color: #fff;
  border: 2px solid #6da444;
  font-size: 1.8rem;
  margin-right: 5px;
}
.maru16 {
  padding: 0.3em 0.2em 0.3em 0.3em;
  border-radius: 50%;
  text-align: center;
  background-color: #000;
  color: #fff;
  border: 2px solid #b9b234;
  font-size: 1.8rem;
  margin-right: 5px;
}
.maru17 {
  padding: 0.3em 0.2em 0.3em 0.3em;
  border-radius: 50%;
  text-align: center;
  background-color: #000;
  color: #fff;
  border: 2px solid #bbb133;
  font-size: 1.8rem;
  margin-right: 5px;
}
.maru18 {
  padding: 0.3em 0.2em 0.3em 0.3em;
  border-radius: 50%;
  text-align: center;
  background-color: #000;
  color: #fff;
  border: 2px solid #b8632c;
  font-size: 1.8rem;
  margin-right: 5px;
}
.maru19 {
  padding: 0.3em 0.2em 0.3em 0.3em;
  border-radius: 50%;
  text-align: center;
  background-color: #000;
  color: #fff;
  border: 2px solid #b53b2c;
  font-size: 1.8rem;
  margin-right: 5px;
}
.maru20 {
  padding: 0.3em 0.2em 0.3em 0.3em;
  border-radius: 50%;
  text-align: center;
  background-color: #000;
  color: #fff;
  border: 2px solid #711616;
  font-size: 1.8rem;
  margin-right: 5px;
}
.course_details {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  padding: 1em 0em 0em;
  ;
  font-size: 1.3rem;
}
.course_details_img {
  width: 20%;
  text-align: center;
  border-radius: 30px;
  color: #fff;
  margin-right: 3px;
}
.course_details_txt {
  width: 70%;
  text-align: left;
}
.course_color01 {
  color: #ea4226;
}
.course_color01b {
  background-color: #ea4226;
}
.course_color02 {
  color: #ee621b;
}
.course_color02b {
  background-color: #ee621b;
}
.course_color03 {
  color: #fdca00;
}
.course_color03b {
  background-color: #fdca00;
}
.course_color04 {
  color: #52a73a;
}
.course_color04b {
  background-color: #52a73a;
}
.course_color05 {
  color: #3b98cb;
}
.course_color05b {
  background-color: #3b98cb;
}
.course_color06 {
  color: #2f6cd1;
}
.course_color06b {
  background-color: #2f6cd1;
}
.course_color07 {
  color: #573f7e;
}
.course_color07b {
  background-color: #573f7e;
}
.course_color08 {
  color: #e51b5d;
}
.course_color08b {
  background-color: #e51b5d;
}
.course_color09 {
  color: #cb7189;
}
.course_color09b {
  background-color: #cb7189;
}
.course_color10 {
  color: #af7340;
}
.course_color10b {
  background-color: #af7340;
}
.course_color11 {
  color: #ae7143;
}
.course_color11b {
  background-color: #ae7143;
}
.course_color12 {
  color: #9994aa;
}
.course_color12b {
  background-color: #9994aa;
}
.course_color13 {
  color: #655cb5;
}
.course_color13b {
  background-color: #655cb5;
}
.course_color14 {
  color: #57bcc6;
}
.course_color14b {
  background-color: #57bcc6;
}
.course_color15 {
  color: #6da444;
}
.course_color15b {
  background-color: #6da444;
}
.course_color16 {
  color: #b9b234;
}
.course_color16b {
  background-color: #b9b234;
}
.course_color17 {
  color: #bbb133;
}
.course_color17b {
  background-color: #bbb133;
}
.course_color18 {
  color: #b8632c;
}
.course_color18b {
  background-color: #b8632c;
}
.course_color19 {
  color: #b53b2c;
}
.course_color19b {
  background-color: #b53b2c;
}
.course_color20 {
  color: #711616;
}
.course_color20b {
  background-color: #711616;
}
.visit_hamanako_ap {
  position: absolute;
  right: 0em;
  top: -1em;
  width: 35%;
}
.visit_hamanako_ap img {
  width: 100%;
  height: auto;
}
.visit_hamanako_thema {
  text-align: left;
  font-weight: bold;
  padding: 2em 0 2em;
  line-height: 2.5;
  font-size: 1.8rem;
}
.visit_hamanako_thema img {
  width: 6%;
  height: auto;
  padding-bottom: 0.6em;
}
.visit_hamanako_title {
  color: #fff;
  background-color: #437b98;
  font-size: 2.0rem;
  padding: 0.5em 1em;
}
.visit_hamanako_title2 {
  color: #fff;
  background-color: #cf69aa;
  font-size: 2.0rem;
  padding: 0.5em 1em;
}
.visit_hamanako_oubo {}
.visit_hamanako_oubol {
  margin-bottom: 1em;
}
.visit_hamanako_oubol img {
  width: 80%;
  height: auto;
  margin: auto;
}
.visit_hamanako_oubor {
  line-height: 2;
}
.visit_hamanako_oubor img {
  width: 15%;
  height: auto;
}
.cruise_top_txt {
  font-size: 2.2rem;
  text-align: left;
  font-family: serif;
}
.cruise_table {
  margin: 2em auto 0;
}
.cruise_table li {
  margin-bottom: 1.5em;
}
.cruise_table img {
  width: 100%;
}
.cruise_wrap {
  border: 2px solid #036EB6;
  padding: 1em;
  box-sizing: border-box;
  font-size: 2.0rem;
}
.cruise_table_txt01 {
  background: #036EB6;
  color: #fff;
  font-weight: bold;
  font-size: 2.4rem;
  padding: 0.5em;
  text-align: left;
}
.cruise_overview {
  display: flex;
  justify-content: space-around;
  margin: 0.5em auto;
}
.cruise_overviewl {
  width: 20%;
  background: #55C2E8;
  color: #fff;
}
.cruise_overviewr {
  width: 75%;
  text-align: left;
}
.gennesblog_title {
  width: 70%;
  margin: 0 auto 0em;
}
.gennesblog_title img {
  width: 100%;
}
.gennesblog_subtitle {
  color: #a28977;
  margin-bottom: 1em;
}
.gennesblog_list {
  display: flex;
  flex-wrap: wrap;
  list-style: none;
  justify-content: flex-start;
}
.gennesblog_list li {
  flex: 0 1 45%;
  margin: 0 1% 1em;
  text-align: left;
  font-weight: bold;
  line-height: 1.5;
}
.gennesblog_list li img {
  width: 100%;
  margin-bottom: 0.5em;
  height: auto;
}
.gennesblog_cate {
  margin: 0.5em auto 0;
  font-weight: normal;
}
.gennesblog_cate a:link {
  color: #2ca5df !important;
}
.gennesblog_cate a:hover {
  text-decoration: underline !important;
}
.gennesblog_cate a:visited {
  color: #2ca5df !important;
}
.photogallery_title {
  width: 70%;
  margin: 2em auto 0em;
}
.photogallery_title img {
  width: 100%;
}
.photogallery_cate_title {
  background: #82bdd0;
  color: #fff;
  font-weight: bold;
  padding: 0.5em 0;
  margin: 1em auto 1em;
  letter-spacing: 2px;
}
.photogallery_cate_list {
  display: flex;
  flex-wrap: wrap;
  list-style: none;
  justify-content: flex-start;
  margin: 1em auto 0;
}
.photogallery_cate_list li {
  flex: 0 1 45%;
  margin: 0 2.5% 1em;
  font-size: 1.3rem;
}
.photogallery_cate_btn {
  display: inline-block;
  padding: 0.5em 0;
  text-decoration: none;
  color: #fff;
  transition: .4s;
  background: #3593c3;
  text-align: center;
  width: 100%;
  letter-spacing: 0.1em;
  border: 1px solid #3593c3;
}
.photogallery_cate_btn a:visited {
  color: #fff !important;
  text-decoration: none;
}
.photogallery_cate_btn:link {
  color: #fff !important;
}
.photogallery_cate_btn:hover {
  opacity: 0.8;
  background: #fff;
  color: #3593c3 !important;
}
.photogallery_new_title {
  background: #97b864;
  color: #fff;
  font-weight: bold;
  padding: 0.5em 0;
  margin: 3em auto 1em;
  letter-spacing: 2px;
}
.photogallery_kiyaku_title {
  background: #b3a137;
  color: #fff;
  font-weight: bold;
  padding: 0.5em 0;
  margin: 3em auto 1em;
  letter-spacing: 2px;
}
.photogallery_list {
  display: flex;
  flex-wrap: wrap;
  list-style: none;
  justify-content: space-between;
}
.photogallery_list li {
  flex: 0 1 45%;
  margin: 0 1% 1em;
  text-align: left;
  font-weight: bold;
  line-height: 1.5;
}
.photogallery_list li img {
  width: 100%;
  margin-bottom: 0.5em;
}
.photogallery_contents_title {
  text-align: left;
  font-weight: bold;
  font-size: 1.8rem;
  padding-bottom: 0.5em;
  margin-bottom: 1em;
  border-bottom: 2px solid #82bdd0;
}
.photogallery_contents {
  margin-bottom: 2em;
}
.photogallery_contents img {
  width: 100%;
}
/** チェックOFFなら非表示 */
.photogallery_message {
  display: none;
}
/** チェックONなら表示 */
input:checked ~ .photogallery_message {
  display: block;
  animation: fadein 1.5s;
}
@keyframes fadein {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
/** チェックボックス横にラベル表示 */
[type="checkbox"].toggle {
  position: relative;
  width: 250px;
  margin-top: 1em;
  margin-right: auto;
  margin-bottom: 0;
  margin-left: auto;
}
[type="checkbox"].toggle:after {
  content: " 利用規約に同意する";
  position: absolute;
  width: 250px;
  height: 40px;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  -moz-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  font-size: 1.8rem;
  color: #666666;
  line-height: 2.3;
}
.photogallery_kiyaku_btn {
  display: inline-block;
  padding: 0.5em 2em;
  text-decoration: none;
  color: #fff;
  transition: .4s;
  background: #61a532;
  text-align: center;
  letter-spacing: 0.1em;
  border: 2px solid #b1d478;
  border-radius: 30px;
  margin: 1em auto 0;
}
.photogallery_kiyaku_btn:link {
  color: #fff !important;
}
.photogallery_kiyaku_btn:hover {
  opacity: 0.8;
  background: #b1d478;
}
.article_wrap {
  border: #ccc 1px solid;
  padding: 1em;
  margin: 1em auto;
  background: #fbfbfb;
}
.article_contents_subtitle {
  color: #aaaaaa;
  font-size: 1.3rem;
}
.article_contents_title {
  font-size: 1.7rem;
  font-weight: bold;
}
.article_contents_list {
  border-bottom: 1px solid #ccc;
  margin: 1em auto 0;
  padding: 0 0 0.5em 0;
}
.article_contents_list li {
  padding: 0.2em 0;
}
.article_contents_list li span {
  color: #fff;
  background: #aaaaaa;
  padding: 0.5em 1em;
  font-size: 1.3rem;
}
.article_shop {}
.article_shop_img {
  margin: 0 auto 1em;
}
.article_shop_img img {
  width: 100% !important;
}
.article_shop_txt {}
.article_shop_overview {
  line-height: 2;
  margin: 0.5em auto 0;
}
.article_shop_overview a {
  text-decoration: underline;
}
/*==================================================
スライダーのためのcss
===================================*/
.slider { /*横幅94%で左右に余白を持たせて中央寄せ*/
  width: 100%;
  margin: 0 auto;
  padding: 185px 0 0 0;
}
.slider img {
  width: 100vw; /*スライダー内の画像を60vwにしてレスポンシブ化*/
  height: auto;
}
.slider .slick-slide {
  transform: scale(0.9); /*左右の画像のサイズを80%に*/
  transition: all .5s; /*拡大や透過のアニメーションを0.5秒で行う*/
  opacity: 0.5; /*透過50%*/
}
.slider .slick-slide.slick-center {
  transform: scale(1); /*中央の画像のサイズだけ等倍に*/
  opacity: 1; /*透過なし*/
}
/*矢印の設定*/
/*戻る、次へ矢印の位置*/
.slick-prev, .slick-next {
  position: absolute; /*絶対配置にする*/
  top: 42%;
  cursor: pointer; /*マウスカーソルを指マークに*/
  outline: none; /*クリックをしたら出てくる枠線を消す*/
  border-top: 2px solid #666; /*矢印の色*/
  border-right: 2px solid #666; /*矢印の色*/
  height: 15px;
  width: 15px;
}
.slick-prev { /*戻る矢印の位置と形状*/
  left: -1.5%;
  transform: rotate(-135deg);
}
.slick-next { /*次へ矢印の位置と形状*/
  right: -1.5%;
  transform: rotate(45deg);
}
/*ドットナビゲーションの設定*/
.slick-dots {
  text-align: center;
  margin: 20px 0 0 0;
}
.slick-dots li {
  display: inline-block;
  margin: 0 5px;
}
.slick-dots button {
  color: transparent;
  outline: none;
  width: 8px; /*ドットボタンのサイズ*/
  height: 8px; /*ドットボタンのサイズ*/
  display: block;
  border-radius: 50%;
  background: #ccc; /*ドットボタンの色*/
}
.slick-dots .slick-active button {
  background: #333; /*ドットボタンの現在地表示の色*/
}
.space {
  padding: 185px 0 0 0;
}
.emot_bn {
  margin: 2em auto 0;
}
.emot_bn img {
  width: 100%;
}
/* 塗り絵 */
.nurie_bg {
  padding: 120px 0 2em;
}
.nurie_ttl {
  width: 80%;
  margin: auto;
}
.nurie_ttl img {
  width: 100%;
}
.nurie_txt {
  width: 85%;
  max-width: 1000px;
  text-align: left;
  margin: 1.5em auto 0;
  font-size: 1.4rem;
}
.nurie_list_ttl {
  margin: 0 auto 2em;
  position: relative;
  text-align: center;
  font-weight: bold;
}
.nurie_list_ttl:before {
  position: absolute;
  top: calc(50% - 1px);
  left: 0;
  width: 100%;
  height: 1px;
  content: '';
  background: #000;
}
.nurie_list_ttl span {
  position: relative;
  padding: 0 1em;
  background: #fff;
}
.nurie_list {
  width: 80%;
  margin: auto;
  max-width: 1000px;
}
.nurie_list li {
  margin: 1em auto 0;
}
/*== .nurie_ボタン */
.nurie_btn {
  /*アニメーションの起点とするためrelativeを指定*/
  position: relative;
  overflow: hidden;
  /*ボタンの形状*/
  text-decoration: none;
  display: inline-block;
  border: 1px solid #055a92; /* ボーダーの色と太さ */
  padding: 15px 0px;
  text-align: center;
  outline: none;
  /*アニメーションの指定*/
  transition: ease .2s;
  width: 100%;
  border-radius: 10px;
}
/*ボタン内spanの形状*/
.nurie_btn span {
  position: relative;
  z-index: 3; /*z-indexの数値をあげて文字を背景よりも手前に表示*/
  color: #055a92;
}
.nurie_btn:hover span {
  color: #fff;
}
/*== 背景が流れる（左から右） */
.nurie_bgleft:before {
  content: '';
  /*絶対配置で位置を指定*/
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2;
  /*色や形状*/
  background: #055a92; /*背景色*/
  width: 100%;
  height: 100%;
  /*アニメーション*/
  transition: transform .6s cubic-bezier(0.8, 0, 0.2, 1) 0s;
  transform: scale(0, 1);
  transform-origin: right top;
  border-radius: 10px;
}
/*hoverした際の形状*/
.nurie_bgleft:hover:before {
  transform-origin: left top;
  transform: scale(1, 1);
}
/* 宿泊クーポン */
.shukuhaku_wrap01 {
  padding: 3em 0;
  background: url("/csw/shukuhaku/bg01.png"), url("/csw/shukuhaku/bg02.png"), url("/csw/shukuhaku/bg03.png");
  background-repeat: no-repeat, no-repeat, no-repeat;
  background-position: top -1em right 0, top 50% left 0, bottom 5% right 0;
  background-size: 50%, 20%, 20%;
}
.shukuhaku_wrap01 img {
  width: 90%;
  height: auto;
  max-width: 1000px;
  margin: 0.5em auto 1em;
}
.shukuhaku_top_ttl {
  font-family: uddigikyokasho-pro, sans-serif;
  font-weight: 400;
  font-style: bold;
  font-size: 2rem;
}
.shukuhaku_top_txt {
  width: 90%;
  max-width: 1000px;
  margin: auto;
  text-align: left;
}
.shukuhaku_balloon {
  font-family: uddigikyokasho-pro, sans-serif;
  font-weight: 400;
  font-style: bold;
  position: relative;
  display: inline-block;
  margin: 1.5em 0;
  padding: 7px 20px;
  min-width: 120px;
  max-width: 100%;
  color: #fff;
  font-size: 2.0rem;
  background: #c09d30;
  border-radius: 40px;
}
.shukuhaku_balloon:before {
  content: "";
  position: absolute;
  top: 100%;
  left: 50%;
  margin-left: -15px;
  border: 15px solid transparent;
  border-top: 15px solid #c09d30;
}
.shukuhaku_balloon p {
  margin: 0;
  padding: 0;
}
.shukuhaku_wrap02 {
  background-color: #c09d30;
}
.shukuhaku_wrap02b {
  padding: 3em 0;
  background: url("/csw/shukuhaku/bg05.png"), url("/csw/shukuhaku/bg04.png"), url("/csw/shukuhaku/bg06.png"), url("/csw/shukuhaku/bg07.png"), url("/csw/shukuhaku/bg08.png");
  background-repeat: no-repeat, no-repeat, no-repeat, no-repeat, no-repeat;
  background-position: top 0em right 0, top 30% left 0, top 50% right 0, bottom 30% left 0, bottom 10% right 0;
  background-size: 20%, 20%, 20%, 20%, 20%;
}
.shukuhaku_coupon {
  width: 95%;
  margin: 0 auto 1em;
  font-family: uddigikyokasho-pro, sans-serif;
  font-weight: 400;
  font-style: bold;
}
.shukuhaku_coupon li {
  padding: 0.8em 0;
  border-bottom: 1px solid #c09d30;
  display: flex;
  flex-wrap: wrap;
  list-style: none;
  margin: 0em auto 0em;
  justify-content: space-between;
}
.shukuhaku_coupon li div {
  width: 47%;
}
.shukuhaku_coupon li div span {
  color: #c09d30;
}
.shukuhaku_coupon li p {
  width: 2%;
  color: #c09d30;
}
.shukuhaku_wrap02_in {
  background: #fff;
  width: calc(90% - 2em);
  margin: auto;
  padding: 0 1em 2em;
}
.shukuhaku_day {
  font-family: uddigikyokasho-pro, sans-serif;
  font-weight: 400;
  font-style: bold;
  color: #c09d30;
  font-size: 2.2rem;
}
.shukuhaku_day2 {}
.shukuhaku_day2 span {
  color: #c09d30;
  font-family: uddigikyokasho-pro, sans-serif;
  font-weight: 400;
  font-style: bold;
  font-size: 1.8rem;
}
.shukuhaku_reserve_ttl {
  font-family: uddigikyokasho-pro, sans-serif;
  font-weight: 400;
  font-style: bold;
  background: #c09d30;
  color: #fff;
  padding: 0.3em 0;
  font-size: 2.0rem;
  letter-spacing: 1px;
  margin: 1em auto 0;
}
.shukuhaku_reserve {
  background: #eddd9d;
  margin: 0 auto 1em;
  padding: 1em;
  text-align: left;
  font-family: uddigikyokasho-pro, sans-serif;
  font-weight: 400;
  font-style: bold;
}
.shukuhaku_reserve li {
  line-height: 2;
}
.shukuhaku_reserve li a {
  text-decoration: underline;
}
.shukuhaku_reserve li span {
  font-size: 1.2rem;
  display: block;
  margin: 0 auto 1em;
  line-height: 1.6;
}
.shukuhaku_dorama {
  width: 90%;
  margin: 2em auto 0;
  position: relative;
}
.shukuhaku_dorama div {
  position: absolute;
  top: 50%;
  left: 50%;
  -ms-transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  margin: 0;
  padding: 0;
  width: 90%;
  /*文字の装飾は省略*/
}
.shukuhaku_dorama div p {
  text-align: left;
  margin: 1em auto 0;
}
.shukuhaku_dorama div span {
  width: 80%;
  display: inline-block;
  margin: 1em auto 0;
}
.shukuhaku_dorama img {
  width: 100%;
}
.top_course_list {
  margin: 0 auto 3em;
}
.top_course_list img {
  width: 100%;
  height: auto;
}
.top_course_list li {
  margin: 1em auto 0;
}
/* ------------------------------------ */
/* ▼PC用デザインとして付け足すデザイン */
/* ------------------------------------ */
@media all and (min-width: 768px) {
  body {
    font-size: 1.8rem; /* 18px */
    line-height: 1.8;
  }
  .w1000 {
    max-width: 1000px;
    margin: auto;
  }
  .br-sp {
    display: block;
  }
  .br-pc {
    display: none;
  }
  .sp_left {
    text-align: center;
  }
  .pdg20b {
    padding-bottom: 30px;
  }
  .coupon_pc {
    width: 800px;
    margin: auto;
  }
  .fc02_wrap {
    height: 660px;
    width: 100%;
    background-color: #F4F0E5;
    padding-bottom: 30px;
  }
  .fc02 {}
  .fc02_in {}
  .fc_reason {
    width: 1200px;
    overflow: hidden;
    position: relative;
    zoom: 1;
    margin-right: 0px;
    margin-left: 0px;
  }
  .fc_reason img {
    width: 1200px;
    height: 660px;
  }
  .btn2 {
    margin-top: 30px;
  }
  .abs_comp_list {
    width: 50%;
    margin-top: 50px;
    font-size: 1.8rem; /* 18px */
    line-height: 1.8;
  }
  .abs_comp_list li dt {
    width: 20%;
  }
  .abs_comp_list li dd {
    width: 80%;
  }
  #map_canvas {
    margin-top: 50px;
    height: 500px;
  }
  #header00 {
    height: 90px;
    padding-top: 7px;
  }
  #header00in {
    max-width: 1200px;
    height: 90px;
    margin-left: auto;
    margin-right: auto;
    position: relative;
    text-align: left;
  }
  .header00_ap {
    position: absolute;
    top: 10px;
    right: 120px;
    width: 600px;
    text-align: right;
  }
  .hbtn01 {
    font-size: 14px;
    text-align: left;
    /*background: linear-gradient(to bottom, #036eb7 0%, #036eb7 50%, #1c518f 50%, #1c518f 100%);*/
    margin: 0 20px 0 0;
  }
  .hbtn02 {
    font-size: 15px;
  }
  #pc_header {
    height: 100px;
    width: 100%;
    margin-right: auto;
    margin-left: auto;
    background-color: #ededed;
    padding: 100px 0 0;
    position: fixed;
    z-index: 998;
  }
  #header_in {
    max-width: 1200px;
    height: 100px;
    margin-left: auto;
    margin-right: auto;
    position: relative;
    text-align: left;
  }
  .gnavi02 {
    position: absolute;
    width: 500px;
    height: 80px;
    top: 20px;
    left: 0px;
    z-index: 99;
    font-size: 15px;
  }
  .gnavi01 {
    position: absolute;
    width: 711px;
    height: 100px;
    top: 0px;
    right: 0px;
    z-index: 99;
  }
  .menu {
    width: 711px;
    height: 100px;
    margin-left: auto;
    margin-right: auto;
  }
  .menu__item {
    display: inline-block;
    padding-left: 1px;
    padding-right: 1px;
    float: left;
    height: 100px;
    border-left: 1px solid #fff;
  }
  .menu__item00 {
    display: inline-block;
    padding-left: 1px;
    padding-right: 1px;
    float: left;
    height: 100px;
    border-left: 1px solid #fff;
    border-right: 1px solid #fff;
  }
  .menu2 {
    width: 500px;
    height: 20px;
    margin-left: auto;
    margin-right: auto;
    padding-top: 10px;
  }
  .menu__item2 {
    display: inline-block;
    padding-left: 20px;
    padding-right: 20px;
    float: left;
    height: 20px;
    border-left: 1px solid #221714;
    line-height: 20px;
  }
  .menu__item3 {
    display: inline-block;
    padding-left: 20px;
    padding-right: 20px;
    float: left;
    height: 20px;
    border-left: 1px solid #221714;
    border-right: 1px solid #221714;
    line-height: 20px;
  }
  #mainv {
    height: 660px;
    background: url('mainv.jpg');
    background-size: 1920px 660px;
    background-repeat: no-repeat;
    background-position: center top;
    position: relative;
  }
  #mainv2 {
    height: 541px;
    background: url('modelcourse_bg.jpg');
    background-size: 1920px 541px;
    background-repeat: no-repeat;
    background-position: center top;
    position: relative;
  }
  .mainv2_ap {
    position: absolute;
    top: 50px;
    right: 50px;
    width: 450px;
    height: 400px;
  }
  #mainv3 {
    height: 538px;
    background: url("hamanagennes2.jpg");
    background-size: 1920px 538px;
    background-repeat: no-repeat;
    background-position: center top;
    position: relative;
  }
  .mainv3_ap {
    position: absolute;
    top: 15px;
    right: 0px;
    width: 100%;
    height: 500px;
  }
  .pan-bg {
    padding: 0.5em 0;
  }
  .panbg-color00 {
    border-top: 30px solid #f4f0e5
  }
  .height_adjustment {
    height: 100px;
  }
  .scroll-bg {
    padding-top: 3em;
    padding-right: 0;
    padding-bottom: 4em;
    padding-left: 0;
  }
  .scroll-bg2 {
    padding: 1em 0;
  }
  .search-bg {
    padding: 0em 0;
  }
  .title_txt {
    font-size: 3.5rem; /* 35px */
  }
  .event_news {
    display: flex;
    justify-content: space-around;
    align-items: flex-start;
    margin-top: 50px;
    margin-bottom: 50px;
  }
  .event_news_img {
    width: 40%;
  }
  .event_news_txt {
    width: 57%;
  }
  .event_news.reverse {
    flex-direction: row-reverse;
  }
  .event3 {
    display: flex;
    justify-content: space-around;
    align-items: flex-start;
    margin-top: 50px;
  }
  .event3_img {
    width: 50%;
  }
  .area {
    display: flex;
    justify-content: space-around;
    align-items: center;
    margin-top: 50px;
  }
  .area_img {
    width: 50%;
  }
  .area_txt {
    width: 50%;
  }
  .spot {
    display: flex;
    justify-content: space-around;
    align-items: flex-start;
  }
  .spot_title {
    width: 30%;
    padding-right: 10px;
  }
  .spot_contents {
    width: 70%;
    text-align: left;
  }
  .spot_list {
    display: flex;
    justify-content: space-around;
    align-items: flex-start;
    margin-top: 50px;
  }
  .spot_list_in {
    width: 50%;
    padding-left: 10px;
  }
  .spot_search ul {
    margin-left: 10px;
  }
  .spot_search li {
    padding-top: 20px;
    padding-bottom: 20px;
  }
  .channel_wrap {
    display: flex;
    justify-content: space-around;
    align-items: flex-start;
  }
  .channel_wrap_img {
    width: 50%;
  }
  .channel p {
    top: 60%;
  }
  .photogallary {
    display: flex;
    justify-content: space-around;
    align-items: center;
    margin-top: 50px;
    margin-bottom: 50px;
  }
  .photogallary_img {
    width: 65%;
  }
  .photogallary_txt {
    width: 33%;
    margin-top: 0px;
  }
  .bn_wrap {
    display: flex;
    justify-content: space-around;
    align-items: flex-start;
  }
  .bn_wrap_in {
    width: 50%;
  }
  .link5-2 li {
    flex: 0 1 17.3%;
  }
  .link7-3 li {
    flex: 0 1 12.2%;
  }
  .footer_logo {
    width: 8%;
  }
  .footer_txt {
    width: 93%;
    padding-left: 30px;
    font-size: 1.8rem; /* 18px */
  }
  .fbtn01 {
    font-size: 1.6rem; /* 13px */
  }
  .f_btn {
    padding-top: 20px;
    text-align: left;
  }
  .hidden_box {
    margin: 0px;
    text-align: right;
  }
  #play_mainv {
    height: 497px;
    background: url('play_mainv.jpg');
    background-size: 1920px 497px;
    background-repeat: no-repeat;
    background-position: center top;
    position: relative;
  }
  .play {
    margin: 30px -1% 70px;
    justify-content: center;
  }
  .play li {
    flex: 0 1 98%;
    margin: 0 1% 10px;
    padding: 0;
  }
  .play2-1 li {
    flex: 0 1 45%;
  }
  #eat_mainv {
    height: 498px;
    background: url('eat_mainv.jpg');
    background-size: 1920px 498px;
    background-repeat: no-repeat;
    background-position: center top;
    position: relative;
  }
  #see_mainv {
    height: 497px;
    background: url('see_mainv.jpg');
    background-size: 1920px 497px;
    background-repeat: no-repeat;
    background-position: center top;
    position: relative;
  }
  #cate_mainv {
    height: 500px;
    background: url('cate_mainv.jpg');
    background-size: 1920px 500px;
    background-repeat: no-repeat;
    background-position: center top;
    position: relative;
  }
  #gennes_mainv {
    height: 494px;
    background: url('gennes_mainv.jpg');
    background-size: 1920px 494px;
    background-repeat: no-repeat;
    background-position: center top;
    position: relative;
  }
  #campaign_mainv {
    height: 596px;
    background: url('campaign_mainv02.jpg');
    background-size: 1920px 596px;
    background-repeat: no-repeat;
    background-position: center top;
    position: relative;
  }
  .article_in {
    padding-top: 2em;
    padding-right: 2em;
    padding-bottom: 2em;
    padding-left: 2em;
  }
  .article_title2 {
    font-weight: bold;
    font-size: 3.5rem; /* 35px */
    line-height: 1.3;
    padding-top: 10px;
    padding-bottom: 10px;
  }
  .article_in h3 {
    font-weight: bold;
    font-size: 3.5rem; /* 35px */
    line-height: 1.3;
    padding-top: 10px;
    padding-bottom: 10px;
  }
  .article4-2 li {
    flex: 0 1 23%;
  }
  .f_contents {
    display: flex;
    justify-content: space-around;
    align-items: flex-start;
    margin: 20px auto;
    width: 80%;
  }
  .f_contents_in1 {
    width: 30%;
  }
  .f_contents_in2 {
    width: 30%;
    padding-left: 20px;
    border-left: 1px solid #fefefe;
    box-sizing: border-box;
  }
  .f_contents_in3 {
    padding: 5px;
    width: 37%;
    border-right: 1px solid #fefefe;
    box-sizing: border-box;
  }
  .f_contents_in4 {
    width: 13%;
    padding-left: 20px;
  }
  .f_contents_ina {
    width: 12%;
  }
  .f_contents_inb {
    width: 12%;
  }
  .f_contents_inc {
    padding: 5px;
    width: 15%;
  }
  .f_contents_ind {
    width: 12%;
  }
  .f_contents_ine {
    width: 12%;
  }
  .f_contents_inf {
    width: 20%;
    padding-left: 50px;
  }
  .sitemap li {
    font-size: 1.6rem; /* 16px */
  }
  .sitemap_ttl {
    font-size: 2rem;
  }
  .gennes_member {
    margin-top: 20px;
    padding-bottom: 80px;
  }
  .gennes_txt {
    font-size: 2.5rem; /* 12px */
    line-height: 2.0;
    padding-bottom: 30px;
    color: #3491c2;
    text-align: center;
  }
  .gennes_member3-2 li {
    flex: 0 1 31.3%;
  }
  .member_txt_in {
    padding: 20px;
  }
  .member__1 {
    padding-top: 20px;
    font-size: 1.5rem; /* 16px */
  }
  .member__2 {
    padding-top: 20px;
    font-size: 1.5rem; /* 16px */
  }
  .member__3 {
    padding-top: 20px;
    font-size: 1.5rem; /* 16px */
  }
  .member__4 {
    padding-top: 20px;
    font-size: 1.5rem; /* 16px */
  }
  .gennes_ambassador_ttl {
    margin: 3em auto 2em;
    font-size: 2.5rem;
  }
  .gennes_ambassador_btn_ttl {
    font-size: 2.5rem;
    margin: 2em auto 0;
  }
  .gennes_ambassador.small {
    max-width: 800px;
  }
  .cp_ipselect.cp_sl04 select {
    padding: 11px 38px 11px 10px;
  }
  .youtube {
    position: relative;
    max-width: 100%;
    padding-top: 56.25%;
  }
  .youtube iframe {
    position: absolute;
    top: 0;
    right: 0;
    width: 100% !important;
    height: 100% !important;
  }
  .campaign_title {}
  .campaign_title img {
    width: 30%;
    height: auto;
  }
  .campaign_title2 {}
  .campaign_title2 img {
    width: 40%;
    height: auto;
  }
  .campaign_table {
    width: 70%;
    background-color: #fff;
    margin: 30px auto;
    padding: 40px 60px 30px;
  }
  .campaign_table3 {
    display: flex;
    flex-wrap: wrap;
    list-style: none;
    margin: 0px auto 10px;
    align-items: center;
    border-bottom: 1px solid #7D4E22;
  }
  .campaign_table3 li {
    flex: 0 1 30%;
    margin: 0 1% 10px;
    font-size: 2.8rem;
    font-weight: bold;
    text-align: left;
    line-height: 1.2;
  }
  .campaign_table3 img {
    width: 100%;
    height: auto;
  }
  .campaign_table3 li:first-child {
    color: #003B74;
  }
  .search_area {
    text-align: left;
    width: 80%;
    margin: 0 auto 50px;
  }
  .search_wrap li {
    flex: 0 1 40%;
  }
  .search_wrap_ap {
    position: absolute;
    top: -15px;
    left: -4px;
    width: 20%;
  }
  .search_list_title {
    color: #796A56;
    font-size: 2.2rem;
  }
  .about_title {
    padding: 20px 0px 5px;
    margin-bottom: 20px;
    font-size: 2.5rem;
  }
  .about_bnr {
    padding: 0.5em 0em;
    text-align: left;
  }
  .top_bn {
    display: flex;
    flex-wrap: wrap;
    list-style: none;
    margin: 30px 0% 30px;
    justify-content: center;
    align-items: center;
  }
  .top_bn li {
    flex: 0 1 48%;
    justify-content: center;
    margin: 0px 1% 25px;
    padding: 0;
  }
  .pamphlet {
    padding: 4em;
  }
  .pamphlet_bn {
    display: flex;
    flex-wrap: wrap;
    list-style: none;
    justify-content: center;
    align-items: center;
  }
  .pamphlet_bn li {
    flex: 0 1 40%;
    justify-content: center;
    margin: 0px 0 30px;
    padding: 0 20px;
    line-height: 1.3;
  }
  .course_type {
    margin: 50px auto
  }
  .course_type img {
    width: 80%;
    height: auto;
    margin-bottom: 50px;
  }
  .course_contents {
    display: flex;
    flex-wrap: wrap;
    list-style: none;
    margin: 30px 0% 30px;
    justify-content: flex-start;
    align-items: center;
  }
  .course_contents li {
    flex: 0 1 48%;
    justify-content: center;
    margin: 0px 1% 25px;
    padding: 0;
  }
  .visit_hamanako_thema img {
    width: 4%;
    height: auto;
    padding-bottom: 0.4em;
  }
  .visit_hamanako_oubo {
    display: flex;
    justify-content: space-around;
    align-items: center;
  }
  .visit_hamanako_oubol {
    width: 40%;
    margin-bottom: 0;
  }
  .visit_hamanako_oubor {
    width: 57%;
    text-align: left;
  }
  .cruise_top_txt {
    font-size: 3rem;
    letter-spacing: 2px;
    text-align: center;
    font-family: serif;
    line-height: 2;
  }
  .cruise_table {
    display: flex;
    flex-wrap: wrap;
    list-style: none;
    margin: 3em -1% 0px;
    justify-content: flex-start;
    align-items: flex-start;
  }
  .cruise_table li {
    flex: 0 1 30%;
    justify-content: center;
    margin: 0px 0% 1em;
    padding: 1em;
  }
  .cruise_wrap {
    font-size: 1.6rem;
  }
  .gennesblog_title {
    width: 30%;
    margin: 0 auto 0em;
  }
  .gennesblog_subtitle {
    font-size: 2.0rem;
    margin-bottom: 1em;
  }
  .gennesblog_list li {
    flex: 0 1 23%;
    margin: 0 1% 3em;
  }
  .gennesblog_cate {
    margin: 0.5em auto 0;
    font-size: 1.4rem;
  }
  .photogallery_title {
    width: 30%;
    margin: 5em auto 0em;
  }
  .photogallery_cate_title {
    width: 80%;
    padding: 0.5em 0;
    margin: 3em auto 2em;
  }
  .photogallery_cate_list {
    width: 80%;
    display: flex;
    flex-wrap: wrap;
    list-style: none;
    justify-content: flex-start;
    margin: 1em auto 0;
  }
  .photogallery_cate_list li {
    flex: 0 1 30%;
    margin: 0 1.6% 1em;
    font-size: 1.6rem;
  }
  .photogallery_new_title {
    padding: 0.5em 0;
    margin: 5em auto 2em;
  }
  .photogallery_kiyaku_title {
    padding: 0.5em 0;
    margin: 5em auto 2em;
  }
  .photogallery_list li {
    flex: 0 1 23%;
    margin: 0 1% 3em;
  }
  .photogallery_contents_title {
    width: 80%;
    font-size: 2.5rem;
    margin: 2em auto 1em;
  }
  .photogallery_contents {
    width: 80%;
    margin: 0 auto 3em;
  }
  .article_wrap {
    padding: 3em;
    margin: 3em auto;
  }
  .article_contents_title {
    font-size: 2.5rem;
  }
  .article_shop {
    display: flex;
    flex-wrap: wrap;
    list-style: none;
    justify-content: space-between;
    margin: 0em auto 0;
  }
  .article_shop_img {
    width: 40%;
    margin: 0 auto 0em;
  }
  .article_shop_txt {
    width: 55%;
  }
  /*==================================================
スライダーのためのcss
===================================*/
  .slider { /*横幅94%で左右に余白を持たせて中央寄せ*/
    width: 95%;
    margin: 0 auto;
    padding: 200px 0 0;
  }
  .slider img {
    width: 1000px; /*スライダー内の画像を60vwにしてレスポンシブ化*/
    height: auto;
  }
  .space {
    padding: 200px 0 0 0;
  }
  /* 塗り絵 */
  .nurie_bg {
    padding: 180px 0 4em;
  }
  .nurie_ttl {
    width: 90%;
    max-width: 400px;
    margin: auto;
  }
  .nurie_txt {
    line-height: 2;
    margin: 3em auto 0em;
    font-size: 1.6rem;
  }
  .nurie_list_ttl {
    font-size: 2.0rem;
    letter-spacing: 2px;
    max-width: 1000px;
    margin: 0 auto 1em;
  }
  .nurie_list_ttl span {
    padding: 0 2em;
  }
  .nurie_list {
    display: flex;
    flex-wrap: wrap;
    list-style: none;
    margin: 0em auto 0em;
    justify-content: flex-start;
  }
  .nurie_list li {
    flex: 0 1 46%;
    justify-content: center;
    margin: 1em 2% 0em;
  }
  /* 宿泊クーポン */
  .shukuhaku_wrap01 {
    padding: 6em 0;
    background-position: top -1em right 1em, top 50% left 0, bottom 5% right 0;
    background-size: 30%, 20%, 20%;
  }
  .shukuhaku_top_ttl {
    font-size: 3rem;
  }
  .shukuhaku_top_txt {
    line-height: 2;
  }
  .shukuhaku_balloon {
    margin: 1.5em 0;
    padding: 7px 40px;
    font-size: 3rem;
  }
  .shukuhaku_wrap02 {}
  .shukuhaku_wrap02b {
    padding: 5em 0;
    background-position: top 3em right 0, top 20% left 0, top 40% right 0, bottom 30% left 0, bottom 10% right 0;
    background-size: 20%, 20%, 20%, 20%, 20%;
  }
  .shukuhaku_coupon {
    width: 95%;
    max-width: 900px;
    margin: 0 auto 2em;
  }
  .shukuhaku_coupon li {
    padding: 0.8em 0;
  }
  .shukuhaku_coupon li div {
    width: 47%;
    font-size: 2.5rem;
  }
  .shukuhaku_coupon li div span {
    color: #c09d30;
    font-size: 3.0rem;
    line-height: 1;
  }
  .shukuhaku_coupon li p {
    width: 2%;
    color: #c09d30;
  }
  .shukuhaku_wrap02_in {
    max-width: calc(1000px - 8em);
    padding: 0 4em 3em;
  }
  .shukuhaku_day {
    font-size: 3rem;
  }
  .shukuhaku_day2 span {
    font-size: 2.5rem;
  }
  .shukuhaku_reserve_ttl {
    padding: 0.3em 0;
    font-size: 2.5rem;
    margin: 2em auto 0;
  }
  .shukuhaku_reserve {
    margin: 0 auto 2em;
    padding: 2em 3em;
    display: flex;
    flex-wrap: wrap;
    list-style: none;
    justify-content: space-between;
  }
  .shukuhaku_reserve li {
    width: 50%;
    line-height: 2.5;
    font-size: 2.0rem;
  }
  .shukuhaku_reserve li span {
    font-size: 1.4rem;
  }
  .shukuhaku_dorama {
    width: 90%;
    max-width: 1000px;
    margin: 4em auto 0;
  }
  .shukuhaku_dorama div {
    width: 80%;
  }
  .shukuhaku_dorama div p {
    text-align: center;
    font-size: 1.8rem;
    margin: 1em auto 2em;
    font-weight: bold;
    letter-spacing: 2px;
  }
  .shukuhaku_dorama div span {
    width: 80%;
    max-width: 400px;
    margin: 2em auto 0;
  }
  .top_course_list {
    margin: 2em auto 1em;
    display: flex;
    flex-wrap: wrap;
    list-style: none;
    justify-content: space-between;
  }
  .top_course_list li {
    margin: 0 15px 1em;
    width: calc(100% / 2 - 30px);
  }
}
a.link_page, a.link_next, a.link_before {
  font-weight: bold;
  color: #3593c3 !important;
  text-decoration: underline;
}
.sns {
  margin-left: -5px;
  padding-top: 10px;
}
/***************/
.blog_pager1 {
  width: 100%;
  margin-bottom: 0px;
  height: 50px;
  padding-top: 30px;
  margin-right: auto;
  margin-left: auto;
  padding-bottom: 30px;
}
.wp-pagenavi {
  clear: both;
  text-align: center;
  height: 0px;
  padding-top: 0px;
}
.wp-pagenavi a, .wp-pagenavi span {
  color: #999;
  background-color: #FFF;
  border: solid 1px #e0e0d2;
  padding: 8px 15px;
  margin: 0 2px;
  white-space: nowrap;
  -moz-border-radius: 3px;
  -webkit-border-radius: 3px;
  border-radius: 3px;
  -webkit-transition: 0.2s ease-in-out;
  -moz-transition: 0.2s ease-in-out;
  -o-transition: 0.2s ease-in-out;
  transition: 0.2s ease-in-out;
  text-align: center;
  text-decoration: none;
}
.wp-pagenavi a:hover {
  color: #FFF;
  background-color: #2CA5DF;
  border-color: #2CA5DF;
}
.wp-pagenavi span.current {
  color: #FFF;
  background-color: #2CA5DF;
  border-color: #2CA5DF;
  font-weight: bold;
}
.article4-2 li a img {
  width: 100% !important;
  height: auto !important;
}
/* ------------------------------------ */
/* ------------------------------------ */
/* 以下　2025リニューアル　追加css */
/* ------------------------------------ */
/* ------------------------------------ */
/*btn*/
a.mainbtn {
  position: relative;
  text-decoration: none;
  display: inline-block;
  background: #3DBCD5;
  color: #fff;
  padding: 12px 0px;
  width: 200px;
  border-radius: 50px;
  font-weight: 500;
  font-size: 1.3rem;
  letter-spacing: 2px;
  text-align: center;
  outline: none;
  transition: ease .2s;
}
a.mainbtn:hover {
  background: #555;
}
a.mainbtn::after {
  content: '';
  position: absolute;
  top: 42%;
  right: 20px;
  width: 5px;
  height: 5px;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  transform: rotate(45deg);
  transition: all .3s;
}
a.mainbtn:hover::after {
  right: 15px;
}
.ttl_h2 {
  font-weight: 500;
  font-size: 1.4rem;
  letter-spacing: 2px;
  color: #666666;
}
.ttl_h2 span {
  display: block;
  font-weight: 600;
  font-size: 2rem;
}
.base_bg {
  padding: 3em 0;
}
.base_bg.blue {
  background: #E0F8FA;
}
.pagetitle {
  padding: 100px 0 0;
}
/* ------------------------------------ */
/* PC用デザインとして付け足すデザイン */
/* ------------------------------------ */
@media all and (min-width: 768px) {
  body {
    font-size: 1.8rem; /* 18px */
    line-height: 1.8;
  }
  a.mainbtn {
    padding: 15px 0px;
    width: 250px;
    font-size: 1.6rem;
  }
  .ttl_h2 {
    font-size: 1.6rem;
  }
  .ttl_h2 span {
    font-size: 3rem;
  }
  .base_bg {
    padding: 5em 0;
  }
  .pagetitle {
    padding: 150px 0 0;
  }
}
/* --------------------------------------------- */
/* ▼▼footer CSS▼▼ */
/* --------------------------------------------- */
footer img {
  width: 100%;
  height: auto;
}
#page-top a {
  display: flex;
  justify-content: center;
  align-items: center;
  background: #3DBCD5;
  border-radius: 5px;
  width: 60px;
  height: 60px;
  color: #fff;
  text-align: center;
  text-transform: uppercase;
  text-decoration: none;
  font-size: 1rem;
  transition: all 0.3s;
}
#page-top a:hover {
  background: #555;
}
/*リンクを右下に固定*/
#page-top {
  position: fixed;
  right: 20px;
  z-index: 2;
  /*はじめは非表示*/
  opacity: 0;
  transform: translateY(100px);
}
/*　上に上がる動き　*/
#page-top.UpMove {
  animation: UpAnime 0.5s forwards;
}
@keyframes UpAnime {
  from {
    opacity: 0;
    transform: translateY(100px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
/*　下に下がる動き　*/
#page-top.DownMove {
  animation: DownAnime 0.5s forwards;
}
@keyframes DownAnime {
  from {
    opacity: 1;
    transform: translateY(0);
  }
  to {
    opacity: 1;
    transform: translateY(100px);
  }
}
.footer_bnr {
  width: 90%;
  margin: auto;
  padding: 2em 0 2em;
}
.footer_bnr > p {
  background: #3DBCD5;
  color: #fff;
  letter-spacing: 2px;
  padding: 5px 0;
  font-weight: 600;
  font-size: 1.4rem;
}
.footer_pr {
  display: flex;
  flex-wrap: wrap;
  list-style: none;
  margin: 0.5em auto 3em;
  justify-content: flex-start;
  align-items: center;
}
.footer_pr li {
  margin: 10px 8px 0em;
  width: calc(100% / 2 - 16px);
}
.footer_links {
  display: flex;
  flex-wrap: wrap;
  list-style: none;
  margin: 0.5em auto 0em;
  justify-content: flex-start;
  align-items: center;
}
.footer_links li {
  margin: 10px 8px 0em;
  width: calc(100% / 2 - 16px);
}
.f-bg {
  padding: 2em 0 3em;
  background: #E9F8F9;
}
.f_logo {
  width: 130px;
  margin: 0 auto 1em;
}
.footer_ttl {
  font-weight: 600;
  font-size: 1.4rem;
  margin: 1.5em auto 1em;
}
.footer_address {
  color: #6E6E6E;
  line-height: 2;
  font-size: 1.2rem;
}
.footer_address a {
  color: #6E6E6E;
}
.footer_address span {
  display: inline-block;
}
.footer_link {
  margin: 2em auto;
}
.footer_link li {
  margin: 1em auto 0;
}
.footer_link li a {
  position: relative;
  text-decoration: none;
  display: inline-block;
  background: #3DBCD5;
  color: #fff;
  padding: 12px 0px;
  width: 180px;
  border-radius: 50px;
  font-weight: 600;
  font-size: 1.4rem;
  letter-spacing: 2px;
  text-align: center;
  outline: none;
  transition: ease .2s;
}
.footer_link li a:hover {
  background: #555;
}
/* 矢印が右に移動 

.footer_link li a::after{
    content: '';
	position: absolute;
    top:42%;
    right: 13px;
    width: 5px;
    height: 5px;
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
    transform: rotate(45deg);
    transition: all .3s;
}

.footer_link li a:hover::after{
    right: 11px;
}

*/
.footer_contact_tel {
  margin: 3em auto 2em;
  line-height: 2;
  font-size: 1.3rem;
  font-weight: 500;
}
.footer_contact_tel span {
  display: inline-block;
  background: #fff;
  border-radius: 50px;
  padding: 7px 20px;
  font-weight: 600;
  font-size: 1.3rem;
  margin: 0 auto 10px;
}
.cr {
  font-size: 1.0rem;
  letter-spacing: 0;
}
/* ------------------------------------ */
/* PC用 */
/* ------------------------------------ */
@media all and (min-width: 768px) {
  .footer_bnr {
    max-width: 1200px;
    padding: 3em 0 5em;
  }
  .footer_bnr > p {
    padding: 5px 0;
    font-size: 2rem;
  }
  .footer_pr {
    margin: 1em auto 4em;
  }
  .footer_pr li {
    margin: 10px 10px 0em;
    width: calc(100% / 6 - 20px);
  }
  .footer_links {
    margin: 1em auto 0em;
  }
  .footer_links li {
    margin: 10px 10px 0em;
    width: calc(100% / 5 - 20px);
  }
  .f-bg {
    padding: 5em 0 4em;
  }
  .f_logo {
    width: 200px;
  }
  .footer_ttl {
    font-size: 1.8rem;
    margin: 1.5em auto 1em;
  }
  .footer_address {
    line-height: 2;
    font-size: 1.5rem;
  }
  .footer_link {
    margin: 2em auto 3em;
    display: flex;
    flex-wrap: wrap;
    list-style: none;
    justify-content: center;
  }
  .footer_link li {
    width: 200px;
    margin: 0 15px;
  }
  .footer_link li a {
    padding: 12px 0px;
    width: 200px;
    font-size: 1.6rem;
  }
  .footer_contact_tel {
    margin: 2em auto 2em;
    font-size: 1.5rem;
    letter-spacing: 1px;
  }
  .footer_contact_tel span {
    padding: 7px 30px;
    font-size: 1.5rem;
    margin: 0 auto 10px;
  }
  .cr {
    font-size: 1.3rem;
    letter-spacing: 2px;
  }
}
/* --------------------------------------------- */
/* ▲▲footer CSS▲▲ */
/* --------------------------------------------- */